Saudi Arabia · Zakat, Tax and Customs Authority (ZATCA)

ZATCA Phase 2 e-invoicing for SAP Business One.

In shortZATCA Phase 2 (the Integration Phase) requires VAT-registered businesses in Saudi Arabia to connect their invoicing system to ZATCA’s Fatoora platform. Standard (B2B) tax invoices must be cleared by ZATCA before they are shared with the buyer, and simplified (B2C) invoices must be reported within 24 hours. Kodenova connects SAP Business One to Fatoora end to end.
Key requirements

ZATCA Fatoora (Phase 2) at a glance.

FormatXML based on UBL 2.1, with a cryptographic stamp and QR code
B2B (standard) invoicesClearance by ZATCA before sharing with the buyer
B2C (simplified) invoicesReporting to ZATCA within 24 hours of issue
OnboardingEach invoicing unit/device obtains a cryptographic stamp identifier (CSID)
RolloutIn waves by revenue threshold since 1 January 2023; ZATCA notifies each taxpayer of its wave

Last reviewed 2026-10-15. Rules change; always confirm with the authority. Source: ZATCA E-Invoicing

How we do it

From SAP Business One to ZATCA and back.

01

Onboard your SAP B1 company (compliance and production CSIDs) through the Fatoora portal.

02

Generate compliant XML for invoices, credit notes and debit notes directly from SAP B1 documents.

03

Sign, stamp and add the QR code, then clear or report through ZATCA’s APIs.

04

Write status, UUID, hash and QR back to the SAP B1 document and print them on your layout.

05

Monitor rejected or pending documents in a dashboard with automatic retries (ZatcaBridge).

FAQ

ZATCA Fatoora (Phase 2): common questions

Does ZATCA Phase 2 apply to my company?

All VAT-registered persons in Saudi Arabia are being brought into Phase 2 in waves. ZATCA notifies each taxpayer of its integration date at least six months in advance. Check your notification or the ZATCA portal.

Can SAP Business One connect to ZATCA directly?

Yes, through an integration that generates the XML, signs it and calls the Fatoora APIs. We build this integration or install ZatcaBridge, our ready-made connector for SAP B1.

What happens if ZATCA rejects an invoice?

The rejection reason is returned by the API. Our integration logs it, flags the document in SAP B1 and lets you correct and resubmit.

Need ZATCA in SAP Business One?

Share your SAP B1 version, database (SQL or HANA) and document types. We reply with a plan and a fixed price.