Odoo keeps running your books under the UAE e-invoicing mandate. What changes is what happens after an invoice is issued: it must become PINT-AE XML carrying roughly 51 mandatory fields, pass validation, and reach the tax authority through an Accredited Service Provider. Invaq adds that compliance layer downstream of Odoo, via CSV import or API.
What the mandate means for Odoo users
Odoo is one of the most widely deployed ERPs among UAE mid-market companies, and nothing in the mandate asks you to replace it. The UAE model is the Peppol 5-corner / DCTCE architecture: your invoice travels from you, through your Accredited Service Provider, to your buyer’s provider, with tax data reported to the authority in parallel. Your ERP remains corner one — the system of record. The compliance work happens between corners: converting each invoice into the PINT-AE profile (the UAE Peppol invoice format, with roughly 51 mandatory fields), validating it, and transmitting it via an ASP.
The deadlines are phased. A pilot opened on 1 July 2026. Under Ministerial Decision No. 56 of 2026, businesses with revenue of AED 50 million or more must appoint an ASP by 30 October 2026 and comply from 1 January 2027; everyone else appoints by 31 March 2027 and complies from 1 July 2027. Penalties for non-compliance can reach AED 5,000 per invoice.
Business segment
Appoint an ASP by
Comply from
Revenue ≥ AED 50 million
30 October 2026
1 January 2027
All other businesses
31 March 2027
1 July 2027
What Odoo cannot do alone
Odoo handles UAE VAT accounting well, and both its SaaS and self-hosted editions export invoice data easily. But four mandate requirements sit outside the ERP layer — and as of July 2026, with none of the 42 providers on the Ministry of Finance pre-approved list yet fully accredited (list dated 17 July 2026), no ERP vendor offers a live accredited connection either.
Mandate requirement
Standard Odoo (as of July 2026)
Odoo + Invaq
PINT-AE UBL 2.1 XML generation
No published UAE PINT-AE profile in the standard localisation
Generated from imported invoice data
Validation of ~51 mandatory fields
Standard VAT checks; no PINT-AE field-level ruleset
Deterministic 0-100 score per invoice
Transmission via an Accredited Service Provider
No accredited connection (none exists anywhere yet)
Provider-agnostic ASP routing, live as accreditation finalises
Odoo capability notes reflect publicly available information as of July 2026; check your version and Odoo’s UAE localisation roadmap for changes. Invaq is not an ASP — it prepares, validates, and routes invoices to ASPs through a provider-agnostic adapter.
The practical path with Invaq
The workflow is deliberately simple: export from Odoo, import into Invaq, and let the AI column mapper propose how your Odoo columns map onto the canonical invoice model — it works with exports from any accounting system, so custom fields and renamed columns are fine. Each invoice is then validated with a deterministic 0-100 score, failures land in an exceptions queue for correction, and passing invoices are finalized as PINT-AE-aligned XML and submitted through your chosen ASP.
When you outgrow CSV, API keys and HMAC-signed webhooks let a scheduled action in Odoo (or lightweight middleware) push invoices automatically and receive submission and delivery events back. The Growth plan is AED 369 per month; you can also try the free PINT-AE validator and ICV calculator before importing anything.
Validation currently runs against a draft ruleset (uae-pint-ae-draft-1), which will be updated to the final regulator specification when it is published.
Step by step: from Odoo to a submitted invoice
1. Export invoices from Odoo
Open your invoice list view in Odoo, select the records you need, and export to CSV or XLSX. Both Odoo Online (SaaS) and self-hosted editions support this out of the box — no module required.
2. Import the CSV into Invaq
Drag the export into the Invaq importer. There is no fixed template: the importer accepts the columns exactly as Odoo names them.
3. Confirm the AI column mapping
The AI mapper reads your header row and proposes a mapping from Odoo field names (partner_id, amount_untaxed, invoice_date, and so on) to the canonical invoice model. You review and confirm before anything is imported.
4. Run validation
Every imported invoice is checked against the PINT-AE draft ruleset and receives a deterministic 0-100 score with a line-by-line list of passes, warnings, and failures.
5. Fix failures in the exceptions queue
Missing TRNs, absent AED tax totals on foreign-currency invoices, and incomplete party details surface as exceptions. Correct them in Invaq, or fix the source record in Odoo and re-import.
6. Finalize and submit
Passing invoices are rendered as PINT-AE-aligned UBL 2.1 XML and routed to your chosen Accredited Service Provider through the provider-agnostic adapter, with every step written to the Trust Ledger.
Odoo-specific questions
Does this work with both Odoo Online (SaaS) and self-hosted Odoo?
Yes. The CSV path only needs an invoice export, which every Odoo edition provides from the list view. Self-hosted deployments can additionally push invoices directly over the Invaq API, since they control their own outbound integrations.
Do I need to install a custom Odoo module or app?
No. The CSV import route requires nothing installed in Odoo at all. If you want hands-off automation, Enterprise plans include API keys and HMAC-signed webhooks, so a scheduled action or middleware can push invoices in and react to submission and delivery events.
Will Odoo add native PINT-AE support itself?
Odoo has a strong track record of shipping country localisations, so watch its UAE roadmap. As of July 2026, however, no provider on the Ministry of Finance pre-approved list has completed full accreditation, so no ERP can offer a live accredited connection today. Even once native XML support exists, you still need ASP routing, pre-issue validation, and tamper-evident audit evidence — the layer Invaq provides, without locking you to any single provider.
Try it with a real Odoo export
Open a full Invaq workspace instantly and drop in a CSV straight from your Odoo invoice list — watch the AI mapper, the validation scores, and the Trust Ledger work on your own data.