← Back to guides

How to Configure BAS (Business Activity Statement) Reporting in Odoo

The Business Activity Statement (BAS) is how Australian businesses report and pay GST, PAYG withholding, PAYG instalments, and other tax obligations to the ATO. Most small businesses lodge quarterly; larger businesses lodge monthly. Odoo can generate BAS figures directly from your accounting data — but only if the tax configuration is correct. This guide shows you how to set it up.

What goes on a BAS

A typical BAS includes these key labels:

  • G1 — Total sales (including GST-free sales)
  • G2 — Export sales
  • G3 — Other GST-free sales
  • G10 — Capital purchases
  • G11 — Non-capital purchases
  • 1A — GST on sales (derived: G1 minus G2 minus G3, × 10%)
  • 1B — GST on purchases (derived: G10 plus G11, × 10%)
  • W1 — Total salary, wages, and other payments (PAYG withholding)
  • W2 — Amount withheld from payments at W1
  • T1 — PAYG instalment income (if applicable)
  • T2 — PAYG instalment amount

Step 1: Verify tax group configuration

BAS reporting in Odoo relies on tax groups and tax tags to map transactions to the correct BAS labels:

  • Go to Accounting → Configuration → Taxes
  • Open each tax record and check the Tax Grids (also called tax tags)
  • GST 10% Sales should be tagged for 1A (GST on sales) and G1 (total sales)
  • GST 10% Purchases should be tagged for 1B (GST on purchases) and G11 (non-capital purchases)
  • GST Free Sales should be tagged for G1 and G3 (GST-free sales)
  • Export sales should be tagged for G1 and G2
  • Capital purchase taxes should be tagged for G10 instead of G11
ℹ️

The Australian localisation (l10n_au) sets up these tax tags automatically. If you've customised your taxes or created new ones, you must manually assign the correct BAS tags.

Step 2: Distinguish capital vs non-capital purchases

The BAS separates capital purchases (G10) from non-capital purchases (G11):

  • Capital purchases — Assets over $1,000 (or your instant asset write-off threshold): equipment, vehicles, machinery, building improvements
  • Non-capital purchases — Regular operating expenses: supplies, services, rent, utilities
  • Create two purchase taxes: "GST 10% (Capital)" tagged to G10, and "GST 10% (Non-Capital)" tagged to G11
  • Or use a single purchase tax tagged to G11 by default, and create a separate one for capital purchases
  • Apply the correct tax when recording asset purchases

Step 3: Set your BAS reporting period

  • Quarterly — Most common for businesses with turnover under $20 million. Periods: Jul–Sep, Oct–Dec, Jan–Mar, Apr–Jun.
  • Monthly — Required for businesses with turnover of $20 million or more. Optional for others.
  • Annual — Available for businesses that voluntarily register for GST with turnover under $75,000.
  • In Odoo, BAS periods align with your fiscal year settings. Go to Accounting → Configuration → Settings → Fiscal Year.
  • Ensure your fiscal year runs 1 July to 30 June.

Step 4: Generate the BAS report

To generate BAS figures in Odoo:

  • Go to Accounting → Reporting → Tax Report (or BAS Report if using the Australian localisation)
  • Select the date range matching your BAS period (e.g., 1 Jul – 30 Sep for Q1)
  • The report shows each BAS label with the calculated amount
  • Review the figures — click on any line to drill down to the underlying transactions
  • Cross-check key totals: G1 should roughly match your total sales revenue, 1A should be approximately G1 × 10%

Step 5: Reconcile before lodging

Before you take BAS numbers to the ATO portal, ensure your data is clean:

  • Reconcile all bank accounts — unreconciled transactions may have missing or incorrect tax codes
  • Review draft invoices and bills — drafts aren't posted to the ledger and won't appear in the BAS
  • Check for journal entries without tax lines — manual entries are a common source of BAS discrepancies
  • Review the Tax Audit report to identify transactions with unusual or missing tax codes
  • Verify that private/non-business expenses haven't been coded with GST credits
💡

Run the BAS report a few days before the deadline to give yourself time to fix any issues. Rushing BAS lodgement on the due date leads to errors.

Step 6: Lodge the BAS

  • Log in to the ATO Business Portal (portal.ato.gov.au) or your tax agent's portal
  • Enter the BAS figures from Odoo into the corresponding labels
  • Review the calculated net GST amount (1A minus 1B)
  • Add PAYG withholding (W1/W2) and PAYG instalment (T1/T2) if applicable
  • Submit the BAS
  • Pay the amount owing by the due date: 28th of the month following the quarter end (28 Oct, 28 Feb, 28 Apr, 28 Jul)
  • If you get a refund, the ATO typically processes it within 14 business days

Step 7: Record the BAS payment/refund

After lodging and paying:

  • Record a journal entry to clear the GST liability/asset accounts
  • Debit GST Collected (clearing the liability) and credit GST Paid (clearing the asset)
  • The net difference is debited/credited to your bank account
  • If you owe: Debit GST Collected, Credit GST Paid, Credit Bank
  • If you're due a refund: Debit GST Collected, Debit Bank, Credit GST Paid
  • This resets the GST accounts to zero for the next BAS period

BAS due dates 2025-26

  • Q1 (Jul–Sep 2025) — Due 28 October 2025
  • Q2 (Oct–Dec 2025) — Due 28 February 2026
  • Q3 (Jan–Mar 2026) — Due 28 April 2026
  • Q4 (Apr–Jun 2026) — Due 28 July 2026 (or 28 August if lodging electronically through a tax agent)
ℹ️

If you use a registered tax agent, you may get extended due dates. Check with your agent for your specific deadlines.

Common BAS mistakes in Odoo

  • Transactions coded "BAS Excluded" when they shouldn't be — Wages and super are BAS Excluded (correct), but some users accidentally code business expenses this way, missing out on GST credits.
  • Capital vs non-capital not separated — If all purchases go to G11, the ATO may query the BAS. Separate capital asset purchases to G10.
  • Draft transactions not posted — BAS only includes posted (confirmed) transactions. Ensure all invoices and bills are confirmed before generating the report.
  • Incorrect period dates — Ensure the BAS report date range matches the quarter exactly. Off-by-one-day errors can include or exclude transactions.
  • Not clearing GST accounts after payment — If you don't record the BAS payment journal entry, your GST accounts will carry forward and inflate the next period's figures.

BAS reporting giving you headaches?

We'll configure your Odoo BAS reporting so the numbers are right every quarter. No more manual spreadsheets.

Get in touch →