EGS Onboarding for ZATCA Phase 2 E-Invoicing
Learn how to onboard an Electronic Generation Solution (EGS) for ZATCA Phase 2, from obtaining an OTP and submitting a CSR to compliance checks and production CSID issuance.

Table of Contents
Saudi Arabia’s e-invoicing framework is being implemented in phases by the Zakat, Tax and Customs Authority (ZATCA). Phase 1 began on December 4, 2021, and Phase 2, also known as the Integration Phase, began on January 1, 2023. ZATCA brings taxpayers into Phase 2 in waves and notifies affected taxpayers at least six months before their integration deadline.
If ZATCA has notified your business that it must integrate, you need to make sure your Electronic Generation Solution (EGS) is onboarded through the FATOORA Portal and can follow the applicable clearance or reporting workflow.
The process includes registering each EGS unit, obtaining a compliance Cryptographic Stamp Identifier (CSID), completing the required compliance checks, and requesting a production CSID. The exact setup depends on your EGS configuration and the invoice types it generates.
Abbreviations used
- EGS: E-Invoice Generation Solution
- ZATCA: Zakat, Tax and Customs Authority
- CSID: Cryptographic Stamp Identifier
- CSR: Certificate Signing Request
- TIN: Tax Identification Number
- FATOORA: ZATCA’s e-invoicing platform and portal
What is EGS onboarding?
EGS onboarding is the process of registering an EGS unit with ZATCA through the FATOORA Portal. The taxpayer provides the required identifier and technical details for the unit and completes the onboarding steps to obtain the credentials needed for Phase 2 integration.
A taxpayer may onboard one or multiple EGS units under the same TIN. Each unit must be uniquely identifiable according to ZATCA’s requirements. For example, a business operating several branches may use separate EGS units for different invoicing operations, depending on its system design.
Overview of the onboarding process
The main steps are:
- Generate an OTP in the FATOORA Portal.
- Create and submit a CSR using the OTP and required EGS details.
- Receive the compliance CSID.
- Submit the required sample invoices and notes to complete the EGS compliance checks.
- Submit the compliance CSID and the compliance request ID to request a production CSID.
- Securely manage the production CSID, including renewal or revocation when required.
Step 1: Generate an OTP in the FATOORA Portal
Sign in to the FATOORA Portal using the authorised taxpayer account and open the EGS onboarding area. Follow the portal’s instructions to generate an OTP for the EGS unit or units you need to onboard.
The OTP is valid for one hour from generation. Enter it into the EGS onboarding workflow within that period. If it expires, generate a new OTP through the portal.
Step 2: Create and submit a Certificate Signing Request (CSR)
A CSR contains the technical and organisation details used to request the EGS certificate. The required information includes fields such as:
- Common Name
- EGS Serial Number
- Organization Identifier
- Organization Unit Name
- Organization Name
- Country Name
- Invoice Type
- Location
- Industry
Use the values that accurately describe your taxpayer and EGS configuration, following ZATCA’s current technical requirements. The Organization Identifier is associated with the taxpayer’s TIN. The CSR is submitted with the OTP generated in the previous step.
When the request is accepted, the onboarding workflow returns a compliance CSID. This is used for the compliance checks; it is not the production CSID used for live invoice processing.
Step 3: Complete the EGS compliance checks
After receiving the compliance CSID, submit the required sample documents through the prescribed compliance workflow. Depending on the EGS’s declared invoice types and the applicable requirements, the checks may involve standard and/or simplified tax invoices, credit notes, and debit notes.
Generate the samples in line with ZATCA’s technical requirements and use the compliance CSID as instructed. Review any returned errors, correct the underlying invoice data or configuration, and repeat the relevant checks until the required compliance checks are successful.
Compliance checks commonly cover standard and simplified invoice scenarios and credit-note scenarios. The exact sample documents and checks depend on the EGS’s declared invoice types and ZATCA’s current requirements. Refer to the official ZATCA E-Invoicing Detailed Guideline for the applicable process.
Step 4: Request a production CSID
Once the EGS has completed the required compliance checks, ZATCA returns a compliance request ID. Submit that ID together with the compliance CSID when requesting the production CSID.
The production CSID authorises the EGS unit to submit live invoices and notes through ZATCA’s production clearance or reporting workflow. Store it securely and restrict access to authorised systems and personnel. Do not continue using a CSID if it is suspected to be compromised.
Follow ZATCA’s current technical documentation for the applicable validity period and renewal timing. Do not assume a fixed validity period without checking the current requirements.
Renewal and revocation of a production CSID
A production CSID must be renewed according to ZATCA’s renewal process before it expires. Renewal generally involves generating a new OTP in FATOORA and following ZATCA’s prescribed workflow for the existing CSID; check the current portal instructions before proceeding. If the associated EGS is compromised, or a security incident means the CSID can no longer be trusted, follow the applicable revocation and replacement procedure.
CSID revocation cannot be reversed. If an EGS unit needs to be used again after revocation, it must be onboarded again as a new device according to ZATCA’s process. Before revoking a CSID, confirm that you have identified the correct EGS unit and understand the operational impact.
For the latest details, consult ZATCA’s E-Invoicing Detailed Guideline and the relevant E-Invoice Specifications.
What happens after onboarding?
Onboarding prepares the EGS to participate in the Phase 2 integration process, but it is only one part of ongoing compliance. Your invoicing system must generate documents that meet the applicable technical requirements and submit them through the correct workflow.
- Standard tax invoices and related notes: These require clearance before they are shared with the buyer.
- Simplified tax invoices and related notes: These must be reported to ZATCA within 24 hours of generation or issuance.
The required workflow depends on the document type. Businesses should monitor processing results, resolve errors, and retain invoice records in line with applicable requirements.
How Complyance can support implementation
Complyance provides an e-invoicing integration platform and API to help businesses connect source systems to supported country-specific workflows, including Saudi Arabia. The implementation may involve reviewing invoice data, configuring mappings, validating payloads, testing representative documents, and tracking document status.
For example, Complyance’s Saudi Arabia onboarding documentation indicates that company registration requires company registration details, source details, and a ZATCA one-time password. The specific onboarding responsibilities and automation available depend on your implementation and current product configuration. Confirm the scope with Complyance before relying on a particular automated step, support arrangement, or credential-storage feature.
Explore the Complyance Saudi Arabia integration guide, Saudi Arabia onboarding documentation, go-live guidance, and Unify API reference.
References
Frequently Asked Questions
ZATCA Phase 2, also known as the Integration Phase, began on January 1, 2023. Taxpayers are brought into the phase in waves and are notified ahead of their integration deadline.
An E-Invoice Generation Solution (EGS) is the system used to generate e-invoices. It may be part of an ERP or accounting solution, a custom system, or another compliant solution that meets ZATCA’s requirements.
The OTP is valid for one hour from generation. Enter it into the onboarding workflow within that period; otherwise, generate a new OTP.
The compliance CSID is used to complete the required EGS compliance checks. After those checks succeed, the taxpayer requests a production CSID for the production environment.
The production request uses the compliance CSID and the compliance request ID returned after the EGS compliance-check step, following ZATCA’s prescribed workflow.
Yes. A taxpayer may onboard multiple EGS units under the same TIN. Each EGS unit must be uniquely identifiable and meet ZATCA’s onboarding requirements.
Stop relying on the compromised credential and follow ZATCA’s applicable revocation and replacement process. Revocation cannot be reversed; the EGS unit may need to be onboarded again as a new device.
No. Onboarding is one step. The EGS must also generate compliant documents and follow the applicable clearance or reporting workflow. Businesses should monitor submission outcomes and maintain their integration as requirements evolve.









