Changelog
Every change to the API is listed here, newest first. See Versioning for what can change within v1.
7 November 2026: v1
The first version of the Merchant API.
- Customers: create, read, list and update people and companies; find them by phone, VAT number, ID or your own
referenceId. Permissionscustomers:readandcustomers:write. See Customers. - Sales invoices: issue an invoice in one call, with payment at issue or on account; standard invoices are cleared by ZATCA before the reply. Read and list invoices from every channel, and download their PDF and ZATCA XML. Permissions
sales_invoices:readandsales_invoices:write. See Sales invoices. - Payments: record a payment and allocate it to invoices; read and list payments from every channel. Permissions
payments:readandpayments:write. See Payments. - Credit notes: credit an issued invoice with a refund or against what the customer owes; read and list credit notes, including refunds made at the POS and on the dashboard; download their PDF and ZATCA XML. Permissions
credit_notes:readandcredit_notes:write. See Credit notes. - Catalogue: read and list branches, items and payment methods, to fill the IDs an invoice needs. Permissions
branches:read,items:readandpayment_methods:read. - Webhooks: ZATCA results that arrive after the reply are pushed to an HTTPS endpoint the key registers, signed the Standard Webhooks way and retried for about 3 days. Permissions
webhooks:readandwebhooks:write. See Webhooks. - Test mode: a sandbox per merchant, test keys that start with
ksr_test_, theKosoor-Mode: testheader and fixture customers with known outcomes. See Test mode.