This post is the capstone of our series on using Odoo Community's Invoicing module as a CRA-ready record-keeping system. Read the full guide here.
What this post is
The earlier posts in this series covered each piece individually: confirming invoices, setting up tax rates, exporting transaction history, attaching supporting documents, and using reference numbers. This post puts them together — what to actually assemble, in what order, if CRA ever asks for your records, or when you want to hand your accountant a complete year-end package.
This is not a guarantee of audit success, and it is not tax advice. It is a practical answer to: what does a CRA-ready record package from Odoo Community actually look like?
What CRA looks for in a small business audit
The Canada Revenue Agency's requirements for small business records come down to four things:
1. Complete records — Can you account for every dollar of income and every claimed expense? No gaps, no missing invoices, no unexplained entries.
2. Correct tax treatment — Did you collect and remit the right amount of GST/HST? Did you claim ITCs only on eligible expenses?
3. Consistent categorisation — Are your expenses categorised the same way across the entire period? CRA flags sudden category shifts mid-year.
4. Retained documentation — Can you produce the original source document (supplier invoice, receipt, signed contract) for any transaction they question?
The five how-to posts in this series address exactly these four requirements, in Odoo Community, without any Enterprise modules.
The audit package: what to include and where to get it
Item 1: Confirmed sales invoice list (full fiscal year)
Addresses: Complete records, Correct tax treatment
Navigation: Invoicing → Customers → Invoices → Filter: Posted + Invoice Date range → Select All → Action → Export (XLSX)
Include columns: Invoice Number, Invoice Date, Customer, Amount Untaxed, Tax Amount, Amount Total, Payment Status.
→ See the full export walkthrough
Item 2: Confirmed vendor bill list (full fiscal year)
Addresses: Complete records, Correct tax treatment (ITC claims)
Navigation: Invoicing → Vendors → Bills → Filter: Posted + Bill Date range → Select All → Action → Export (XLSX)
Same columns as above. This is your expense and ITC record.
Item 3: Tax summary
Addresses: Correct tax treatment
Navigation: Invoicing → Reporting → Tax Report → filter by fiscal year
Export or screenshot this view. It shows total GST/HST collected and total ITCs claimed — the two numbers CRA will compare to your remittance history.
→ See how to configure tax rates so this report is accurate
Item 4: Supporting documents for questioned transactions
Addresses: Retained documentation
Navigation: Open the specific invoice or bill → click the paperclip icon → download attachment
You will not typically need to provide every attachment upfront. CRA will identify specific transactions they want documentation for. When that happens, open the Odoo record, download the attached receipt or contract, and send it.
→ See how to attach documents to invoice and bill records
Item 5: Job reference index (for trades businesses)
Addresses: Consistent categorisation, Complete records
Navigation: Invoicing → Customers → Invoices → Group By → Source Document → Export
This gives CRA (or your accountant) a view of every invoice grouped by job — showing consistent categorisation across the year.
→ See how to set up job reference numbers
How to assemble the package
- Run both exports (sales invoices + vendor bills, Posted, full fiscal year) and save as XLSX files with clear names.
- Export or screenshot the Tax Report for the same period.
- Zip the three files into a single folder named with your business name and fiscal year.
- Note which invoices or bills are missing attachments — if CRA requests documentation for a specific transaction and the attachment isn't there, you will need to locate the original from email or physical files.
That four-step process covers the Odoo side. Your accountant handles the actual filing.
What Odoo Community cannot provide
- Pre-filled GST/HST remittance worksheet — Enterprise only. Your accountant calculates the remittance amount from the Tax Report figures.
- Locked prior-period records — Community does not prevent editing historical invoices. If this is a concern, export records at each period-end and store them externally.
- Automated bank reconciliation — Enterprise only. Matching payments to invoices is manual in Community.
- Multi-entity or multi-currency consolidation — Enterprise only.
For most single-entity Canadian small businesses with straightforward HST obligations, none of the above gaps prevent you from maintaining CRA-ready records in Community.
One-page checklist: CRA-ready records in Odoo Community
Before year-end:
- All sales invoices for the year confirmed (Posted) — no stuck drafts
- All vendor bills for the year confirmed (Posted)
- GST/HST tax rate applied to every taxable invoice line
- Supporting documents attached to all invoices and bills
- Job reference numbers on every invoice (trades businesses)
At year-end:
- Export: Customers → Invoices → Posted → full fiscal year (XLSX)
- Export: Vendors → Bills → Posted → full fiscal year (XLSX)
- Export or screenshot: Tax Report for the full fiscal year
- Files named clearly and saved
- Package sent to accountant
If CRA contacts you:
- Open the specific invoice or bill in Odoo
- Download attached source document (receipt, contract)
- Respond with the document — do not edit the original invoice record
Accuracy note
This post describes a record-keeping process using Odoo Community's Invoicing module. It does not constitute accounting or tax advice. CRA audit processes, documentation requirements, and filing obligations vary by business type, province, and individual circumstances. Consult a qualified accountant or tax professional for advice specific to your situation. Confirm current CRA requirements at canada.ca/en/revenue-agency.
If you want to see how this full record-keeping system works in a live Odoo instance before committing, our 14-day trial gives you full access with no credit card required.