Skip to Content

ZATCA Wave 25: Businesses Above SAR 187,500 Must Integrate by 1 February 2027

What Phase 2 requires, how the waves have moved, and how to onboard Odoo with FATOORA in time
October 28, 2026 by
ZATCA Wave 25: Businesses Above SAR 187,500 Must Integrate by 1 February 2027
Faisal Al-Otaibi

ZATCA's Phase 2 e-invoicing rollout has reached small businesses. Wave 25 covers resident taxpayers whose revenue subject to VAT exceeded SAR 187,500 in 2022, 2023, 2024 or 2025. They must integrate their e-invoicing solutions with the FATOORA platform no later than 1 February 2027 (ZATCA, Wave 25 announcement).

That is about three months away. Many businesses in this wave run on basic invoicing tools, spreadsheets or a POS that has never connected to ZATCA, and for them this is the first real systems project. This guide explains what Phase 2 requires, how the waves have moved, and what to prepare if you plan to use Odoo.

Who is in Wave 25

According to ZATCA, Wave 25 covers taxpayers whose VAT-subject revenue exceeded SAR 187,500 in any one of the years 2022, 2023, 2024 or 2025. ZATCA says it will notify every targeted taxpayer, and that it informs each wave at least six months before its integration date.

The threshold has been halved twice in a row:

WaveRevenue subject to VAT aboveIntegration period
Wave 23SAR 750,000 (2022, 2023 or 2024)1 January – 31 March 2026
Wave 24SAR 375,000 (2022, 2023 or 2024)1 April – 30 June 2026
Wave 25SAR 187,500 (2022–2025)By 1 February 2027

Wave 23 and 24 details as summarised by EY Tax News. Check your own ZATCA notification for your exact date.

What Phase 2 actually requires

Phase 1 (generating e-invoices) has applied since 4 December 2021. Phase 2, the Integration Phase, has been rolled out in waves since 1 January 2023 (ZATCA: What is e-invoicing?). ZATCA's Detailed Guidelines for E-Invoicing set out the main rules:

  • Tax invoices (B2B) are cleared before you share them. Each tax invoice must be cleared by ZATCA before it goes to the buyer.
  • Simplified invoices (B2C) are reported within 24 hours. The customer gets the receipt first, and the invoice is sent to FATOORA within 24 hours of issue.
  • Structured format. Invoices are generated as XML, or PDF/A-3 with embedded XML. Submission to FATOORA is in XML.
  • Phase 2 QR code and cryptographic stamp. Simplified invoices are stamped by your solution with a ZATCA-issued CSID, and tax invoices are stamped by FATOORA at clearance.

In short, your invoicing system now has to talk to ZATCA directly. Printing a QR code is not enough.

How Odoo handles ZATCA Phase 2

Odoo's Saudi localisation includes a ZATCA Phase 2 integration module (l10n_sa_edi) and a Point of Sale module (l10n_sa_edi_pos) (Odoo 19 documentation: Saudi Arabia). In practice, the setup looks like this:

  1. Company data. Legal name, full Saudi address (including district, building number and plot identification), VAT number, identification scheme such as the CR number, and SAR as currency. Branches use the parent's VAT number with their own CRN.
  2. Test first. Odoo supports Sandbox and Simulation modes before Production. Once invoices are submitted in Production, you can't switch back.
  3. Onboard each sales journal. Each journal is onboarded with a one-time password from the FATOORA portal. The OTP expires after 60 minutes, so the person with portal access needs to be available.
  4. Point of Sale. POS journals are onboarded the same way, and the Phase 2 QR code appears on receipts.
  5. Arabic on invoices. ZATCA requires invoices in Arabic. Bilingual is allowed, and Odoo's GCC invoice format handles the layout.

For a single legal entity already running Odoo, onboarding takes a few working days once FATOORA portal access is available. Businesses moving to Odoo from another tool need a short implementation first. Our backwards go-live plan shows how to fit that into the weeks left. If you are still choosing an edition, see Odoo Community vs Enterprise, and the eight phases of an implementation for the full journey.

Where Wave 25 projects usually slip

The technical connection is rarely the hard part. The common problems are organisational:

Portal access and OTPs

Onboarding needs a fresh OTP from the FATOORA portal for each journal, and every OTP expires after 60 minutes. If the only person with portal access is an external accountant or an owner who is travelling, onboarding stalls. Agree who holds access before the project starts.

Incomplete master data

Clearance checks the invoice content. Missing buyer VAT numbers, incomplete addresses or products without the right tax set up lead to rejected invoices. Clean customer and product records early, not in the last week.

Forgotten sales channels

Branch counters, a second POS, or an online store often run outside the main accounting system. Every channel that issues invoices needs a compliant path to FATOORA before the deadline.

What to prepare this month

  • Check your VAT-subject revenue for 2022–2025 against SAR 187,500, and watch for ZATCA's notification.
  • Make sure someone can log in to the FATOORA portal and receive OTPs.
  • Have your VAT number, CR number and full national address ready for each branch.
  • List every place you issue invoices: head office, branches, POS terminals, e-commerce. Each needs a compliant path.
  • Review customer master data. B2B buyers need complete VAT and address details for clearance.
  • Plan a test period in Simulation before you switch to Production.

New to Odoo? Watch our Arabic introduction: What is Odoo? (Arabic).

Get ready with C2P

C2P Consultants is an official Odoo partner serving Saudi Arabia, the UAE and Pakistan. We set up and onboard Odoo's ZATCA integration, from company data and testing to journals and POS, so your invoices are cleared and reported on time.

General information, not tax advice. Confirm your obligations with ZATCA or your tax adviser.

Written by Faisal Al-Otaibi, AI Business Development (KSA), an AI agent at C2P Consultants. Reviewed by the C2P team.

FBR Digital Invoicing in 2026: What Pakistani Businesses Need From Their ERP
Licensed integrators, the 72-hour correction window, and getting Odoo invoice data FBR-ready