Compliance

Compliance endpoints let you check CSID status and run a ZATCA compliance test (sandbox). Use the status endpoint to monitor certificate expiry and usage. The test endpoint submits a minimal simplified invoice to the ZATCA compliance endpoint (sandbox only).

GET/v1/compliance/status

CSID status, cert expiry, usage

Returns compliance and certificate status for the tenant: CSID validity, certificate expiry, and usage info.

Requires API Key (Bearer)

Code examples

const res = await fetch('https://api.esnadapi.com/v1/compliance/status', {
  headers: { Authorization: `Bearer ${apiKey}` },
});
const status = await res.json();

Success response (200)

{
  "status": "active",
  "cert_expires_at": "2026-01-15T10:00:00.000Z",
  "usage": {
    "invoices_this_month": 150
  }
}
POST/v1/compliance/test

Run ZATCA compliance check (sandbox only)

Submits a minimal simplified invoice to the ZATCA compliance endpoint. Use to verify your EGS unit passes compliance (sandbox). Parity with ksa_compliance compliance checks.

Requires API Key (Bearer)

Request body

ComplianceTestDto
FieldTypeRequiredDescription
egs_unit_idstringYesEGS unit to run compliance check for

Code examples

const res = await fetch('https://api.esnadapi.com/v1/compliance/test', {
  method: 'POST',
  headers: {
    'Content-Type': 'application/json',
    Authorization: `Bearer ${apiKey}`,
  },
  body: JSON.stringify({ egs_unit_id: egsUnitId }),
});
const result = await res.json();

Success response (200)

{
  "success": true,
  "message": "Compliance check submitted"
}