Free ZATCA Phase 2 accounting software for Saudi businesses
A billing app that produces compliant Phase 2 e-invoices — XML, cryptographic stamp, QR and Fatoora onboarding — free for your first year, with no cap on invoices.
Updated 21 August 2026
Phase 2 turned e-invoicing in Saudi Arabia from a formatting rule into an integration problem. An invoice is no longer a PDF with a QR code on it — it is a UBL 2.1 XML document, hashed into a chain, cryptographically stamped with a certificate ZATCA issues to your device, and either reported to ZATCA after the fact or cleared by ZATCA before you hand it to the customer.
That is a lot of machinery for a business whose actual problem is selling things. It is also why Phase 2 compliance became something vendors charge a monthly fee for.
What Fatoza does about it
The billing app is free for your first year, and Phase 2 is included in that year rather than sold on top of it. There is no separate compliance module and no per-invoice charge.
The reasoning is not generosity. Phase 2 compliance costs us close to nothing per customer: the certificate is issued by ZATCA, the onboarding runs against ZATCA’s own endpoints, and the XML generation is code we wrote once. Charging a monthly fee for it would be charging you for the law. What genuinely costs money is a person answering the phone when an invoice gets rejected at 4pm on a filing deadline — so that is what the paid plans are for.
What it actually generates
- UBL 2.1 XML for every invoice, standard and simplified, with the invoice counter value and previous-invoice hash that make the chain verifiable.
- A cryptographic stamp using the certificate obtained during onboarding, so the document proves it came from your device.
- A TLV-encoded, Base64 QR code carrying the seller name, VAT number, timestamp, total and VAT amount — the fields a ZATCA inspector scans for.
- Bilingual print output, Arabic and English on the same document.
Standard vs simplified, and why it matters to your day
A simplified invoice — B2C, the shop counter — is stamped and given to the customer immediately, then reported to ZATCA within 24 hours. That is the case where offline matters: your till does not stop because the connection did.
A standard invoice — B2B, with the buyer’s VAT number on it — must be cleared by ZATCA before you give it to the buyer. There is no offline path around that, for any vendor. Fatoza queues the document and clears it as soon as the connection is back, but the invoice is not valid to hand over until it has been.
The distinction is the single most common thing businesses get wrong when they switch software, which is why the app labels it on the invoice screen rather than burying it in settings.
Getting onboarded
Onboarding is a one-time exchange with ZATCA that ends with a certificate on your device. It needs your VAT registration number, a one-time password generated in the Fatoora portal, and about ten minutes. The Fatoora portal walkthrough covers it screen by screen, including what to do when the OTP expires — which it will, because it is short-lived by design.
Who this is not for
If you already run SAP or a well-configured Odoo with a working Phase 2 connector, switching your entire ledger to save a subscription fee is a bad trade. Look at the migration tools or the free standalone tools instead — those work next to what you have.
Frequently asked questions
Does the free plan limit how many invoices I can issue?
No. The free plan is limited by time — the first year — not by invoice count. A shop issuing four hundred invoices a day pays the same as one issuing four.
Is Fatoza approved or certified by ZATCA?
No vendor is. ZATCA does not certify accounting software. It publishes a compliance SDK and an onboarding process that a solution has to pass, and Fatoza passes it. Any vendor advertising itself as ZATCA-certified is describing something that does not exist.
Can I use it without an internet connection?
Yes for issuing. Simplified invoices are stamped and stored locally and reported to ZATCA within 24 hours, which is what the regulation asks for. Standard invoices need clearance before you hand them over, so those need a connection at the moment of issue.
What happens to my data if I stop paying?
It stays a local SQLite file on your machine, exportable at any time. We do not hold invoices hostage.
Related
People also search for
free zatca phase 2 accounting software · zatca approved billing software free · e invoicing software saudi arabia free · fatoora integration software · zatca compliant invoice generator