Skip to Content
Odoo Menu
  • Sign in
  • Try it free
  • Apps
    Finance
    • Accounting
    • Invoicing
    • Expenses
    • Spreadsheet (BI)
    • Documents
    • Sign
    Sales
    • CRM
    • Sales
    • POS Shop
    • POS Restaurant
    • Subscriptions
    • Rental
    Websites
    • Website Builder
    • eCommerce
    • Blog
    • Forum
    • Live Chat
    • eLearning
    Supply Chain
    • Inventory
    • Manufacturing
    • PLM
    • Purchase
    • Maintenance
    • Quality
    Human Resources
    • Employees
    • Recruitment
    • Time Off
    • Appraisals
    • Referrals
    • Fleet
    Marketing
    • Social Marketing
    • Email Marketing
    • SMS Marketing
    • Events
    • Marketing Automation
    • Surveys
    Services
    • Project
    • Timesheets
    • Field Service
    • Helpdesk
    • Planning
    • Appointments
    Productivity
    • Discuss
    • Approvals
    • IoT
    • VoIP
    • Knowledge
    • WhatsApp
    Third party apps Odoo Studio Odoo Cloud Platform
  • Industries
    Retail
    • Book Store
    • Clothing Store
    • Furniture Store
    • Grocery Store
    • Hardware Store
    • Toy Store
    Food & Hospitality
    • Bar and Pub
    • Restaurant
    • Fast Food
    • Guest House
    • Beverage Distributor
    • Hotel
    Real Estate
    • Real Estate Agency
    • Architecture Firm
    • Construction
    • Property Management
    • Gardening
    • Property Owner Association
    Consulting
    • Accounting Firm
    • Odoo Partner
    • Marketing Agency
    • Law firm
    • Talent Acquisition
    • Audit & Certification
    Manufacturing
    • Textile
    • Metal
    • Furnitures
    • Food
    • Brewery
    • Corporate Gifts
    Health & Fitness
    • Sports Club
    • Eyewear Store
    • Fitness Center
    • Wellness Practitioners
    • Pharmacy
    • Hair Salon
    Trades
    • Handyman
    • IT Hardware & Support
    • Solar Energy Systems
    • Shoe Maker
    • Cleaning Services
    • HVAC Services
    Others
    • Nonprofit Organization
    • Environmental Agency
    • Billboard Rental
    • Photography
    • Bike Leasing
    • Software Reseller
    Browse all Industries
  • Community
    Learn
    • Tutorials
    • Documentation
    • Certifications
    • Training
    • Blog
    • Podcast
    Empower Education
    • Education Program
    • Scale Up! Business Game
    • Visit Odoo
    Get the Software
    • Download
    • Compare Editions
    • Releases
    Collaborate
    • Github
    • Forum
    • Events
    • Translations
    • Become a Partner
    • Services for Partners
    • Register your Accounting Firm
    Get Services
    • Find a Partner
    • Find an Accountant
      • Get a Tailored Demo
    • Implementation Services
    • Customer References
    • Support
    • Upgrades
    Github Youtube Twitter Linkedin Instagram Facebook Spotify
    +32 2 290 34 90
    • Get a Tailored Demo
  • Pricing
  • Help
  1. APPS
  2. Localizations
  3. AU BAS Reporting v 19.0
  4. Sales Conditions FAQ

AU BAS Reporting

by ERP Heritage https://www.erpheritage.com.au/
Odoo
v 19.0 Third Party 23
Download for v 19.0 Deploy on Odoo.sh
Apps purchases are linked to your Odoo account, please sign in or sign up first.
Availability
Odoo Online
Odoo.sh
On Premise
Odoo Apps Dependencies • Invoicing (account)
• Discuss (mail)
Community Apps Dependencies Show
• Accounting Suite Base
• Dynamic Account Reports
Lines of code 7784
Technical Name eh_account_l10n_au_bas
LicenseLGPL-3
Websitehttps://www.erpheritage.com.au/
You bought this module and need support? Click here!
Availability
Odoo Online
Odoo.sh
On Premise
Odoo Apps Dependencies • Invoicing (account)
• Discuss (mail)
Community Apps Dependencies Show
• Accounting Suite Base
• Dynamic Account Reports
Lines of code 7784
Technical Name eh_account_l10n_au_bas
LicenseLGPL-3
Websitehttps://www.erpheritage.com.au/
ERP Heritage · Accounting Suite
ODOO 19 COMMUNITY · AUSTRALIA · ACCOUNTING LOCALIZATION

AU BAS Reporting

A locked, auditable quarterly Business Activity Statement worksheet for Odoo 19 Community, with the full ATO label set and a mod-89 ABN validator.

Free · LGPL-333 ATO LABELSLOCKED ON LODGEv19.0.1.1.3
33 labels
Locked lodge
ABN check
GST recon
Audit trail

Why this module

AU BAS Reporting

01 / INTEGRITY

Lodged means locked

Once a BAS run is marked lodged it is read-only. Recompute and reset-to-draft are both refused, lodged_at and lodged_by are stamped, and a re-run raises rather than quietly changing a figure you already filed. The number you lodged is the number that stays on record.

02 / DETERMINISM

Tag-driven, side-aware compute

Each label maps to account.tax tags and is summed by a single SQL pass that separates credit and debit base and tax. Recompute deletes existing run lines first, so a re-run never double-counts or leaves a stale label behind, and a credit note is never conflated with a sale.

03 / OWNERSHIP

Yours to keep

LGPL-3 source on disk. No activation key, no phone-home, no recurring licence. Read it, configure the tag mapping to your chart of accounts, extend it. Free today, free at renewal, because there is no renewal.

Day in the life

A bookkeeper prepares the March quarter BAS.

She opens the run for the company and quarter; the 33-label worksheet is already there. The G, W and T labels she configured during onboarding compute straight from posted journal items, side-aware so credit notes net correctly; the F, FTC, WET and LCT rows she types in by hand. Before lodging she opens the GST control reconciliation: 1A reconciles cleanly against the credit movement on the GST-collected account, and the small 1B variance flags an account carrying mixed input and output tax, which she checks. A supplier ABN with hyphens is normalised and check-digit verified on save. She transfers the figures to the ATO form, marks the run lodged, and it locks: lodged_at and lodged_by are stamped, and a stray recompute next week is simply refused.

Edge cases

The cases most modules quietly ignore.

In the shipped code today, each one a place where a cheaper module silently does the wrong thing.

RECOMPUTE

Recompute is deterministic. Existing run lines are deleted before a recompute, so re-running Compute never double-counts and never leaves a stale label behind.

LODGE LOCK

Lodged-run protection covers more than recompute. Reset-to-draft is also blocked on a lodged run, so a lodged figure cannot be unwound by clearing its lines.

SIDE-AWARE

Aggregation avoids the absolute-value trap. Base and tax sums are taken per ledger side, so a credit note and a sale (same sign, opposite side) are not conflated into a wrong total.

AUDIT

A mid-compute failure is recorded, not swallowed. The error is written to the audit-execution row and the exception is re-raised, so there is no half-written silent state.

SOFT DEPENDENCY

The audit pipeline is a soft dependency. If the dynamic-report catalog record is missing, the run still computes its lines and proceeds rather than crashing.

ABN INPUT

ABN input is normalised on both create and write. Whitespace, hyphens and punctuation are stripped to the canonical 11-digit form before the mod-89 check digit is verified.

DEFENSIVE PARSE

Financial-year label parsing is defensive. A malformed FY label yields empty period dates instead of a traceback, so a bad input never breaks the run.

What is inside

Built to do the job, end to end.

  • 33-label ATO worksheet, seeded. The full G, W, T, F, FTC, WET and LCT label set ships as records: total and GST-free sales, acquisitions, 1A and 1B GST, W1 and W2 withholding, and the instalment labels. A no-silent-fallback constraint forces tag configuration on any label set to auto-compute.
  • Tag-driven single-SQL compute. Each label maps to one or more account.tax tags and is summed by one SQL pass per label, joined over the tag-to-move-line relation. Labels ship as manual entry; configure an aggregation mode and tags during onboarding to switch the relevant labels to auto-compute, after which the run recomputes deterministically from posted entries in the period.
  • Lock-on-lodge with stamped audit. Marking a run lodged makes it read-only, stamps lodged_at and lodged_by, and refuses both recompute and reset. Every render writes a start, complete or fail row to the shared report-execution audit trail.
  • GST control reconciliation. Posted movement on the tax control accounts is summed over the BAS period and any non-zero variance is flagged before lodgement. The 1A (collected) side reconciles against credit movement; the 1B (paid) side uses gross debit movement and is approximate on accounts with mixed input and output tax. The result lists the control accounts considered.
  • Mod-89 ABN validator on partners. Partners carry a validated ABN field. The mod-89 weighted check digit is verified on save, and hyphens, spaces and punctuation are normalised to the canonical 11-digit form, so an invalid ABN never reaches the lodgement payload.

Honest about the edges

What this does not do, so nothing surprises you.

  • Out of the box every label ships as manual entry, so a fresh install is a structured worksheet you fill in. You configure an aggregation mode and tax tags per label during onboarding to enable the auto-compute on the G, W and T labels.
  • The F, FTC, WET and LCT rows, plus the W5 sum and the T7 instalment line, are manual-entry fields. They are not auto-computed; the operator types these amounts.
  • Simpler BAS is a marker field on the run for record-keeping. It flags the run but does not yet alter the computed or lodged label set.
  • The reporting basis is a marker field. The compute currently uses the posting-date (accruals) basis regardless of the setting; cash-basis recognition is not yet implemented, so selecting Cash yields the same figures as Accruals.
  • The 1B (GST paid) reconciliation uses the gross debit movement and is approximate on accounts that carry both input and output tax; the 1A (collected) side is exact.
  • The GST reconciliation surfaces a variance figure and the list of tax control accounts considered. It does not drill through to an individual journal entry.
  • Only the partner record carries the validated ABN field; the company record does not. The GST-registered flag on a partner is informational; no automatic supplier-bill withholding gate is enforced.
  • Lodgement transport to the ATO (SBR) is out of scope: the module produces the figures, not the wire transmission. PAYG monthly variants and the IAS for non-GST registrants are not produced.
Search

Odoo 19 Australian BAS, Business Activity Statement Odoo Community, Odoo GST BAS report Australia, ABN validator Odoo, ABN checksum validation Odoo partner, Odoo 19 GST control reconciliation, quarterly BAS run Odoo, Australian tax localization Odoo Community, BAS label G1 1A 1B Odoo, PAYG withholding BAS Odoo

ERP Heritage

Production-grade Odoo accounting, built to an engineering bar and documented honestly. Support: info@erpheritage.com.au
Developed by Odoo Implementation Australia

v19.0.1.1.3 · LGPL-3 · Odoo 19 Community

Please log in to comment on this module

  • The author can leave a single reply to each comment.
  • This section is meant to ask simple questions or leave a rating. Every report of a problem experienced while using the module should be addressed to the author directly (refer to the following point).
  • If you want to start a discussion with the author, please use the developer contact information. They can usually be found in the description.
Community
  • Tutorials
  • Documentation
  • Forum
Open Source
  • Download
  • Github
  • Runbot
  • Translations
Services
  • Odoo.sh Hosting
  • Support
  • Upgrade
  • Custom Developments
  • Education
  • Find an Accountant
  • Find a Partner
  • Become a Partner
About us
  • Our company
  • Brand Assets
  • Contact us
  • Jobs
  • Events
  • Podcast
  • Blog
  • Customers
  • Legal • Privacy
  • Security

Odoo is a suite of open source business apps that cover all your company needs: CRM, eCommerce, accounting, inventory, point of sale, project management, etc.

Odoo's unique value proposition is to be at the same time very easy to use and fully integrated.

Website made with