AWRA OpsHub Search

For Saudi Arabia

ZATCA clears the invoice. Everything that happens before it is still yours to run.

Phase 2 quietly ended the all-in-one ERP pitch in this market. A standard B2B tax invoice is now validated and stamped by the authority before you are allowed to issue it, which means your system is not the system of record for your own document — and with the twenty-fourth wave bringing the threshold down to the VAT registration threshold itself, that is not a large-enterprise problem any more. Every VAT-registered business in the Kingdom now runs more than one system. We are not here to argue you out of that. We are here about the part nobody else wants: the operation upstream of the invoice.

Currency
Riyal as a base preset, pegged — so the exposure sits on what you import in, not on what you sell in.
Tax
15% VAT preset with net, tax and gross split at capture. No ZATCA integration — clearance stays with an accredited provider.
Language
English only, no right-to-left layout. This rules us out more often here than anywhere else in the Gulf.
Support
Nairobi, in English, on the same clock — Riyadh and Nairobi are both UTC+3.

The fact that reshapes every shortlist

The seam ZATCA put through the middle of every system in the Kingdom

Phase 1 asked you to generate a structured invoice. Phase 2 asked you to hand it over. For a standard tax invoice — the B2B one — the document goes to ZATCA's Fatoora platform as signed UBL 2.1 XML, is validated in real time, comes back carrying the authority's own cryptographic stamp, and only then may be issued to your customer. A simplified B2C invoice is stamped on your side and reported within twenty-four hours instead. Either way, something that used to happen entirely inside your system now happens outside it, and the identifiers that come back are the authoritative ones.

  1. Before

    Your system builds it

    Customer, lines, quantities, net, tax and gross — plus the requisition, the purchase order, the delivery note and the stock movement that stand behind them. This part was always yours and it still is. It is also where the errors that get an invoice rejected are made.

  2. The call

    Fatoora clears it

    Signed XML goes to the platform from an onboarded generation unit holding its own certificate. ZATCA validates, stamps and returns the cleared document. Until it comes back you do not have an invoice to send — which makes this a live dependency in your sales process, not a background filing job.

  3. After

    New identifiers come back

    A cleared XML, a UUID, a hash and a QR code. These now identify that sale to the authority, and every one of them was generated outside the system your operations team actually works in.

Our position on this is narrow and firm: we are not your ZATCA layer and we are not going to become one. What we will not do is pretend the seam is not there. The discipline that matters is that whatever comes back gets written onto our transaction record and the cleared document gets attached to it — because the moment that identifier lives on the sale, "show me every sale this month with no clearance record" is a report you can run on a Tuesday rather than a reconstruction you attempt during an audit.

Five questions worth putting to every vendor on your list — including us

  1. When our e-invoicing provider clears an invoice, does the UUID and hash come back and land on the sales record in our operations system — or only in the provider's portal?
  2. Can we produce, today, a list of sales with no clearance identifier against them? How long does it take?
  3. If clearance fails at three in the afternoon, who finds out, and does anything stop — or does the order ship anyway?
  4. Which system does the warehouse team actually work in, and does the invoice status reach them at all?
  5. When we change e-invoicing providers in two years, what breaks — and does the history come with us?

What we keep being called about

Four costs that surface late, and only in hindsight

None of these are compliance problems, which is exactly why they go unattended — the compliance work is loud and has a deadline, and this work is quiet and does not.

One sale, two systems of record

Your operations system thinks it raised an invoice. ZATCA holds the one that legally exists. Between them sits a reconciliation nobody owns, and it stays invisible for exactly as long as nothing goes wrong.

A thousand kilometres between your own branches

Riyadh to Jeddah is further than most European countries are wide, and Dammam is a day the other way. Stock in three regions with no in-transit visibility is not a reporting gap, it is three businesses being run as one on trust.

Materials that leave the store and become a memory

Delivered to site, signed for on a phone or not at all, consumed against a job that gets costed at month end from someone's recollection. The variance is real and it is discovered far too late to act on.

A job whose true cost only exists after it finishes

Materials in one system, subcontractors in another, plant hire on an email, labour cost in payroll. The loss-making job is identifiable — just not until the retention conversation, by which point the argument is about blame rather than money.

Where the edges actually fall

Three seams, and what is left in the middle

ZATCA is the seam everyone can see. There are two more, and a Saudi operation of any size is already living with all three. It is worth drawing them explicitly, because the vendor conversation gets much shorter once everyone agrees where the edges are.

The fiscal seam Seam 01

Across the seam

Cleared XML, cryptographic stamping, certificate onboarding for each generation unit, the Fatoora API and its failure modes, VAT returns, Zakat and corporate income tax.

Who supplies it

A ZATCA-accredited e-invoicing provider or a certified local package, plus your tax adviser. Not us — no part of this is built, and we say so on the record below.

The commercial seam Seam 02

Across the seam

Interim payment applications, bill-of-quantities remeasurement, retention held and released, variations, and subcontractor back-charges. The contractor's valuation cycle.

Who supplies it

Your quantity surveyor's measurement package, or the main contractor's own portal, which on a large project you will be made to use regardless of what you bought.

The workforce seam Seam 03

Across the seam

Mudad wage files, GOSI contributions, Qiwa contract registration, Nitaqat banding and iqama renewals. Worth understanding as an operations dependency, not a payroll chore: miss a deadline here and establishment services can be frozen — which means no work permits and no renewals until it is cleared.

Who supplies it

A Saudi payroll bureau or an HR platform that lives inside those government portals. Our maintained statutory payroll engine covers Kenya only.

What is left in the middle, and it is not the leftovers

Strip out all three and what remains is the operation itself — the part that actually consumes your working capital and the part that, in our experience of this market, is running on a spreadsheet and a foreman's memory while everyone's attention is on compliance.

  • Everything you buy — requisition, approval that refuses rather than warns, purchase order, receipt, three-way match, supplier payment.
  • Everything you hold — stock across a central store, site stores, branches and vans, with governed transfers, blind counts and valued variance.
  • Everything it cost — freight, customs, clearing and handling landed onto the unit rather than absorbed into an overhead line nobody can allocate afterwards.
  • Everything you own — plant, equipment and tools under named custody, checked out and back in, with the maintenance record attached.
  • Everything it is attributable to — project, cost centre and department carried across purchases, stock issues, expenses and payroll cost.
  • Everything as evidence — documents attached to the transaction they belong to, checksummed and access-logged, so an audit is retrieval rather than archaeology.

The seams are the product as much as the middle is. A system that cannot accept an identifier from the fiscal layer, or cannot export cost in the shape your QS needs, has not avoided the seam — it has just moved the work onto a person, and that person is usually one finance manager with a spreadsheet and no cover.

The middle, in detail

What you would actually be buying

Each links to a fuller tour. Everything on the far side of the three seams — clearance, valuation, wage files — stays with the provider who owns it, and the full boundary is drawn below.

Scope, stated plainly

ZATCA, Arabic, Mudad, retention

This is the longest right-hand column of any market page we publish, and we are not going to bury it below a demo request. Read it before you spend an hour with us.

Scope in Saudi Arabia, stated before the demo

Running in the product today

  • The riyal and a 15% VAT preset ship built in, with net, tax and gross separated line by line on purchases as well as sales, at the point of capture.
  • Stock across as many locations as you have — regional warehouses, site stores, branches and vans — with governed transfers, in-transit visibility, batch and expiry tracking, blind counts and valued variance.
  • Landed cost on the consignment, so freight, duty, clearing and handling reach the unit cost instead of an overhead line.
  • Procurement that refuses above a threshold, with RFQ comparison, three-way matching, and supplier documents whose expiry dates the system watches.
  • An asset register with named custody — check-out and check-in, condition, maintenance history and depreciation — across plant, equipment, tools and vehicles.
  • Project, cost-centre and department attribution carried across purchases, stock issues, expenses and payroll cost, with documents attached to the transactions that justify them.

Not built — and this list is longer here than in most markets

  • No ZATCA integration of any kind. No onboarded generation unit, no certificate, no UBL 2.1 output, no cryptographic stamping, no clearance call and no reporting call to Fatoora. Our only fiscal e-invoicing integration anywhere is Kenya's eTIMS and it does not travel. This is first on the list because it is the largest gap on the page.
  • No Arabic interface and no right-to-left layout. English only, documents included. Be careful reading across from the UAE here — Arabic is the working language on a great many Saudi sites and finance floors, and this disqualifies us more often in the Kingdom than it does in Dubai.
  • No Mudad wage file, no GOSI, no Qiwa, no Nitaqat tracking. Our maintained statutory payroll engine covers Kenya only. Given that a missed deadline in these systems can freeze establishment services, this belongs with a provider who lives in those portals — not with us.
  • No interim payment applications, no retention, no BOQ remeasurement. Our project module is budget, time and cost. A contractor's valuation cycle is a measurement package and we are not one, which is why the contracting section above draws that line rather than blurring it.
  • No Zakat or corporate income tax computation and no statutory accounts. We do not calculate, apportion or file anything. We hold the costed records a computation is built from, and your adviser does the rest.
  • No customs or single-window integration. No connection to Fasah or any port community system. Customs paperwork is attached to the consignment as evidence, not exchanged as data.

Six items, and three of them are things a Riyadh vendor would ship as standard. Read that as a purchase decision rather than a disclaimer. If ZATCA clearance or a Mudad file has to come from the same box as your stock system, buy locally — we will say so on the first call and we will not try to talk you round. If your compliance layer is already settled and what is actually costing you money is materials, plant, cost and evidence, then the left-hand column is the whole conversation.

How this starts

Three moves, in this order

01

Fix the fiscal layer first, and confirm your own wave

Settle who provides ZATCA clearance and check your obligation directly with ZATCA rather than with any vendor — waves are notified to taxpayers individually. Nothing below should be decided until that is answered, and no software company should be the one answering it.

02

Draw the three seams on one page

For each seam: name the system, name the human owner, and name the field that carries an identifier across. Most of the pain we are called in for is a seam that was never drawn, so nobody noticed it had no owner. This costs an afternoon and it is the highest-return hour of the whole project.

03

Then run one real thing through the middle

One live job or one real month, with materials received on site, plant issued against it, purchases matched and cost attributed. If the true position at the end does not tell you something you did not already know, stop — you do not have a system problem.

Questions we are asked here

Answered in full, including the ones that lose us the deal

Do you integrate with ZATCA or the Fatoora platform?

No, and there is no partial answer hiding behind that. We do not onboard a generation unit, we hold no cryptographic certificate, we do not produce UBL 2.1 XML, we do not apply a stamp, and we make no clearance or reporting call to Fatoora. Our only fiscal e-invoicing integration anywhere in the product is Kenya's eTIMS, and it is not portable to another regime. Because the integration phase now reaches essentially every VAT-registered business in the Kingdom, this means AWRA cannot be the system that issues your tax invoices in Saudi Arabia — full stop. Confirm the scope and timing of your own obligation with ZATCA or your tax adviser; waves are notified to taxpayers directly and a vendor is the wrong source for it.

Then what does the architecture actually look like?

A ZATCA-accredited provider or a certified local package owns document issuance and clearance. AWRA runs the operation upstream and around it — procurement, stock, site materials, plant, cost and evidence. The seam is the part worth negotiating: we would insist that the UUID, hash and clearance status come back and get written onto our sales record, and that the cleared document is attached to the transaction. That single discipline is what turns "are all our sales cleared?" from an audit-week reconstruction into a report. It is also the question to put to whichever provider you pick, because not all of them will hand the identifier back cleanly, and finding that out afterwards is expensive.

Does it handle the riyal and 15% VAT?

The riyal ships as a base currency preset and 15% ships as a built-in VAT rate, with net, tax and gross separated on every sales and purchase line at the point of capture. Two honest caveats. First, we ship one maintained preset rather than a maintained rate history, and we do not interpret zero-rating, exemption or reverse-charge positions — a preset is a default you own, and the treatment is a question for ZATCA or your adviser. Second, the peg to the dollar means the riyal is rarely where your currency risk lives; it sits on what you import in, which is why foreign-currency purchases here stay in their own currency at the rate actually applied rather than a standing monthly one.

Is the interface available in Arabic?

No — English only, no right-to-left layout, and documents produced in English. We want to be blunt rather than reassuring, because this is the single most common reason we are the wrong fit in this market. In the UAE the commercial floor overwhelmingly already runs in English and it is usually a non-issue. In Saudi Arabia that is much less reliably true: Arabic is the working language for a large proportion of site supervisors, storekeepers and finance staff, and you may be expected to issue Arabic-language documents. Test it with the people who would key transactions, not with your finance director, and treat a "they will manage" as a no.

Do you produce a Mudad or WPS file, or handle GOSI and Nitaqat?

No to all of it. Our maintained statutory payroll engine covers Kenya only, so no wage file is produced for Mudad or the Wage Protection System, no GOSI contribution is calculated or remitted, no contract is registered on Qiwa, and no Nitaqat banding is tracked. This one deserves emphasis over the usual payroll disclaimer, because in Saudi Arabia these are not merely financial obligations — a missed GOSI or wage deadline can freeze services tied to your establishment, including work permits and iqama renewals, which stops hiring rather than just costing a penalty. Keep that with a Saudi payroll bureau or an HR platform wired into those portals. What travels is the employee side: records, contracts, leave with balances, and payroll cost allocated to projects and cost centres.

We are a contractor — do you handle payment applications and retention?

No, and we would rather lose the deal on this sentence than in month four. There is no interim payment application, no bill-of-quantities remeasurement, no retention held and released against a certificate, no variation register and no subcontractor back-charge workflow. Our project module is budget, hours, milestones, cost rates and cost attribution — the cost side, not the valuation side. What we do cover properly is the half that usually leaks: materials procured and received against a job, site stores as real stock locations, plant and tools under named custody, consumption attributed to the project, and offline capture that works where there is no signal. Most contractors we work with keep a measurement package for valuation and use us underneath it, which is a stable split as long as the export between them is agreed at the start.

Where does support come from, and does the working week work?

Nairobi, with remote onboarding and live training in English — and unusually, no time difference at all: Riyadh and Nairobi are both UTC+3, so your working hours and ours are the same hours. The working week does differ, and it is configured rather than assumed: set Friday and Saturday as your non-working days once and the organization's leave arithmetic, workflow due dates and escalation timers, and helpdesk response clocks all read that setting, along with the public holidays you enter. An approval deadline will not fall due on your weekend because the system assumed a Saturday–Sunday one.

Bring one job, or one month, and we will draw the seams with you

Come with a real project or a real month of purchasing. We will map the three seams against whatever you already run, show you the middle working on your own numbers, and tell you plainly if a Riyadh vendor is the better buy. That last part happens more often than you would expect from a sales page.