ZATCA Wave 25: Are You In? A 14-Week Countdown to 1 February 2027
ZATCA Wave 25 covers businesses whose VAT-subject revenue topped SAR 187,500 in any year from 2022 to 2025. Check if you are in, then follow our 14-week plan to the 1 February 2027 Phase 2 integration date.
Published 2026-10-26 · METCH
ZATCA Wave 25: who is in, and a 10-minute check
ZATCA Wave 25 covers every taxpayer whose revenue subject to VAT exceeded SAR 187,500 in 2022, 2023, 2024 or 2025. One year over the line is enough, even if sales have fallen since. ZATCA announced the criteria on 24 July 2026 and says it will notify each targeted business directly.
The threshold is half of Wave 24's SAR 375,000, and it matches the voluntary VAT registration line: ZATCA's registration page makes registering optional for revenue between SAR 187,500 and SAR 375,000. Businesses that registered by choice can therefore fall into Phase 2 for the first time.
A 10-minute self-check:
- Pull your VAT returns for 2022 to 2025 and total the sales for each calendar year.
- Ask one question per year: did it exceed SAR 187,500? That is an average of SAR 15,625 a month.
- One yes is enough. A café with SAR 160,000 of sales in 2023 and SAR 195,000 in 2025 is in Wave 25 because of 2025 alone.
- Find out who in your company receives ZATCA correspondence, and confirm that the contact details registered with ZATCA are current.
- Still unsure? Ask ZATCA on its unified number, 19993.
Now the date. In English, ZATCA's Wave 25 announcement says to integrate with FATOORA "by no later than February 1, 2027"; the Arabic text, like ZATCA's decision in the Official Gazette, says integration applies starting from 1 February 2027. Either way, the safe plan is to have every invoicing channel connected and tested before Monday 1 February 2027: 98 days, or exactly 14 weeks, from 26 October 2026. Your own date is the one in ZATCA's notification to you, so keep that letter in your project file.
What FATOORA integration means: clearance and reporting in plain words
Integration means your invoicing system exchanges every invoice with ZATCA's FATOORA platform instead of only printing a QR code on it. Tax invoices to businesses are cleared by ZATCA before your customer receives them; simplified invoices to consumers are reported to ZATCA within 24 hours.
Phase 1, in force since 4 December 2021, required you to issue and store invoices electronically. Phase 2 adds the connection itself. Under the updated rules ZATCA published in May 2023, listed on its e-invoicing laws and regulations page:
- Clearance (B2B): tax invoices and their credit and debit notes go to ZATCA first. ZATCA checks them, adds its cryptographic stamp only to compliant ones and notifies you before they are shared with the customer.
- Reporting (B2C): simplified tax invoices, such as POS receipts, are stamped by your own system, handed over at once and sent to ZATCA within 24 hours of being issued.
- Offline: if the connection drops, a compliant solution keeps working, queues the invoices and reports them once it reconnects.
- Format: XML, or PDF/A-3 with the XML embedded.
- Out of scope: fully exempt supplies, reverse-charge supplies and imports of goods.
Day to day, the change is small but strict. In Odoo 20, every sales journal that issues invoices, including your POS invoice journal, is onboarded separately with a one-time password (OTP) from the FATOORA portal. The OTP expires after 60 minutes, so generate it only when the person doing the setup is ready. ZATCA's answer then appears on each invoice: green for accepted, yellow for accepted with warnings, red for rejected. A rejected invoice is not legally valid until you correct and resubmit it.
For the technical background, such as UBL 2.1, the hash chain and CSIDs, see our ZATCA Phase 2 guide. For the new ZATCA screens in Odoo 20, read Odoo 20 accounting in Saudi Arabia.
A 14-week countdown to the 1 February 2027 integration date
Fourteen weeks is enough if you start now and keep January for testing, not building. The plan, from Monday 26 October 2026:
- Week 1 (26 Oct–1 Nov): confirm you are in. Total your 2022–2025 sales, find ZATCA's notification and name one project owner.
- Week 2 (2–8 Nov): list every place an invoice is created: the accounting system, each branch, each POS, the online store, manual credit notes.
- Weeks 3–4 (9–22 Nov): settle the system. On Odoo, check your version and decide whether to set up ZATCA on it or with an upgrade. On spreadsheets or a tool without Phase 2 support, choose the replacement now.
- Weeks 5–6 (23 Nov–6 Dec): clean master data. Company: a name of 63 characters or fewer, a national address with district, four-digit building and secondary numbers, the CR number and a 15-digit VAT number that starts and ends with 3. Business customers: VAT numbers and addresses.
- Weeks 7–8 (7–20 Dec): configure on a duplicate database in Simulation mode, onboarding each sales journal with an OTP from the FATOORA simulation portal.
- Weeks 9–10 (21 Dec–3 Jan): test real cases: a B2B invoice, a cash sale, a credit note with its ZATCA reason, an export invoice and a POS sale with the internet cut. Fix every red and yellow response, and keep this work apart from your year-end closing checklist.
- Week 11 (4–10 Jan): train staff on who watches rejections, how to correct and resend, and why a posted invoice is fixed with a credit note, never by editing it.
- Weeks 12–13 (11–24 Jan): switch to Production, onboard each live journal with a production OTP and check responses daily. Once a production invoice is sent, the database cannot return to Simulation.
- Week 14 (25–31 Jan): freeze changes and agree who reports any outage to ZATCA through its E-invoicing Failure Notifications service.
- 1 February 2027: every invoice runs through FATOORA. Ramadan is expected to begin days later, so start your Ramadan 2027 playbook for retail and restaurants early.
What drives the cost of Wave 25 integration, and what Odoo 20 includes
In Odoo 20, the ZATCA connector itself adds nothing to your bill. The Saudi e-invoicing module (l10n_sa_edi) and its POS companion (l10n_sa_edi_pos) are published under the open-source LGPL-3 licence in Odoo's main code base, so they run on Odoo Community and come with every paid plan, Standard included. Odoo's Saudi Arabia documentation walks through their setup. What you pay for is everything around them.
Cost drivers to pin down before you compare quotes:
- Plan and users. The ZATCA module does not change your plan, but Studio, multi-company or an external API connector moves every user to Custom. Our guide to Odoo prices in Saudi Arabia shows per-user figures in SAR.
- Invoicing units. Each sales journal, branch journal and POS invoice journal is onboarded and tested separately.
- Data quality. The more business customers with missing VAT numbers or addresses, the longer the cleanup.
- Starting point. A recent Odoo database needs configuration and testing; spreadsheets or a legacy package add a data migration.
- Other systems that issue invoices. An online store, delivery app or separate POS that issues its own invoices needs its own compliant integration, or a redesign so that Odoo issues the invoice.
- Test environment. Simulation runs on a duplicate of your database, never on the live one.
- Training. Rejections, warnings and credit-note reasons become daily work after go-live.
Ask every provider to price these lines separately and to show you a test invoice cleared in FATOORA's simulation environment before sign-off. If you are still choosing an edition, our Odoo Community vs Enterprise guide for Saudi Arabia explains the trade-offs.
ZATCA e-invoicing penalties and the mistakes behind them
ZATCA applies the VAT Law's fines to e-invoicing violations. Under its current published schedule, a first violation brings a warning and time to fix it, and repeats escalate to fines of up to SAR 50,000.
What is published, as of October 2026:
- The E-Invoicing Regulation applies the fines in chapter 16 of the VAT Law. Article 45 caps the fine for breaching any other provision of the Law or its Regulations at SAR 50,000; Article 47 allows doubling a repeat within three years of a final penalty decision.
- ZATCA's simplified guide to its violations classification (second edition, May 2024) starts every e-invoicing violation with a warning.
- Not integrating every invoicing system from your integration date: a warning with 30 days to fix it, then SAR 10,000, rising with each repeat to SAR 50,000.
- Not issuing e-invoices, not reporting them to ZATCA, or deleting or amending them after issue: a warning, then SAR 5,000, rising to SAR 40,000.
- A violation repeated after 12 months starts again with a warning. Figures from ZATCA's 2021 Phase 1 list predate this schedule.
- The fines-cancellation initiative, extended to 31 December 2026, covers late registration, payment, filing and VAT return correction fines, and excludes fines under Article 45.
Confirm the current schedule with ZATCA before relying on any amount.
Common integration mistakes:
- Checking only last year's sales, when one year above SAR 187,500 from 2022 to 2025 is enough.
- Testing in the live database: after production invoices are sent, there is no way back to Simulation.
- Forgetting an invoicing unit, such as a second branch, the POS or the online store.
- Incomplete master data: building numbers that are not four digits, or a VAT number that is not 15 digits.
- Ignoring yellow warnings; Odoo's documentation says they may become rejections later.
- Editing or deleting posted invoices instead of issuing a credit note with its ZATCA reason.
Your next step: run the revenue check today, then book a free consultation on our ZATCA e-invoicing page. METCH, an official Odoo partner, reviews your invoicing units and data, then sets up and tests Odoo's ZATCA integration with your team.
Frequently asked questions
Our 2026 sales fell below SAR 187,500. Are we still in ZATCA Wave 25?
Yes, if your revenue subject to VAT exceeded SAR 187,500 in any of 2022, 2023, 2024 or 2025. ZATCA's Wave 25 test looks only at those four years, so a lower 2026 does not take you out. Check the notification ZATCA sent you, and if your figures sit close to the line, confirm your status with ZATCA on 19993.
Is 1 February 2027 a start date or a deadline for Wave 25?
Treat it as your go-live date. ZATCA's decision in the Official Gazette and its Arabic announcement say integration applies starting from 1 February 2027; the English announcement says by no later than that date. In earlier waves the announced date opened an integration window, but no Wave 25 end date has been published, so finish setup and testing before 1 February 2027 and follow the date in ZATCA's notification to you.
We have not received a ZATCA notification. What should we do?
Check your figures, then ask ZATCA. ZATCA says it notifies each wave directly at least six months before its integration date, so a qualifying business should already have heard. Confirm your registered contact details, call 19993 to check your status, and keep preparing if any year from 2022 to 2025 exceeded SAR 187,500.
Does Odoo charge extra for ZATCA Phase 2 integration?
No, the module itself is free. Odoo's Saudi e-invoicing modules, l10n_sa_edi and l10n_sa_edi_pos, are open source under the LGPL-3 licence, run on Community and come with the paid plans, Standard included. You still pay your normal Odoo subscription, plus any implementation work such as data cleanup, onboarding each sales journal and testing in ZATCA's simulation environment.
Get your Odoo ready for ZATCA Wave 25
METCH, an official Odoo partner, sets up Odoo's ZATCA integration, cleans your invoice data and tests every sales journal and POS in FATOORA's simulation environment with your team.
Book a free consultation