System integration

Planning enterprise integrations with Saudi digital platforms

ZATCA’s e-invoicing, Nafath identity, Etimad procurement and Wathq commercial-registration data are documented interfaces, and an integration with any of them is an engineering programme with a known shape. This guide sets out that shape — from sandbox onboarding to production responsibility — so the work can be scoped and procured precisely.

01The short answer

What an integration with a national platform actually involves

Each platform publishes a specification, an onboarding process and a sandbox. The work is to read the specification as it is published, build against the sandbox with the authentication, logging, retry and error-handling behaviour the production interface will demand, and then cut over with the responsibilities for operating the connection written down. The technology is rarely the hard part; the sequencing, the identity model and who owns the interface after go-live are.

Interkey’s role in this is a software-engineering and system-integration team that scopes and builds against documented interfaces. This page describes the planning; it does not describe a delivery history, and the official sources linked below are the authority on each platform’s requirements.

02The platforms

Four platforms, and what integrating with each involves

Read the official documentation first; it changes, and this table is a map of the integration shape, not a substitute for the specification.

PlatformWhat it isWhat integration involvesOfficial source
ZATCA e-invoicing (Fatoora)The Zakat, Tax and Customs Authority’s e-invoicing system, rolled out in a generation phase and an integration phase in waves of taxpayers.Generating compliant invoice documents, onboarding the invoicing solution, cryptographic identity for the device or solution, clearance or reporting of invoices through the published API, and archiving.zatca.gov.sa
NafathThe national digital identity and single sign-on service.Delegating authentication of citizens and residents to the national identity provider, mapping the identity returned to your own user model, and handling consent and session lifecycle.nafath.sa
EtimadThe government procurement and tendering platform.Registering as a supplier, and where an entity integrates its own systems, aligning tender, bid and contract data with the platform’s published processes.etimad.sa
WathqThe Ministry of Commerce’s commercial-registration data services.Consuming commercial-registration data through the published APIs, with the subscription, authentication and usage terms the service sets.wathq.sa

03The sequence

From the published specification to a production connection

The order matters more than the speed. Each stage produces something the next one depends on, and skipping one is how an integration passes the sandbox and fails in production.

  1. Read the specification as published

    Versions, endpoints, document formats, error codes and rate limits, from the platform’s own developer material. Note what is mandatory and what is a recommendation.

  2. Onboard to the sandbox

    Register the solution or entity, obtain sandbox credentials, and build the integration against the sandbox exactly as it will run in production, including failure paths.

  3. Settle authentication and identity

    Certificates, tokens or delegated identity, their issuance and rotation, and how the identity the platform returns maps to your own users, roles and records.

  4. Classify the data that crosses the interface

    What leaves your systems, what comes back, its classification under your own policy, and where it is stored and for how long.

  5. Build the operating behaviour in

    Structured logging, observability, retries with idempotency keys, explicit error handling and an audit trail that a reviewer can follow end to end.

  6. Cut over with responsibilities written down

    Production credentials, the deployment path, who monitors the connection, who answers the platform’s change notices, and what happens when a version changes.

04The engineering decisions

Twelve decisions that decide whether the integration survives production

DecisionWhat to settle
API onboardingWho registers with the platform, under which entity, and who holds the credentials issued.
Sandbox versus productionWhat differs between them — data, limits, certificates — and how a build proven in one is promoted to the other.
AuthenticationThe credential type the platform requires, its lifetime, its rotation, and where it is stored.
IdentityHow an identity the platform asserts is mapped to your user model, and what happens when they disagree.
Data classificationThe classification of every field that crosses the interface, and the handling rule each classification triggers.
LoggingWhat is logged, at which level, with which identifiers redacted, and for how long.
ObservabilityHow the health, latency and error rate of the connection are seen, and by whom, on the observability platform you already run.
API gatewaysWhether the connection runs through a managed gateway, and which policies — rate, authentication, transformation — live there.
Retry and idempotencyWhich calls are safe to retry, the idempotency key that makes them safe, and the back-off the platform tolerates.
Error handlingThe platform’s error codes mapped to explicit outcomes: retry, escalate, reject, or hold for human review.
AuditabilityThe record of what was sent, when, by which identity, with which response, kept where an auditor can read it.
Deployment responsibilityWho deploys, who operates, who is paged, and who owns the change when the platform publishes a new version.

05Designed to survive

Three failure modes every platform integration has to survive

Each of these happens to a working integration eventually. The engineering decisions above exist so that when it does, the outcome is a logged event and not an incident.

01

The platform publishes a new version

Endpoints, document formats or validation rules change on the platform’s schedule, not yours. The build tracks the specification version it targets, the sandbox re-run is rehearsed, and someone is named to read change notices.

02

A credential expires or is rotated

Certificates and tokens have lifetimes. Rotation is scheduled and tested before expiry, the secret lives in one place, and an authentication failure is an alert with an owner rather than a silent queue of rejected submissions.

03

A submission is sent twice

A timeout after the platform accepted the request is the classic case. Idempotency keys make the retry safe, the audit trail shows both attempts and one outcome, and the reconciliation report is the proof.

06Before you buy

Questions to resolve during procurement

Put these in the RFP. A supplier who answers them in specifics has read the specification; one who answers them in general has not.

  • Which version of the platform specification is the build against, and who tracks changes to it
  • Which entity registers with the platform, and who holds the issued credentials after handover
  • How sandbox results are promoted to production, and what is re-tested at cutover
  • What identity model is used, and how disagreements between the platform and your records are resolved
  • The classification of every data field crossing the interface, and its retention
  • What is logged, what is redacted, and where the audit trail lives
  • Which calls are idempotent, and how duplicate submissions are prevented
  • Who operates the connection after go-live, and who responds to a platform change notice

What Interkey brings, stated precisely

A software-engineering and system-integration team in Riyadh that scopes, builds, tests and operates integrations against documented interfaces, with the logging, observability and gateway practices linked above. Whether a given platform integration belongs in a programme, and under which entity’s registration, is settled in the first conversation against the platform’s own current requirements.

07Buyer questions

What buyers ask us

Direct answers to the questions that come up in real evaluations. Anything missing, ask us at the bottom of the page.

Do we need a separate integration for each platform?

Each platform has its own specification, credentials and onboarding, so each is its own integration. What should be shared is the engineering underneath: the gateway, the logging and audit approach, the retry and idempotency pattern and the identity mapping, so the second integration is cheaper than the first.

Where does the official specification live?

On each platform’s own site, linked in the table above. Build against the published version and treat this guide as the planning shape around it, not as the specification.

Can the integration be built and tested without touching production?

That is what the platform sandbox is for. The build is completed and its failure paths exercised against sandbox credentials, and production credentials are issued only at cutover, with what is re-tested at that point written down in advance.

Who is responsible for the connection after go-live?

Whoever the contract says, which is why it is one of the twelve decisions. Interkey can operate an integration under a written managed-services scope; the registration and credentials remain the entity’s.

Next step

Scope a platform integration

Name the platform, the systems on your side and who will operate the connection, and the reply comes from the engineers who would build it.

Or directly

+966-11-2180999 info@interkey.com.sa

Tawuniya Towers, North Tower, 7th Floor, King Fahad Highway, Olaya, P.O. Box 56835, Riyadh 11564, Saudi Arabia

or See the system integration practice

The Riyadh team replies on Saudi working days, in Arabic and English.

Published by Interkey. Last updated . Interkey is registered in Riyadh, Saudi Arabia under commercial registration 1010156897.