Issue debit notes
Changed onIssues multiple simplified debit notes and automatically queues reporting for each document.
Accepts the same array payload as bulk-report. Validates the whole payload before allocating document counters. Returns 202 Accepted with document details and QR codes in request order, after saving signed XML. XML is not embedded in the JSON response. Use each document ID with the existing download endpoint (type=xml or type=pdf); PDFs render on demand or in the background.
The response confirms local validation and issuance, not acceptance by ZATCA. Follow each document through retrieval or webhooks. Downloads and reporting retries use the original signed XML and QR code, including during ZATCA outages. Sending through channels is queued after issuance and does not wait for successful reporting. Delivery retries preserve completed channels.
Available only for simplified documents. The existing bulk-report endpoint retains its asynchronous reporting contract and response shape.
Request
- Base URLhttps://api.wafeq.com/v1
- URLhttps://api.wafeq.com/v1/zatca/simplified-debit-notes/bulk-issue/
- AuthAPI key in header Authorization
Headers
If the account is under a Group VAT, then it is required to be the TIN of the instance under the Group VAT. Otherwise it is optional and can be used as a branch name
The unique identifier of the connected account you're operating on behalf of.
Connected accounts should be used only for Platforms and White Label integrations that onboard customers and report documents on their behalf. Omit the X-ZATCA-Connected-Account-Id header when registering devices or reporting documents for your own organization. See the Platforms and White Label guide.
The ZATCA environment to use, one of ['production', 'simulation']. A ZATCA API key (starting with zatca_live_ or zatca_sim_) already names its environment, so the header is optional with it and must match it when sent. Other API keys and OAuth tokens need it.
Request body
Response
Signed XML is saved, downloads are available, and reporting is queued.
Changes
- info
endpoint added
- info