ZATCA penalties: the violations that actually happen in shops
Most e-invoicing violations are not deliberate. They are a QR that stopped scanning, a device whose certificate expired, or a week of rejected invoices nobody looked at. Here is how each one happens and how to catch it early.
4 min read
ZATCA publishes a schedule of penalties for e-invoicing violations, and the amounts escalate with repetition. Rather than restate figures that change — check the authority's current schedule for those — this article covers the violations we actually see in Saudi shops, because almost none of them are deliberate.
1. The QR code stopped scanning
How it happens: a printer is replaced, the paper width changes from 80mm to 58mm, and the QR is now rendered at a size that will not scan. Nobody notices because nobody scans their own receipts.
How to catch it: scan one receipt per terminal, once a week, with a phone. Thirty seconds. Put it on the opening checklist.
2. A device certificate expired
How it happens: a production CSID has a validity period. It expires on an ordinary Tuesday, and the terminal either stops signing or — worse — keeps printing something that is not a valid invoice.
How to catch it: your back office should list every device with its certificate expiry. If it does not, keep a spreadsheet. Renew 30 days before, not on the day.
3. Invoices rejected and nobody looked
How it happens: the system reports invoices, ZATCA rejects some, and the rejections go into a log that no human opens. A month later there are 800 rejected invoices.
How to catch it: a weekly five-minute check of the acceptance dashboard. What you want to see is a rejection count of zero. What you must never see is a system that does not distinguish rejected from accepted.
4. The wrong invoice type
How it happens: a business customer is issued a simplified invoice. They cannot reclaim the VAT, they complain months later, and correcting it requires a credit note and a re-issue.
How to catch it: train cashiers to ask "is this for a company?" on any sale above a threshold you set. See oursimplified vs standard guide.
5. A new terminal issuing unsigned invoices
How it happens: a till is added during a busy period and put into service before it is onboarded. It prints receipts that look right and are not valid invoices.
How to catch it: a rule that a terminal does not take a customer until its certificate status shows production. Wameed blocks issuance on an un-onboarded device rather than printing something invalid — ask whether yours does.
6. Unreported invoices past 24 hours
How it happens: an outage, or a sync that silently stopped, and the queue of unreported invoices grows.
How to catch it: the pending-report count should be on the terminal screen where a cashier can see it, not buried in a settings page.
7. Details that do not match the registration
How it happens: the shop's trading name is on the invoice instead of the legal name from the commercial registration, or the VAT number has a typo that was never noticed because the system accepted it.
How to catch it: check once, carefully, against the actual documents. Then it is done forever.
The weekly five-minute check
Put this in a recurring calendar reminder:
- Scan one printed receipt per terminal — does the QR read?
- Open the acceptance dashboard — is the rejection count zero?
- Check the unreported count — is it zero?
- Check certificate expiry dates — anything inside 30 days?
- Spot-check one B2B invoice from the week — buyer VAT number present and cleared?
Five minutes. It prevents essentially every violation in this article.
If you discover a problem
Do not quietly fix it forward and hope. The correct path is usually to correct the affected documents — credit notes and re-issues where required — and to be able to show what happened and when it was fixed. An error found and corrected by the taxpayer is a different conversation from an error found by an auditor.
Talk to your tax adviser about anything affecting more than a handful of invoices.
What good software does for you
- Blocks issuance on an un-onboarded or expired device rather than printing an invalid document
- Shows accepted, warned and rejected as three separate numbers
- Surfaces the unreported count where staff can see it
- Tracks certificate expiry and warns ahead
- Previews the receipt so you can see what the customer sees
That is what Wameed does; see theZATCA page.
Nothing here is legal or tax advice, and penalty amounts come from ZATCA's published schedule, not from this page. Confirm your position with the authority or your adviser.
- #غرامات
- #penalties
- #ZATCA
- #compliance
Ask about your own shop
Thirty minutes on your products, your tax setup and your hardware — not a slide deck.
Keep reading
5 min read
ZATCA Phase 2: the complete guide for Saudi merchants
What Phase 2 actually requires of your till, in plain language: the XML, the cryptographic stamp, the hash chain, clearance versus reporting, and the eight things to check before your wave arrives.
4 min read
Simplified vs standard tax invoice: which one are you issuing?
Getting this wrong is the most common Phase 2 mistake. The two invoice types follow different flows, carry different fields and have different deadlines — and your POS must choose correctly at the counter.
4 min read
The ZATCA QR code: what is inside it and how to check yours
The square on your receipt is a signed data structure, not a link. Here is exactly what it encodes, why Phase 2 added three fields to it, and how to verify your own printer is producing a valid one.

