Between 10 and 15 percent of Phase 2 invoice submissions fail. Not because the SAR amounts are wrong. Because of missing fields, schema deviations, or a broken hash chain that accounting software never warned you about.
That number comes from market reports and ZATCA implementation data from early Phase 2 rollouts. It means one in ten invoices you send has a real chance of rejection, and if it's a B2B invoice that didn't get cleared before you sent it to your customer, you have a compliance problem on top of a payment delay.
Wave 23 covers businesses with revenue above SAR 750,000. Wave 24, the final wave, covers every remaining VAT-registered business with revenue above SAR 375,000, with a June 30, 2026 deadline.
Every accounting platform in the Saudi market can generate a ZATCA-compliant invoice. Qoyod does it. Daftra does it. Wafeq does it. Zoho does it. That part of the problem is solved.
What none of them do is monitor whether you're actually staying compliant, detect patterns that could trigger an audit, tell you in plain language why invoice 47 was rejected, or automatically orchestrate from your POS through invoice generation through ZATCA submission through accounting reconciliation. Zero accounting platforms do that. Zero AI agent platforms in the market do it either.
This post is about what that gap means technically and what Awn's ZATCA agent actually does to close it.

What Phase 2 Actually Requires
Phase 1 (Generation Phase) required businesses to generate e-invoices and store them locally. Phase 2 is a completely different scope.
Phase 2 (Integration Phase) requires:
- Real-time API integration with ZATCA's Fatoora portal. Every B2B invoice must be sent to the portal and receive clearance before you can legally hand it to your customer.
- XML format (UBL 2.1) with ZATCA-specific extensions. The schema is precise. Any deviation triggers automatic rejection.
- Cryptographic stamp (CSID) — a digital certificate issued by ZATCA per business, embedded in every invoice at signing.
- UUID chain — each invoice has a unique identifier linked to the previous invoice.
- Previous Invoice Hash (PIH) — each invoice contains the hash of the prior invoice, creating a tamper-proof chain that ZATCA can verify.
- QR codes — embedded in every simplified (B2C) invoice.
Two invoice types, two compliance tracks:
| Invoice Type | Rule |
|---|---|
| Standard (B2B) | Must be cleared by ZATCA before sending to the customer. Uncleared invoices are not legally valid. |
| Simplified (B2C) | Must be reported to ZATCA within 24 hours of issuance. |
For a business running a POS system that generates hundreds of transactions a day, the 24-hour B2C reporting window creates a real operational constraint. Miss it regularly and you're accumulating violations.
The technical complexity is the reason most SMEs struggle. Getting a CSID, building XML output that exactly matches ZATCA's schema extensions, and handling the certificate renewal cycle requires specialized API knowledge that most businesses don't have in-house. See ZATCA Wave 23 and 24: Full Deadline Guide for a detailed timeline breakdown.
The Penalty Table and What People Miss
The penalties escalate by violation count, and they're designed to hurt by the third or fourth offense:
| Violation | Penalty |
|---|---|
| 1st offense | Warning |
| 2nd offense | SAR 1,000 |
| 3rd offense | SAR 5,000 |
| 4th offense | SAR 10,000 |
| 5th+ offense | SAR 40,000 |
| Non-issuance or non-archiving | SAR 5,000 to SAR 50,000 |
| Incorrect amendments | SAR 10,000 to SAR 50,000 |
Source: ZATCA official penalty schedule.
ZATCA Fines Exemption Initiative (extended through June 30, 2026): ZATCA announced on January 2, 2026 that financial penalties are being waived through June 2026. This means the financial risk from missing Wave 23 is lower than the table above implies — for now.
But the technical compliance requirement is not waived. B2B invoices must still be cleared through ZATCA before you can legally send them to customers. An uncleared invoice cannot be issued to your customer regardless of the grace period. The wave deadlines are real. Only the financial penalties are temporarily deferred.
The financial penalties are the visible part. The less visible consequences:
- VAT input tax claims get disallowed — meaning your effective operating costs go up.
- Audit probability increases — ZATCA can flag businesses with irregular compliance patterns.
- Payment delays — large enterprise clients who require compliant invoices won't process payment against non-compliant ones.
- Cascading operational disruption — if you hit multiple violations and the hash chain breaks, you have to fix compliance from the ground up before issuing any further valid invoices.
The PIH Chain Problem
One bad invoice breaks every invoice that comes after it
Phase 2 uses a continuous hash chain (PIH — Previous Invoice Hash). Each invoice contains the hash of the prior invoice. If invoice 103 has a validation error that causes rejection, invoice 104 through 10,000 are built on a broken chain. They're all invalid until you fix the problem at the source.
This is why the 10-15% rejection rate is so consequential. A single formatting error doesn't just reject one invoice. It breaks the compliance chain for everything that follows. Accounting software that generates and submits won't tell you this happened. You find out when you go looking, or when ZATCA sends a notice.
What Accounting Software Does (and Where It Stops)
Accounting platforms handle the technical integration correctly. They generate XML in UBL 2.1 format, apply the CSID, build the UUID chain, and submit to the Fatoora portal. For businesses with straightforward invoice volumes and consistent formats, this works.
The limitation is structural. Accounting software is reactive by design. It processes what you give it. It does not:
- Watch for patterns across your invoice history that might signal an upcoming compliance issue
- Alert you when a B2C invoice batch is approaching the 24-hour reporting window
- Explain in plain language why a specific invoice failed validation
- Connect your POS system to invoice generation to ZATCA submission to accounting reconciliation in one automated flow
- Answer the question "how many B2B invoices are pending clearance right now?" without building a custom report
The software waits for you to send it a transaction. Then it sends that transaction to ZATCA. That's the contract.
For a business with 50 invoices a month, this is manageable. For a business with 500 daily POS transactions across multiple locations, reactive processing means a rejection gets discovered late, the chain breaks, and the fix requires manual intervention at each step.
What an AI Agent Does That Accounting Software Can't
The difference is the direction of information flow. Accounting software pulls when you push. An AI agent monitors continuously and pushes when something needs your attention.
| Capability | Manual / Spreadsheet | Accounting Software | Awn AI Agent |
|---|---|---|---|
| Invoice generation (XML/UBL 2.1) | Manual entry | Automated | Automated |
| Submit to Fatoora portal | Manual upload if remembered | Automated | Automated |
| Pre-submission validation | None | Basic format checks | Full field and chain validation |
| Continuous compliance monitoring | None | None | 24/7 active monitoring |
| Anomaly detection across invoice patterns | None | None | Proactive, before rejection |
| Alerts before deadline windows close | None | None | Proactive with lead time |
| Rejection explanation in plain language | None | Error code only | Full explanation in Arabic or English |
| Natural language queries on invoice data | None | None | Ask anything, get an answer |
| POS to ZATCA to accounting orchestration | Fully manual | Partial, limited | Fully automated end-to-end |
The three capabilities that matter most in practice:
Proactive monitoring. An AI agent watches your compliance status the way a good accountant would, except continuously and without needing to be asked. If a B2C invoice batch is approaching the 24-hour reporting window without being reported, the agent flags it before the window closes. If you missed the CSID renewal timeline, the agent catches it before ZATCA rejects your next submission.
Anomaly detection. This is where accounting software has a structural gap. The software validates individual invoices against the ZATCA schema. It does not analyze patterns across your invoice history to identify issues that aren't validation errors. An AI agent can spot that your VAT calculation methodology has shifted in a way that could trigger an audit, or that your invoice-to-clearance ratio for B2B transactions has dropped, before any external entity notices.
Natural language queries. Instead of building reports and filtering data, you ask: "Show me rejected invoices from last month with the rejection reason." "How many B2B invoices are waiting for clearance?" "Which of my locations has the highest B2C reporting delay?" The agent answers in Arabic or English with actual data.
How Awn's ZATCA Agent Works in Practice
Awn has production-grade ZATCA integration. The core capabilities:
generate_simplified_invoicefor B2C transactionsgenerate_standard_invoicefor B2B transactionsgenerate_qr_codefor simplified invoice QR requirementsvalidate_invoice— full validation before submission, not after rejection
That last one is significant. Most platforms submit and handle rejection after the fact. Awn validates before submission, which means errors get caught before they reach ZATCA and before the hash chain gets broken.
The AI agent layer adds the orchestration and monitoring that turns these functions into a system that runs without manual intervention.
Setup through conversation
You don't write code. You tell the agent about your business: "We run a retail chain in Riyadh, mostly B2C transactions through [POS system], some B2B supplier invoices." The agent asks the right follow-up questions and configures the integration automatically. Setup takes minutes, not weeks.
End-to-end automated workflow
Once configured, the full flow runs automatically:
- POS registers a sale
- Awn agent generates the invoice in correct XML/UBL 2.1 format with CSID
- Validates the invoice fully before touching the Fatoora portal
- Submits for clearance (B2B) or reports within the 24-hour window (B2C)
- Sends the compliant invoice to your customer
- Reconciles with your accounting system
- Flags any anomaly immediately, before it becomes a chain problem
At every step, if something goes wrong, you get an alert with a plain-language explanation of what happened and what needs to be fixed. Not an error code. An explanation.
Arabic-first queries
The agent supports natural language queries in Arabic. "فيه فواتير مرفوضة هذا الشهر؟" — "Are there rejected invoices this month?" — gets you a direct answer with the invoice details, rejection reasons, and suggested fixes.
The ZATCA Subsidy: Some Businesses Get This for Free
100% cashback for eligible SMEs
ZATCA offers a full cost-recovery program for businesses with annual revenue between SAR 2 million and SAR 15 million. The subsidy covers ZATCA-compliant software costs at 100%. For businesses in this revenue range, solutions like Awn AI are effectively free under this program.
Check your eligibility directly through the ZATCA official portal at zatca.gov.sa. The program has specific application requirements and approval timelines, so applying early makes sense.
The Saudi e-invoicing market is growing from $165 million in 2025 to $594 million by 2033 at 15.3% CAGR (IMARC Group). Wave 23 and Wave 24 are the largest enforcement events yet, pulling hundreds of thousands of businesses into mandatory real-time compliance in under six months.
For businesses that entered Phase 1 without major issues, Phase 2 is a different category of challenge. The API integration, the hash chain, the 24-hour reporting windows, and the real-time clearance requirement all create failure modes that accounting software isn't designed to handle proactively.
The Timeline Is Now
Wave 23 deadline: March 31, 2026. Wave 24 deadline: June 30, 2026.
The ZATCA agent from Awn takes minutes to configure and connects to your existing POS and accounting systems through Pipedream's 2,800+ integrations. You get continuous compliance monitoring, pre-submission validation that catches errors before they break the chain, and full natural language access to your invoice data in Arabic and English.
The deadline is real. The setup is fast.
Zero other AI agent platforms offer ZATCA compliance. The accounting software you're using today generates and submits. It doesn't watch, detect, or orchestrate.



