Summary
Overview
E-invoicing in Saudi Arabia is enforced in two phases. Phase 1, which came into effect in December 2021, required businesses to generate and store electronic invoices using compliant software. Phase 2, known as the Integration Phase, goes further: it requires taxpayers to integrate their invoicing systems directly with ZATCA's FATOORA portal so that invoices are shared with the authority at the time of issuance.
Under Phase 2, every tax invoice and credit note generated at your point of sale must be cryptographically stamped, transmitted to ZATCA, and either cleared (for B2B transactions) or reported (for B2C transactions) before or immediately after being issued to your customer.
A cleared invoice carries a ZATCA-issued cryptographic stamp and a QR code.
A reported invoice carries a seller-generated cryptographic stamp and a QR code that ZATCA validates after the fact.
Phase 2 targets different groups of taxpayers based on their annual revenue. If your business has been notified by ZATCA that you fall within a particular revenue, you are required to comply with ZATCA. Failure to comply can result in financial penalties.
How does Zoho POS help you comply?
Zoho POS handles the technical requirements of Phase 2 on your behalf. It generates the mandatory XML structure for each invoice, applies the cryptographic stamp, embeds the QR code, and helps you communicate them with the FATOORA portal. Your responsibility is to complete the one-time configuration that links your Zoho POS account to your FATOORA portal credentials, and to ensure that every invoice includes the mandatory fields ZATCA requires.
Invoice types and their treatment under Phase 2
Standard tax invoices (B2B): These are cleared invoices. These invoices need to be submitted to ZATCA before they are issued to the buyer. ZATCA validates and returns a cleared stamp, which is then embedded in the invoice.
Simplified tax invoices (B2C): These are reported invoices. These invoices can be generated and issued to customers with a QR code, but should be reported to ZATCA within 24 hours.
Mandatory fields required by ZATCA
Every invoice submitted through Zoho POS under Phase 2 must include the following:
Seller's name, address and VAT registration number
Buyer's name, address and VAT registration number (for B2B invoices)
Invoice date and time
Invoice sequence number
Line-item descriptions, quantities, and unit prices
Applicable VAT rate and VAT amount per line
Total amount inclusive and exclusive of VAT
QR code
Cryptographic stamp
Notes
Zoho POS auto-populates all the mandatory fields from your organization profile and inventory. Item Name, Customer details and Billing address should be available in Arabic language.
Integrate Zoho POS with FATOORA
ZATCA requires each point-of-sale application to be individually integrated with the FATOORA portal before it can submit invoices. This process generates a Cryptographic Stamp Identifier (CSID) for each device. The CSID is what authorizes that specific device to clear or report invoices with ZATCA.
You have to generate OTP in the Fatoora portal first to generate CSID in Zoho Invoice.
Notes
Before you link the FATOORA portal, make sure your Zoho POS organization profile contains your VAT registration number and a valid commercial registration number. These values are embedded in every invoice you generate.
Generate OTP in Fatoora portal
Log in to the Fatoora portal.
Click Onboard New Solution Unit/Device.
Enter the number of devices for which you want to generate OTP. If you're using only Zoho POS, enter 1.
Your OTP will be generated in the portal and you can copy or export it as a file.
Notes
The OTP generated from the Fatoora portal will be valid only for one hour.
Link Zoho POS with Fatoora portal
Navigate to Settings → Taxes & Compliance and select e-Invoicing.
Click Generate CSID.
Enter the OTP and click Generate CSID.
Notes
CSID is temporary, it will expire eventually. Once expired you have to renew it in the Fatoora portal by selecting the Renew Existing Cryptographic Stamp Identifier option. Then, go to Settings → Taxes & Compliance → e-Invoicing and click Renew CSID.
Push invoice to FATOORA
Once your account is linked with Fatoora portal, invoice/credit note will have the following statuses:
| Status | Description |
|---|---|
| Yet-to-be Pushed | The transaction is not yet pushed to the Fatoora portal. |
| Push Initiated | The push has been initiated to the Fatoora portal. |
| Pushed | The transaction has been pushed to the Fatoora portal successfully. |
| Failed | The transaction has not been pushed to the Fatoora portal. |
If the status of your invoice is Yet-to-be Pushed, you need to push the invoice to the Fatoora portal manually.
Navigate to Sales → Invoices and select the invoice that you want to push to the Fatoora portal.
Click Push to Fatoora.
Click Push again in the pop-up screen.
Bulk Push Invoices
Navigate to Sales → Invoices.
Select the invoices that you want to push to the Fatoora portal and select Push to Fatoora.
Notes
Invoices can be pushed to Fatoora even if they contain minor errors. These errors are displayed as warnings in the invoice and do not prevent the invoice from being submitted. The warnings will disappear once you resolve the reported issues.
Resubmit failed invoices
If the status of your invoice is failed, check the error message displayed under the ZATCA Status field to identify the reason for failure and rectify it before pushing it again to the Fatoora portal.
To resubmit failed invoices,
Navigate to Sales → Invoices.
Select the invoice with a Failed status and click Push to Fatoora.
Zoho POS will push the invoice again and the status will update once ZATCA responds.