Skip to main content
GS Tech Systems

ZATCA compliance · Saudi Arabia

ZATCA Phase 2 e-invoicing integration for your ERP

We make your ERP or POS FATOORA-compliant: generating UBL 2.1 XML invoices with QR codes and cryptographic stamps, onboarding your devices, and connecting to ZATCA for clearance and reporting.

  • Phase 1 and Phase 2 compliance
  • UBL 2.1 XML, QR codes and cryptographic stamping
  • Device onboarding (CSID) handled for you
  • Clearance and reporting through ZATCA's APIs

Who it's for

Who must comply?

E-invoicing applies to all VAT-registered persons in the Kingdom. Phase 2 (integration) is being rolled out in waves:

  • Every VAT-registered business must issue electronic invoices (Phase 1)
  • Businesses are selected for Phase 2 in waves based on their taxable revenue
  • ZATCA notifies each selected taxpayer in advance of its integration deadline
  • Businesses that have been notified must integrate their systems with FATOORA by their deadline

Phase 1 vs Phase 2

  • Phase 1: Generation

    Since December 2021, invoices must be generated and stored electronically by a compliant solution, with a QR code on simplified (B2C) invoices. Handwritten and editable invoices are no longer accepted.

  • Phase 2: Integration

    From January 2023, in waves, your system must connect to ZATCA's FATOORA platform. Invoices are produced in UBL 2.1 XML with a cryptographic stamp and submitted to ZATCA.

  • Clearance (B2B)

    Standard tax invoices must be cleared by ZATCA before they are shared with the buyer.

  • Reporting (B2C)

    Simplified tax invoices are issued to the customer immediately and reported to ZATCA within 24 hours.

Phase 2 technical requirements

A compliant solution must, among other things:

  • Generate invoices, credit and debit notes in UBL 2.1 XML format
  • Apply a cryptographic stamp and invoice hash chain to every document
  • Produce the required QR code on invoices
  • Onboard each invoicing device or unit with ZATCA to obtain a Cryptographic Stamp Identifier (CSID)
  • Connect to ZATCA's APIs for clearance and reporting, and handle rejections
  • Keep invoices tamper-proof and archived for the required retention period

How it works

How our integration works

Your staff issue invoices in your ERP as usual. Our integration layer handles the ZATCA-specific work in the background.

  1. Your ERP or POS

    An invoice or note is created.

  2. Our integration layer

    UBL 2.1 XML, hash, stamp and QR are generated.

  3. ZATCA FATOORA

    B2B invoices are cleared; B2C invoices are reported.

  4. Compliant invoice

    The stamped invoice with QR is shared with your customer.

Compatibility

Systems we integrate

We connect off-the-shelf and in-house systems. If your system can send invoice data, it can be made Phase 2 compliant.

  • ERP systems
  • Accounting software
  • Retail POS systems
  • In-house / custom software
  • E-commerce stores
  • Multi-branch and multi-device setups

Timeline

From kickoff to go-live

  1. 1 · Week 1

    Readiness assessment

    Review your wave deadline, invoice types, branches and devices.

  2. 2 · Weeks 1–3

    Build & map

    Generate compliant XML, QR codes and stamps from your ERP data.

  3. 3 · Weeks 3–4

    Compliance checks

    Onboard devices in the simulation environment and pass ZATCA's compliance checks.

  4. 4 · Week 4–5

    Production go-live

    Obtain production CSIDs, switch to live clearance and reporting, and monitor.

Pricing

Fixed-price Phase 2 packages

Pricing depends on your system, number of devices and invoice volume. Share your wave deadline and setup and we will send a fixed quote.

Request pricing

Frequently asked questions

How do I know when my business must integrate?

ZATCA notifies selected taxpayers in advance of their Phase 2 deadline, based on revenue thresholds for each wave. Check your notification or the FATOORA portal, and contact us early to leave time for testing.

Can you make our existing ERP compliant?

In most cases, yes. We add a ZATCA integration layer to your current ERP or POS instead of replacing it.

What is a CSID and who obtains it?

A Cryptographic Stamp Identifier is issued by ZATCA to each onboarded invoicing unit. We handle the onboarding process with an OTP from your FATOORA portal.

What happens if ZATCA rejects an invoice?

Our integration shows the rejection reason, alerts your team and lets you correct and resubmit the document.

Do you support Arabic invoices?

Yes. Invoices can be produced in Arabic or bilingual Arabic and English formats.

Get compliant before your deadline

Book a free assessment of your current system and get a fixed-price integration plan.

Please note: ZATCA regulations, waves and deadlines are updated from time to time. This page is general information, not tax advice. Please confirm the requirements that apply to your business with ZATCA or your tax advisor.