This post is part of our guide to using Odoo Community's Invoicing module as a CRA-ready record-keeping system. Read the full guide here.
Why reference numbers matter more than you think
When a question arises about a specific transaction from your accountant or from CRA, a job reference number on every invoice means you find the complete record in seconds — rather than trying to remember which invoice belongs to which job months later.
This matters most for trades businesses — HVAC, plumbing, electrical, construction — where you might invoice dozens of jobs per month, multiple invoices per job, and return to the same client site several times a year. Without a consistent reference system, reconstructing which invoice belongs to which job six months later is guesswork. With one, it is a ten-second search.
The reference fields available in Odoo Community invoices
Odoo Community's invoice form has three fields you can use for job or project references.
1. Source Document
- Location: top section of the invoice form, below the customer name
- What it does: a free-text field for referencing a job number, work order, or purchase order that generated this invoice
- Best for: your internal job reference — not shown to customers by default
- Searchable: yes — you can filter the invoice list by Source Document
2. Customer Reference (sometimes labelled "Customer PO Reference" or "Reference")
- Location: top section of the invoice form
- What it does: records the customer's own reference number (their PO number, their job number)
- Best for: matching your invoice to a customer's payment or purchase order
- Appears on: the printed invoice PDF sent to the customer
- Searchable: yes
3. Internal Note / Narration
- Location: below the invoice lines
- What it does: free-text note visible on the invoice PDF but not a structured searchable field
- Best for: supplementary context — site address, technician name, brief job description
For most trades businesses, Source Document is the right primary reference field. It is internal, searchable, and designed for exactly this use case.
How to add a reference number to an invoice
Navigation: Invoicing → Customers → Invoices → open or create an invoice
- In the top section of the invoice form, locate the Source Document field.
- Enter your job reference — for example:
JOB-2025-0142,HVAC-SMITH-001, or whatever naming convention you use. - Complete the rest of the invoice as normal and confirm it.
The reference is now permanently attached to this invoice record and will appear in your exported invoice list.
Building a consistent naming convention
The reference system only works if you use it consistently. Three simple formats that work well:
Option A — Sequential job numbers: JOB-YYYY-NNNN (e.g., JOB-2025-0142)
Clean, sortable, works for any business type.
Option B — Client code + sequence: SMITH-001, SMITH-002
Works well when you have repeat clients and want to group all their jobs together at a glance.
Option C — Job type + date + sequence: HVAC-0711-01, PLMB-0711-02
Useful for trades businesses where knowing the job type immediately from the reference number speeds up sorting.
Pick one format and document it somewhere your team can reference. The format matters less than using it every time.
How to search by reference number
Navigation: Invoicing → Customers → Invoices
- In the search bar at the top of the list, type your job reference number (or part of it).
- Odoo searches across invoice numbers, customer names, and reference fields simultaneously.
- The matching invoices appear instantly.
Alternatively, use Filters → Group By → Source Document to see all invoices grouped by job reference — useful when a single job generated multiple invoices over time.
Apply references to vendor bills too
When a supplier sends you a bill for materials or subcontracted work on a specific job, enter the same job reference in the Source Document field on the bill. This lets you pull all invoices and bills associated with a job in a single search — a complete picture of job revenue and job cost in one place.
Quick checklist
- Naming convention chosen and written down for the team
- Source Document field populated on every new invoice before confirming
- Source Document field populated on vendor bills for job-related purchases
- Test search: pick any recent job reference and confirm all related invoices and bills appear
Accuracy note
Field names and locations described in this post reflect Odoo Community's Invoicing module. Labels may vary slightly between Odoo versions or if your instance has been customized. This post does not constitute accounting or tax advice — confirm your record-keeping requirements with your accountant or the CRA directly.
If you want to test Odoo Community's invoicing and reference tracking in a live instance before committing, our 14-day trial gives you full access with no credit card required.