Saudi Arabia¶
Configuration¶
Install the following modules to get all the features of the Saudi Arabian localization:
Name |
Technical name |
Description |
---|---|---|
Saudi Arabia - Accounting |
|
Default fiscal localization package |
Saudi Arabia - E-invoicing |
|
ZATCA e-invoices implementation |
Saudi Arabia - E-invoicing (Simplified) |
|
ZATCA simplified e-invoices implementation (Point of Sale) |
Saudi Arabia - Point of Sale |
|
Point of Sale compliance |
ZATCA e-invoices¶
The ZATCA e-invoicing system is designed to streamline and digitize the invoicing process for businesses operating in Saudi Arabia.
See also
Company information¶
Go to Update info, and ensure the following company information is complete and up-to-date.
, clickThe full Company Name.
All relevant Address fields, including the Building Number and Plot Identification (four digits each).
Select an enterprise Identification Scheme. It is recommended to use the Commercial Registration Number.
Enter the Identification Number for the selected Identification Scheme.
The VAT number.
Ensure the Currency is set to SAR.
Note
It is also necessary to fill out similar information for partner companies.
Simulation mode¶
Important
It is strongly recommended to thoroughly test all invoicing workflows using the Fatoora simulation portal first, as any invoice submitted to the regular Fatoora portal will be accounted for, which could lead to fines and penalties.
Fatoora simulation portal¶
Log in on the Fatoora portal using the company’s ZATCA credentials. Then, click the Fatoora Simulation Portal button to switch to the simulation portal.
ZATCA API integration¶
On Odoo, go to ZATCA API Integration, select the Simulation (Pre-Production) API mode and click Save.
. UnderSales journals¶
Each sales journal on Odoo needs to be configured. To do so, go to ZATCA tab. Once there, enter any Serial Number to identify the journal.
, open any sales journal (e.g., Customer Invoices), and go to theNote
The same serial number can be used for all of the company’s sales journals.
Next, click Onboard Journal. In the dialog box, providing an OTP code is required. To retrieve it, open the Fatoora simulation portal, click Onboard New Solution Unit/Device, choose the number of OTP codes to generate (one per journal to configure), and click Generate OTP Code. Copy an OTP code, it into the dialog box on Odoo, and click Request.
Note
OTP codes expire after one hour.
Tip
If any issue occurs during onboarding, click Regenerate CSR to start again.
Testing¶
When confirming an invoice, there is now an option to process the invoice, sending it directly the Fatoora simulation portal. Odoo displays the portal’s response after each submission. Only rejected invoices can be reset to draft and edited on Odoo. Furthermore, at the end of each day, Odoo sends all unprocessed invoices to the portal.
Tip
Testing all invoicing workflows, preferably with real invoices and for a reasonable amount of time, is recommended.
Compare the invoices received statistics page on the Fatoora simulation portal with the list of invoices on Odoo to ensure both align.
Taxes¶
When using a 0% tax in a customer invoice, it is necessary to specify the reason behind such a rate. To configure taxes, go to Advanced Options, select an Exemption Reason Code and click Save.
, and open the tax to edit. Under theWhen using retention or withholding an amount in a customer invoice, the tax used to retain the amount needs to be specified.
Production mode¶
When ready for production, change the API mode to Production and click Save.
Warning
Setting the API mode to Production is irreversible.
The sales journals initially linked to the simulation portal now needs to be linked to the regular portal. To do so, onboard the journals again, ensuring to use the regular Fatoora portal this time.