Set up ZATCA for your register
This pilot connects directly to Fatoora Simulation. Successful test activation enables signed Simulation documents for eligible Saudi test orders on that register. Production selling remains disabled. Simulation receipts are not tax invoices.
For the surrounding setup, see Lite POS owner setup.
Before you begin
Section titled “Before you begin”Sign in as the venue owner and enroll this browser as a register. A laptop, phone or tablet browser works; installing an Android app is unnecessary. Have the business legal name, VAT number, commercial registration and registered address ready. Saving these details checks their format; it does not verify them against government records.
The VAT-registration choice and tax rate are separate. A zero rate does not mean the business is not VAT registered. Non-VAT practice receipts do not need this connection. This pilot’s Saudi signing path currently supports standard-rated 15% lines in SAR; other tax profiles are not converted into Saudi invoices.
Connect in a few steps
Section titled “Connect in a few steps”- In POS, open ZATCA → Business details (
/settings/fiscal). Save the legal name, VAT number, commercial registration, street, building, district, city and postal code. Review them carefully. - Choose Generate activation request. Qaema creates the register’s identity in its protected server and encrypts the private key. Business details become locked to keep the request and subsequent invoices consistent.
- Open the Fatoora taxpayer portal and choose منصة المحاكاة الافتراضية لنظام فوترة. Confirm that the page says it is for testing. The Developer Sandbox is a different service.
- Choose تهيئة وحدة جهاز جديد. Complete any portal verification yourself. Generate 1 activation code for this register request. Follow the expiry time shown by Fatoora.
- Return to Qaema, enter the six-digit ZATCA activation code, and choose Activate test credential. This is the one code needed by Qaema; do not put it in a URL or support message.
- Choose Continue compliance checks. Qaema signs and submits the required invoice, credit-note and debit-note test samples. Keep the page open while it works. If processing continues after a reload, use Refresh status.
- Look for Simulation ready and 3/3 completed checks. This means the reporting credential is stored and this register’s invoice sequence is initialized for testing.
Keys, certificate secrets and provider credential responses stay on the server. The activation code is sent through the secure form; it is not saved or echoed back into the page.
Try a checkout
Section titled “Try a checkout”Use the test register with eligible 15% SAR items. Complete a cash or manual-terminal test payment. The fiscal journal freezes the seller and line amounts, reserves one invoice UUID and counter, signs the document, verifies it, and saves the original XML before reporting it to Simulation.
The existing advance, handover/supply and refund rules still apply. A retry reuses the original invoice identity and source. Orders that already began as ordinary practice receipts stay on that profile. Check the fiscal status and archive; a generated document and an accepted reporting response are separate results.
If something interrupts setup
Section titled “If something interrupts setup”- Code rejected: confirm that Fatoora is in Simulation and that its VAT account matches the VAT number saved here, then generate a fresh code.
- Activation request rejected: contact support to check the business details and certificate request. A new code alone may not fix this.
- Access refused: ask support to review the Simulation account and VAT number.
- Too many attempts: wait before retrying; repeated requests do not resolve a rate limit.
- Processing: use Refresh status. Do not submit another code while a request is in flight.
- Activation interrupted: choose Continue compliance checks when offered. Saved responses are encrypted, and completed checks and frozen requests are reused.
- Provider outcome unknown: contact support. Qaema deliberately holds the request because another certificate request could duplicate an issuance. It does not guess whether ZATCA accepted it.
- Details locked or wrong: ask the owner/operator to review the activation before proceeding. Editing an active seller identity is not supported by this pilot.
- No activation controls: the operator has not enabled the Simulation runtime, or the owner/register sign-in is missing.
A successful Simulation check is testing evidence, not production approval. Production onboarding and merchant acceptance are separate steps. Physical-tablet acceptance remains scheduled for when the tablet is available.