ZATCA E-Invoicing Phase 2: Requirements and How to Get Ready
ZATCA e-invoicing Phase 2, the integration phase, requires your invoicing system to issue every invoice as a UBL 2.1 XML file, sign it with a cryptographic stamp, add a QR code, and exchange it with ZATCA's Fatoora platform. Standard tax invoices (B2B) must be cleared by ZATCA before you share them with the buyer; simplified invoices (B2C) must be reported to ZATCA within 24 hours of being issued. Businesses are brought in wave by wave, and ZATCA notifies each taxpayer of its wave at least six months in advance.
How is Phase 2 different from Phase 1?
Phase 1, the generation phase, started on 4 December 2021. It required businesses to issue and store invoices electronically from a suitable system instead of on paper or by hand, with a QR code on simplified invoices. There was no direct connection to ZATCA.
Phase 2, the integration phase, has been rolled out since 1 January 2023 in successive waves defined by the taxable revenue of the businesses in each wave. Being electronic is no longer enough: the invoicing system must connect to ZATCA and exchange invoices in a defined format with defined data.
What does Phase 2 require?
- A standard format: invoices are produced as XML following UBL 2.1. You can still show or print a readable copy for the customer, but the electronic file is the invoice of record.
- A cryptographic stamp: the system digitally signs each invoice, proving where it came from and making later tampering detectable.
- A QR code: carries the invoice's key data so it can be verified.
- An unbroken chain: each invoice has a unique identifier, a sequential counter and a hash linked to the previous invoice, so an invoice cannot be removed from the sequence or slipped in between two others.
- An onboarded device or solution: every system or device that issues invoices is registered with ZATCA through the Fatoora portal before it goes live.
- Retention without deletion: issued invoices cannot be deleted or edited. Mistakes are corrected with a credit or debit note.
Clearance vs reporting: standard and simplified invoices
| Item | Standard tax invoice (B2B) | Simplified tax invoice (B2C) |
|---|---|---|
| Typical buyer | Another business | An individual consumer |
| Model | Clearance: sent to ZATCA and returned cleared | Reporting: sent to ZATCA after issue |
| When the buyer gets it | After ZATCA clears it | Immediately |
| Deadline | Before it is shared with the buyer | Within 24 hours of issue |
Credit and debit notes follow the same rules as the invoice they relate to: a note against a standard invoice is cleared first, and a note against a simplified invoice is reported within the same window.
How do you onboard an invoicing device with ZATCA?
ZATCA calls each system or device that issues invoices an E-invoice Generation Solution (EGS). Each one is onboarded separately, typically like this:
- An authorised user of the business logs in to the Fatoora portal and generates a one-time password (OTP).
- The OTP is entered into the invoicing system, which creates the onboarding request and sends it to ZATCA.
- The system passes ZATCA's compliance checks, which confirm its invoices meet the specification.
- ZATCA issues the unit's cryptographic stamp identifier (CSID), and the system starts sending live invoices.
If you have several branches or several tills that issue invoices, each of them needs its own onboarding.
A practical readiness plan
1. Confirm your wave
Watch for ZATCA's notification and check your account on its portal. Your go-live date depends on the wave assigned to your business, and the notice period is comfortable if you start early rather than in the last month.
2. Question your current system
Ask your provider directly: does the system produce UBL 2.1 invoices, sign them and send them for clearance and reporting from inside the system? Can it onboard every device and till? Does it block deletion of invoices? A setup that depends on a separate middleware tool adds one more link that can fail.
3. Clean your data
Standard invoices need complete, correct buyer details, including the buyer's VAT number and address. Review your customer records, confirm your own business details, and make sure every item has the right VAT category.
4. Test before the deadline
Onboard in a test environment first where possible, and issue sample documents of every kind: standard invoice, simplified invoice, credit note and debit note. Check that each one is accepted.
5. Train staff on rejections
When ZATCA rejects a standard invoice, your accountant or cashier needs to know why and how to fix it. A standard invoice should never reach the customer before it has been cleared.
6. Watch the queue
An internet outage does not pause the 24-hour window for simplified invoices. Your system should show which invoices have not been sent yet and resend them automatically when the connection returns.
Common questions
Can I delete an invoice issued by mistake?
No. The issued invoice stays on record. You cancel its effect, fully or partly, with a credit note, and issue a correct invoice if needed.
Is printing a QR code enough?
It was a central part of Phase 1. In Phase 2 the QR code is just one element; you also need the standard format, the cryptographic stamp and the connection to ZATCA.
Summary
- Phase 2 connects your invoicing system directly to Fatoora and applies in waves by revenue.
- B2B invoices are cleared before they are shared; B2C invoices are reported within 24 hours.
- Each invoicing device or solution is onboarded with an OTP and receives a CSID.
- Invoices cannot be deleted; corrections go through credit or debit notes under the same rules.
- Start as soon as your wave is announced: system, data, testing, training.
Phase 2 in Final Solution ERP
Final Solution ERP handles Phase 2 from inside the system: signing, sending and device onboarding, with no extra software. Invoices come from sales or the point of sale in the same system that runs your accounting and inventory. See the e-invoicing page, or message us on WhatsApp or use the contact form to arrange a demo and a free trial.