ERPNext Implementation in Riyadh
ERPNext Implementation in Riyadh
In Riyadh a standard invoice is not valid until ZATCA has cleared it. Your system does not print an invoice and file it later; it asks the tax authority for permission first.
The 15 per cent rate, the Phase 2 integration model and the wave thresholds are set by the Zakat, Tax and Customs Authority (ZATCA) under the E-Invoicing (Fatoora) Regulation. Source checked July 2026.
Saudi Arabia has moved further into mandatory e-invoicing than anywhere else in the Gulf. Under ZATCA’s Fatoora regime, a Riyadh business does not simply issue a tax invoice: a standard (business-to-business) invoice must be sent to ZATCA in a defined UBL 2.1 XML format and cleared, with a cryptographic stamp and QR code, before it is valid, while a simplified (consumer) invoice must be reported within 24 hours. Saudi VAT sits at 15 per cent, three times the UAE rate. An ERPNext implementation in Riyadh is judged on one thing above all: whether it can produce a compliant e-invoice that ZATCA will clear, every time, without a human retyping anything.
What an ERPNext implementation in Riyadh has to solve
Start with clearance, because it changes what an invoice is. In most countries you issue an invoice and account for it. Under Phase 2 a standard invoice is not final until ZATCA has cleared it, so the act of invoicing now includes a live call to the tax authority and a response you have to handle. The system has to build the invoice with every mandatory field, sign it, submit it, and deal with a rejection there and then, because a rejected invoice is not a document you can send.
The second is the format, and it is unforgiving. ZATCA requires UBL 2.1 XML with an embedded PDF/A-3, a UUID, a cryptographic stamp, a sequential counter and mandatory Arabic. Each of those is a field that must be correct and present. A business used to a designed PDF discovers that the design is irrelevant and the structured data behind it is everything. The ERP has to hold that data cleanly at source, because there is no step where a person tidies it up before ZATCA sees it.
The third is the two invoice types and the 24-hour clock. Standard invoices are cleared in the moment; simplified consumer invoices are reported to ZATCA within 24 hours of issue. That means your point of sale and your accounting are on the same compliance obligation, and the reporting cannot fall behind. The system has to know which type each transaction is and meet the right deadline for each without someone watching a queue.
Clearance built into invoicing
Standard invoices signed, submitted to ZATCA and cleared as part of issuing them, with rejections handled at the point of sale rather than discovered at return time.
The exact ZATCA format
UBL 2.1 XML with the UUID, cryptographic stamp, sequential counter, QR code and Arabic that the Fatoora platform requires, held as structured data rather than dressed up in a PDF.
Standard and simplified, each on time
The system knowing whether a transaction is cleared in the moment or reported within 24 hours, and meeting the right obligation for each without a manual queue.
15% VAT that reconciles
Tax treatment resolved at the point of sale and carried into the cleared invoice, so the VAT return is drawn from the same records ZATCA already holds.
How we deliver in Riyadh
We start with the invoice itself, because in Saudi Arabia it is the compliance event. The full ZATCA field set, the standard and simplified flows, the clearance and reporting calls, and the handling of a rejection. This is not a bolt-on at the end; it is the spine of the implementation, because an invoice your system cannot get cleared is an invoice you cannot send.
Then the accounting around it: VAT treatment at the point of sale, the return drawn from the cleared invoices, and reconciliation against what ZATCA holds. Reporting comes last and is straightforward, because the data underneath it has already passed the strictest test there is, the tax authority’s own validation.
Typical delivery phases for a Riyadh implementation
| Phase | What happens | Why it comes here |
|---|---|---|
| 1. Discovery | Map your standard and simplified invoice flows, your point-of-sale and back-office systems, and the wave your VATable revenue puts you in. | ZATCA compliance is about the invoice. Knowing your flows and your deadline is where the project starts. |
| 2. Invoice and tax | The full ZATCA field set, VAT treatment at the point of sale, and the standard and simplified invoice types built and validated. | The invoice is the compliance event, so it is built and agreed before anything downstream. |
| 3. Clearance and reporting | Integration with the Fatoora platform for clearance of standard invoices and 24-hour reporting of simplified invoices, with rejection handling. | Needs a correct invoice underneath before the connection to ZATCA means anything. |
| 4. Return and reconciliation | The VAT return drawn from cleared invoices, and reconciliation against the records ZATCA already holds. | Reporting is trivial once the invoices have already passed ZATCA’s validation. |
We plan go-live around your ZATCA wave deadline, never into it, and we validate clearance in a test environment before a single real invoice depends on it. In Saudi Arabia an invoice that will not clear is not a bug to fix next sprint, it is a sale you cannot complete.
Are you ready? A short readiness check
- Can your current system output an invoice as ZATCA-compliant UBL 2.1 XML, not just a PDF?
- Do you know whether each sale is a standard invoice to be cleared or a simplified one to be reported?
- Is VAT treatment decided at the point of sale, or corrected later at return time?
- Do you know which ZATCA wave your VATable revenue places you in, and its deadline?
- When an invoice is rejected by ZATCA, does anyone find out before the customer does?
Four or five clear answers means you are close and the work is integration. Two or fewer means the invoice itself has to be rebuilt to ZATCA’s standard first, and given the wave deadlines that is work best started now rather than against the clock.
Frequently asked questions
Does ERPNext support ZATCA Phase 2 e-invoicing?
ERPNext produces invoices with the structured data ZATCA requires and integrates with the Fatoora platform for clearance of standard invoices and reporting of simplified invoices. The field set, the cryptographic stamp and the QR code are handled as part of issuing the invoice, not added afterward.
What is the difference between clearance and reporting?
A standard business-to-business invoice is cleared: it is submitted to ZATCA and is not valid until ZATCA returns it stamped. A simplified consumer invoice is reported to ZATCA within 24 hours of issue. The system has to know which is which and meet the right obligation for each.
Why does the format matter so much?
Because ZATCA validates the structured XML, not the printed page. A missing UUID, an absent Arabic field or a broken counter means the invoice is rejected. The ERP has to hold every required field correctly at source, since there is no manual tidy-up before ZATCA sees it.
How does the 15% VAT return work?
The return is drawn from the same cleared invoices ZATCA already holds, so it reconciles by design. Tax treatment decided at the point of sale flows into the cleared invoice and into the return without being re-entered.
How long does an ERPNext implementation take in Riyadh?
Ten to eighteen weeks for a business with standard and simplified flows and a real ZATCA integration, longer where the current invoice data is far from the required format. The integration itself is routine once the invoice underneath it is correct.
Key takeaways for Riyadh businesses
- In Saudi Arabia a standard invoice is not valid until ZATCA clears it. Invoicing now includes a live call to the tax authority.
- ZATCA validates structured UBL 2.1 XML, not a PDF. Every required field has to be correct at source, because nobody tidies it up before submission.
- Standard invoices are cleared in the moment; simplified ones are reported within 24 hours. The system has to meet both.
- At 15 per cent, Saudi VAT is three times the UAE rate. Getting the treatment and the invoice right is not optional here.
Preparing a Riyadh business for ZATCA Phase 2?
Start your ERPNext implementation with a team that will get your invoice cleared by ZATCA before it worries about anything else. KlyONIX Tech is a Frappe Certified Partner with offices in Pollachi and Chennai, delivering, onboarding and supporting clients in Saudi Arabia remotely.
The 15 per cent VAT rate, the Phase 2 (Integration) clearance and reporting model, the UBL 2.1 XML format requirements and the wave thresholds are set by the Zakat, Tax and Customs Authority (ZATCA) under the E-Invoicing (Fatoora) Regulation and its resolutions. Standard invoices are cleared through the Fatoora platform before issuance; simplified invoices are reported within 24 hours. Phase 2 is rolled out in waves by VATable revenue, reaching businesses above SAR 375,000 through 2026. These are national Saudi rules; Riyadh is the country’s commercial and government centre where the largest concentration of affected businesses sits. Source checked July 2026.
ERPNext in Jeddah · ERPNext in Abu Dhabi · ERPNext in Dubai · ERPNext implementation cost