Skip to main content
Rasad

ZATCA, Nafath, Mada and ERP integrations

We connect the systems a Saudi product cannot launch without: ZATCA Phase 2 e-invoicing, Nafath identity, Mada card payments, and the ERP or CRM your finance team already runs. Built, tested against the vendor sandbox, and monitored after launch.

Every integration is scoped on its own line, with its own acceptance test and its own owner in the plan.

The integration is what decides the launch date

A portal can be designed, built and reviewed on schedule, then sit for weeks because the e-invoicing certificate was not issued, the acquirer had not approved the merchant account, or the ERP vendor would not open a sandbox.

We plan integrations first, not last. Before design starts we know which system is the record of truth, which credentials already exist, who owns them, and what the acceptance test is.

That order is why a build with four integrations can still hold a date.

What we connect

Four systems, four different failure modes

Each one has its own onboarding, its own sandbox and its own way of failing in production. We treat them as four separate deliveries inside one project.

ZATCA Phase 2 e-invoicing

Onboarding on the Fatoora platform, cryptographic stamping, UBL 2.1 XML, QR codes, and clearance or reporting through ZATCA APIs.

  • CSR, compliance CSID and production CSID
  • Standard invoices cleared before they reach the buyer
  • Simplified invoices reported within 24 hours
  • Retry queue so an outage does not lose an invoice

Nafath national identity

Login through the National Single Sign-On flow: the user identifies themselves, approves a two-digit request in the Nafath app, and your system receives a verified identity.

  • OAuth 2.0 and OIDC against NSSO
  • Role mapping from the returned identity
  • Session and logout handling in Arabic and English
  • A fallback path for users without a Nafath account

Mada and card payments

Card payments through a licensed Saudi acquirer or gateway, with 3-D Secure and the reconciliation your finance team needs.

  • Mada, Visa and Mastercard through one gateway
  • 3-D Secure authentication
  • Webhook handling for refunds and partial captures
  • Settlement report that matches your ledger

ERP and CRM

The portal reads from your system of record instead of keeping a second copy. Where there is an API we use it; where there is not, we use a scheduled sync or a secure database link.

  • SAP, Microsoft Dynamics, Odoo, Zoho or a custom ERP
  • Field mapping agreed in writing before build
  • Idempotent writes so a retry cannot duplicate an order
  • Monitoring that names the failing record, not just the endpoint

How it ships

How an integration gets to production

The same four gates on every integration, whether it is an e-invoice or a payment.

  1. 01

    Access map

    We list every system, who owns it, which credentials exist and which need to be requested. Most delays are found here, before they cost a sprint.

  2. 02

    Sandbox first

    We build against the vendor test environment and record the acceptance cases with you. A demo against mocked data does not count.

  3. 03

    Reconciliation

    Every write is checked against the system of record: totals, statuses, duplicates. Finance signs off on a full day of transactions before launch.

  4. 04

    Monitoring and handover

    Alerts on failed calls, expiring certificates and queue depth. You get the runbook and the credential owner list at handover.

Where integrations fail after launch

None of these are code problems on day one. All of them are planned for.

Certificate expiry
ZATCA and payment credentials expire. The expiry date goes into monitoring with a 30-day warning, not into a spreadsheet.
Sandbox is not production
Rate limits, payload sizes and error codes differ. We run a production pilot with a small number of real transactions before full cutover.
Duplicate writes
A timeout does not mean the write failed. Every call carries an idempotency key so a retry cannot create a second invoice or order.
Mapping drift
The ERP adds a field or changes a tax code. The mapping is versioned in the repository, so a change is reviewed rather than patched in production.

Integrations already in production

Payment gateways shipped in DAMEN, a Saudi e-commerce trust and escrow platform, and Wafra, a Saudi marketplace for local sellers. ZATCA Phase 2, Nafath, Mada and ERP connections are delivered the same way: scoped, tested against the vendor sandbox and monitored after launch.

Integration types delivered: e-invoicing, identity, payments, ERP
4
Saudi platforms in the portfolio with a shipped payment gateway
2
Weeks for a portal MVP with one integration, from kickoff
6–12

Both projects are listed in the portfolio with the technologies we shipped.

Questions buyers ask before scoping

Do you integrate ZATCA Phase 2 e-invoicing?

Yes. We handle onboarding on the Fatoora platform, CSR and CSID generation, UBL 2.1 XML, QR codes, and clearance or reporting. The acceptance test is a real invoice cleared by ZATCA, not a sandbox response.

Can you connect an ERP that has no API?

Usually. We use a scheduled sync against a staging schema, a secure database link, or file exchange where the vendor supports it. The constraint is written into the scope before build.

Who owns the integration credentials?

You do. Certificates, API keys and acquirer accounts are registered in your name. We work with delegated access and hand over the credential owner list at launch.

How long does an integration take?

A single integration usually adds two to four weeks to a portal build, and the vendor onboarding is often the long pole. ZATCA and acquirer approvals run on their own schedule, so we start them in week one.

What happens if ZATCA or the gateway is down?

Calls go into a retry queue with exponential backoff, and the invoice or payment stays in a pending state your team can see. Nothing is marked complete until the other system confirms it.

Do you work with our existing integration vendor?

Yes. We can take over an existing integration, review it, or work alongside the vendor who owns the ERP. The access map records who does what so two teams do not write to the same field.

Send the systems, and we will map the integration

Tell us which systems have to talk to each other and who owns each one. We will come back with the access map, the vendor onboarding steps and a dated plan.

30 minutes, no obligation. If an integration is not worth building, we will say so.

Get in Touch

We'd love to hear from you. Fill out the form and we'll get back to you soon.