Skip to content

Tax & compliance · 8 min read

ZATCA Phase 2 on Shopify: be ready by 1 February 2027.

Saudi Arabia just halved the e-invoicing threshold. If your store sells in the Kingdom and is VAT registered, every order may soon need a stamped invoice sent to ZATCA. Here's what that means for a Shopify store, what Shopify won't do for you, and the exact steps to be ready.

FA

Fahad Azhar

Shopify & full-stack developer ·

In 30 seconds

The whole article, in four cards.

  1. 01

    Wave 25 = SAR 187,500

    VAT-taxable sales over SAR 187,500 in any year 2022–2025 puts you in. Deadline: 1 February 2027.

  2. 02

    Every order goes to ZATCA

    Consumer invoices reported within 24 hours. Business invoices cleared before the buyer gets them.

  3. 03

    Shopify won't do it

    It charges VAT but doesn't sign, stamp or send invoices. You need an onboarded app or integration.

  4. 04

    Refunds are the trap

    Invoices can't be changed. Every refund or order edit needs a credit or debit note too.

Who's in Wave 25, and by when

On 24 July 2026, ZATCA announced Wave 25 of the Integration Phase (Phase 2). It covers every taxpayer whose revenue subject to VAT exceeded SAR 187,500 in 2022, 2023, 2024 or 2025. They must connect their e-invoicing solution to ZATCA's Fatoora platform by 1 February 2027.

That's half the threshold of Wave 24 (SAR 375,000, due 30 June 2026). One good year is enough: a store that crossed SAR 187,500 once, in 2022, is in. ZATCA notifies each business directly, but the date is already set, and integration means testing with ZATCA before you go live.

Not tax advice

This is how the rules apply to a Shopify store, from ZATCA's own documents. Confirm your wave and obligations with your tax advisor.

What Phase 2 means for every order

Phase 1 only asked for electronic invoices. Phase 2 makes every invoice travel to ZATCA. On a Shopify store, that splits by who's buying:

Consumers (B2C)

Report within 24 hours

Your system signs a simplified tax invoice, adds the Phase 2 QR code, gives it to the customer, then reports the XML to ZATCA within 24 hours.

Businesses (B2B)

Clear before you send

A tax invoice goes to ZATCA first. ZATCA validates it, adds its stamp and QR code, and sends it back. Only that cleared invoice is valid.

Three rules catch Shopify stores out:

  • Invoices can't be changed or deleted. To cancel one, you issue a credit note and, if needed, a new invoice. Every refund, partial refund and order edit becomes a credit or debit note pointing to the original invoice, reported or cleared just like it.
  • Every invoicing device is registered. Each solution or device gets its own cryptographic stamp identifier (CSID) through an OTP in your Fatoora portal. ZATCA says every device issuing invoices under your VAT number should be registered, POS terminals included.
  • The invoice must be in Arabic. English can sit alongside it.

Why Shopify won't do it for you

Shopify calculates and charges VAT. For Saudi Arabia, its tax settings are manual rates you set yourself. It doesn't sign an XML invoice, add the Phase 2 QR code or talk to Fatoora, and it can't: the onboarding is tied to your VAT number, your Fatoora login and your CSID. So something else has to listen to your orders and do the ZATCA part.

Shopify charges the VAT. Getting the invoice to ZATCA is your job, on every order, refund and edit.

Where apps fall short

A handful of Shopify apps now offer ZATCA Phase 2. Several are brand new: the one I looked at today launched three days after Wave 25 was announced and has no reviews yet. Another invoicing app lists Saudi support as still in development. New isn't bad, but test what the listing doesn't promise:

  • Order edits. Refunds to credit notes is common. Edits after payment (an item removed, a quantity changed) usually aren't mentioned.
  • B2B clearance. Reporting consumer invoices is the easy half. A business buyer needs a cleared invoice with their VAT number on it.
  • POS. In-store sales need the same onboarded solution, device by device.
  • CSID renewal and outages. Who renews the certificate, and what happens to invoices if it lapses or Fatoora is down? ZATCA says to keep re-submitting until it responds, so nothing can be silently dropped.

Am I ready?

Answer six questions. You'll see your wave, what you must have by the deadline and the gaps in your current setup.

ZATCA readiness checker · runs in your browser

Six questions. Nothing is sent anywhere.

VAT registered in Saudi Arabia?

Highest yearly VAT-taxable sales, 2022–2025

Who buys from you?

Do you issue refunds or returns?

Do you edit orders after payment?

Do you sell in person (Shopify POS)?

What issues your invoices today?

You're in Wave 25. Connect by 1 February 2027.

ZATCA will notify you directly. Testing and onboarding take time, so don't wait for the letter.

What you must have

  • An e-invoicing solution onboarded to Fatoora with your own CSID (from an OTP in your Fatoora portal).
  • A signed XML invoice for every order, in Arabic (other languages can sit alongside).
  • Consumer orders reported to ZATCA within 24 hours, with the Phase 2 QR code on the invoice.
  • Credit notes (and debit notes for higher totals) that point to the original invoice.

Gaps to close

  1. 1Nothing is issuing compliant invoices yet. Pick an app or integration and start onboarding now.
Get my gaps fixed on WhatsApp

Based on ZATCA's published wave criteria and e-invoicing guidelines. Not tax advice: confirm your wave and dates with your tax advisor or your Fatoora notification.

Got a list of gaps? Send it to me on WhatsApp and I'll tell you which ones an app can close and which need custom work.

The readiness plan

  1. Confirm your wave. Pull your VAT-taxable revenue for 2022–2025 from your VAT returns. Over SAR 187,500 in any year means 1 February 2027.
  2. Map every way you issue an invoice. Online checkout, draft orders, POS, wholesale, marketplaces. Each one must go through an onboarded solution.
  3. Split B2C and B2B. Decide how a business buyer gives you their VAT number at checkout, so their invoice can be cleared.
  4. Choose an app, your ERP or a custom integration. Then run the four tests above: a refund, an order edit, a B2B order and a POS sale.
  5. Onboard. Get the OTP from your Fatoora portal, onboard each solution or device, and check it appears in your list of solutions and devices.
  6. Go live early and watch it. Every order should show "reported" or "cleared". Rejections need fixing and re-sending, and warnings fixing on the next invoice.

How I'd wire it

I run the Shopify stack for a store that sells in Saudi Arabia, along with the UK, Pakistan and the UAE. I build embedded Shopify apps, webhooks and order pipelines. I haven't built a ZATCA integration yet, so here is exactly how I'd set one up:

  • Webhooks, not exports. Order paid, refund created and order edited each trigger an invoice or note, so the 24-hour clock never depends on someone remembering.
  • A queue with retries. Each document is stored with its status (pending, reported, cleared, rejected) and re-sent until ZATCA answers.
  • One screen for staff. Rejections and warnings show up inside Shopify admin with the reason, plus a reminder before the CSID needs renewing.

If a good app passes the four tests, use it. Custom work makes sense when your edits, B2B or POS flows are what the apps miss.

Questions

What is ZATCA Wave 25?

The 25th group of businesses ZATCA is moving into Phase 2 (the Integration Phase) of e-invoicing. It covers taxpayers whose revenue subject to VAT exceeded SAR 187,500 in 2022, 2023, 2024 or 2025. They must connect their e-invoicing solution to the Fatoora platform by 1 February 2027. ZATCA announced it on 24 July 2026.

Does Shopify support ZATCA Phase 2 e-invoicing?

Not on its own. Shopify calculates and charges VAT, but it doesn't create the signed XML invoice, add the Phase 2 QR code, or send anything to Fatoora. You need an app or a custom integration that is onboarded to Fatoora under your own VAT number.

Do I report every Shopify order to ZATCA?

Yes, through your e-invoicing solution. Invoices to consumers (simplified tax invoices) must be reported within 24 hours of being issued. Invoices to VAT-registered businesses (standard tax invoices) must be cleared by ZATCA before you give them to the buyer.

What happens when I refund or edit a Shopify order?

You can't change or delete an e-invoice once it's issued. A refund or a lower total needs a credit note, and a higher total needs a debit note, each pointing to the original invoice and reported or cleared the same way.

Do I need to register my Shopify POS devices?

ZATCA says every device issuing invoices under the same VAT number should be registered. If your POS issues receipts as invoices, each one needs to be onboarded to Fatoora or routed through a solution that is.

My sales are under SAR 187,500. Am I safe?

You're not in Wave 25, but if you're VAT registered, Phase 1 rules already apply: invoices must be generated electronically by a compliant solution. ZATCA gives each later wave at least six months' notice, so it's worth choosing a Phase 2-ready setup now.

Get ZATCA-ready before 1 February 2027.

Tell me how you sell (online, B2B, POS). I'll map every order, refund and edit to what ZATCA needs and tell you whether an app covers it or you need a custom integration.

Start a project

Get a free audit of your store.

Send your store link and what you're aiming for. Within 48 hours you'll get a short video with the biggest wins for conversion and speed. No obligation.

What you get, free

  • Your top 3 conversion leaks, with fixes
  • Mobile speed check and what's slowing it
  • A clear quote if you want me to do the work
Prefer WhatsApp?Message me on WhatsApp
What do you need?
Budget

Replies within one working day. Your details are never shared.