ZATCA Phase 2 Complete Guide: Integration, Requirements & Timeline

Atif Mehmood March 25, 2026 12 min read ZATCA Compliance

ZATCA Phase 2, officially called the "Integration Phase," transforms how businesses in Saudi Arabia handle invoicing. Unlike Phase 1 which only required local e-invoice generation, Phase 2 demands real-time integration with ZATCA's platform. Every invoice your business issues must be electronically transmitted to and validated by ZATCA before it is considered legally valid.

This guide explains every aspect of Phase 2 — what it requires, when it applies to your business, and exactly how to achieve compliance. If you are planning your ZATCA integration in Saudi Arabia, this is the definitive resource.

What Changed from Phase 1 to Phase 2?

ZATCA Phase 2 integration dashboard

Phase 1, launched December 4, 2021, established the foundation: businesses had to generate invoices electronically instead of manually. But Phase 1 had no requirement to connect to ZATCA. Invoices were generated and stored locally.

Phase 2 changes everything:

Aspect Phase 1 (Generation) Phase 2 (Integration)
Invoice GenerationLocal electronic generationLocal generation + ZATCA transmission
B2B InvoicesGenerate and storeMust be cleared by ZATCA before delivery
B2C InvoicesGenerate and storeMust be reported to ZATCA within 24 hours
XML FormatNot specifiedUBL 2.1 XML mandatory
Digital SignatureNot requiredMandatory (X.509 certificate)
QR CodeB2C only, 5 tagsBoth B2B and B2C, 9 tags
UUIDNot requiredUnique UUID per invoice mandatory
Invoice HashNot requiredSHA-256 hash chain mandatory
API IntegrationNoneZATCA API integration required

Phase 2 Rollout Timeline

ZATCA rolls out Phase 2 in waves, targeting businesses based on their annual taxable revenue. Each wave receives a minimum 6-month notice before their compliance deadline.

Wave 1 — January 1, 2023

Businesses with annual taxable revenue exceeding 3 billion SAR

Wave 2 — July 1, 2023

Businesses with annual taxable revenue exceeding 500 million SAR

Wave 3 — October 1, 2023

Businesses with annual taxable revenue exceeding 250 million SAR

Waves 4–10 — 2024

Progressive revenue thresholds from 150 million SAR down to 25 million SAR

Waves 11+ — 2025–2026

Remaining businesses below 25 million SAR, including small and micro enterprises

ZATCA onboarding and wave assignment process

ZATCA onboarding process for Phase 2 integration

How to Check Your Wave

Log into the ZATCA portal (zatca.gov.sa) and check the "E-Invoicing" section under your business profile. Your wave assignment and compliance deadline will be displayed there. You will also receive official notification via email and SMS.

The Two Integration Models

ZATCA B2B Clearance vs B2C Reporting

B2B Clearance Model vs B2C Reporting Model

Phase 2 uses two different integration models depending on the invoice type:

1. Clearance Model (Standard/B2B Invoices)

Standard tax invoices (B2B) go through the clearance model. This means the invoice must be sent to ZATCA and approved before you can deliver it to the buyer. The process works like this:

  1. Your system generates the invoice in UBL 2.1 XML format
  2. The XML is digitally signed using your ZATCA production certificate
  3. The signed XML is sent to ZATCA's clearance API endpoint
  4. ZATCA validates the invoice, stamps it with their own signature, and returns it
  5. The cleared, stamped invoice is then delivered to the buyer

If ZATCA rejects the invoice, you cannot deliver it. You must fix the errors and resubmit. This makes the clearance model more strict but ensures every B2B invoice in circulation is ZATCA-verified.

2. Reporting Model (Simplified/B2C Invoices)

Simplified tax invoices (B2C) use the reporting model. You can deliver the invoice to the customer immediately, but must report it to ZATCA within 24 hours. The process:

  1. Your system generates the invoice in UBL 2.1 XML format with all required fields
  2. The XML is digitally signed
  3. The invoice is delivered to the customer with the complete QR code
  4. Within 24 hours, the signed XML is sent to ZATCA's reporting API endpoint
  5. ZATCA validates and accepts or rejects the reported invoice

Rejection After Delivery

If a reported B2C invoice is rejected by ZATCA after it was already delivered to the customer, you must issue a corrected invoice and re-report it. This is why using a validated ZATCA POS system is critical — it prevents issuing non-compliant invoices in the first place.

Technical Requirements for Phase 2

Phase 2 compliance requires specific technical capabilities in your invoicing system:

UBL 2.1 XML Format

All invoices must be structured in Universal Business Language (UBL) version 2.1 XML. This is an international standard for electronic business documents. ZATCA has published a Saudi-specific profile that adds mandatory fields like VAT category codes, seller/buyer tax registration numbers, and Saudi-specific document types.

Digital Signatures (X.509)

Every invoice must be digitally signed. Your business needs a Cryptographic Stamp Identifier (CSID) from ZATCA, which is essentially an X.509 digital certificate. There are two types:

Invoice Hash Chain

Each invoice contains a SHA-256 hash that creates a chain linking it to the previous invoice. The first invoice in the chain hashes against a known seed value. This chain makes it impossible to tamper with or delete individual invoices without breaking the chain — ZATCA can detect any modification.

UUID-Based Identification

Every invoice must have a universally unique identifier (UUID). This UUID is generated by your system and must be globally unique. It serves as the primary key for ZATCA to track and reference each invoice across systems.

QR Code with 9 TLV Tags

Both B2B and B2C invoices require a QR code with all 9 TLV tags including cryptographic data. For a deep dive into QR code specifications, read our complete guide to ZATCA QR code requirements.

The Integration Process: Step by Step

Here is the complete workflow to achieve Phase 2 compliance:

Step 1: Choose a Compliant Solution

Your invoicing or POS system must support Phase 2 requirements natively. Retrofitting a system that was not designed for ZATCA integration is extremely costly. The most practical approach is adopting a POS system built for Saudi Arabia that includes ZATCA integration out of the box.

Step 2: Onboarding with ZATCA

Register your solution with ZATCA through their developer portal. This involves generating a Certificate Signing Request (CSR), submitting it to ZATCA, and receiving your Compliance CSID (test certificate).

Step 3: Sandbox Testing

Use the ZATCA sandbox environment to test your integration. Submit test invoices, credit notes, and debit notes. Verify that clearance and reporting work correctly. Fix any validation errors.

Step 4: Compliance Checks

Run the official ZATCA compliance test suite against your system. This verifies your XML structure, digital signatures, QR codes, hash chains, and API communication all meet specifications.

Step 5: Production Certificate

After passing compliance checks, exchange your Compliance CSID for a Production CSID. This is your live digital certificate for signing real invoices.

Step 6: Go Live

Switch your system from sandbox to production endpoints. Begin issuing, signing, and transmitting live invoices to ZATCA.

Skip the Complexity — Use a Pre-Integrated Solution

LookPOS handles the entire ZATCA Phase 2 integration for you. From certificate management to XML generation, digital signatures, QR codes, and API communication — everything is built in and maintained.

Start Free Trial Talk to an Expert

Common Phase 2 Compliance Mistakes

Penalties for Non-Compliance

ZATCA enforces Phase 2 compliance through a structured penalty framework:

Violation First Offense Repeat Offense
Not issuing e-invoices5,000 SARUp to 50,000 SAR
Missing mandatory fieldsWarning + correction period10,000 SAR
Not integrating with ZATCAWarningUp to 50,000 SAR
Tampering with invoices10,000 SARUp to 50,000 SAR
Continuous non-complianceBusiness suspension

Phase 2 and Your POS System

For retail businesses, restaurants, and service providers, the POS system is the primary invoicing tool. If your POS does not support Phase 2, you cannot issue compliant invoices at the point of sale. Here is what your POS must be able to do:

If your current POS cannot do all of the above, it is time to evaluate a replacement. Read our detailed comparison of e-invoicing solutions for Saudi Arabia to find the right fit.

Frequently Asked Questions

What is the difference between ZATCA Phase 1 and Phase 2? +

Phase 1 required businesses to generate and store e-invoices locally in a structured format. Phase 2 requires real-time integration with ZATCA's platform — B2B invoices must be cleared before delivery, and B2C invoices must be reported within 24 hours. Phase 2 also mandates UBL 2.1 XML, digital signatures, and enhanced QR codes.

When does Phase 2 apply to my business? +

Phase 2 is rolled out in waves based on annual taxable revenue. ZATCA notifies businesses at least 6 months before their compliance deadline. Check the E-Invoicing section of your ZATCA portal for your wave assignment and deadline. If you haven't been notified yet, use the time to prepare.

What technical requirements does Phase 2 have? +

Phase 2 requires UBL 2.1 XML format, digital signatures using X.509 certificates (CSID), API integration with ZATCA's clearance and reporting endpoints, TLV-encoded QR codes with 9 tags, UUID-based invoice identification, and SHA-256 invoice hash chains.

Can I use my Phase 1 system for Phase 2? +

Only if your Phase 1 system has been upgraded to support Phase 2 capabilities. Many Phase 1 systems cannot be upgraded because they lack the architecture for API integration, digital signatures, and XML processing. In most cases, switching to a purpose-built ZATCA Phase 2 POS system is more practical than upgrading.

What happens if I miss my Phase 2 deadline? +

ZATCA typically issues a warning first, giving you a correction period. If non-compliance continues, penalties start at 5,000 SAR per violation and can escalate to 50,000 SAR. Persistent non-compliance can result in business suspension. It is far cheaper to invest in a compliant system than to pay repeated fines.

AM

Atif Mehmood

Founder of LookPOS — Building ZATCA-compliant POS and e-invoicing solutions for businesses across Saudi Arabia since 2018.