post
https://apistaging.taxizer.com/v1/Invoices/GenerateInvoiceFromXmlRequest
Send a valid signed Simplified E-Invoice XML file to ZATCA for clearance or reporting.
This endpoint is specifically used for simplified e-invoices only (B2C) invoices
This endpoint is specifically used for simplified e-invoices only (B2C invoices). According to ZATCA, all simplified E-invoices must be reported to ZATCA within 24 hours from the time of their creation. This endpoint ensures compliance by automatically reporting the generated invoices within this timeframe.
Example Request
{
"uuid": "123e4567-e89b-12d3-a456-426614174000",
"deviceId": "8f14e45f-e10c-4fc9-8f0b-e10e8b1e8e7f",
"invoiceNumber": "INV-10001",
"signedXmlInvoice": "PHhtbD48aW52b2ljZT5FeGFtcGxlIEludm9pY2UgQ29udGVudDwvaW52b2ljZT48L3htbD4="
}
Request Body Params
| Parameter | Data Type | Field Validations | Description |
|---|---|---|---|
| uuid | string | Mandatory, should be uniqe | A unique identifier for the invoice. |
| deviceId | string | Mandatory | The deviceID registered with in our servers. |
| invoiceNumber | string | Mandatory | -. |
| signedXmlInvoice | string | Mandatory | encoded base64 of the xml invoice |
Example Response
{
"transactionId" : "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"qrCode": "{QRCode}",
"status": "Pending",
"message": "Reporting request created successfully, We will report back to registered webhook when it finishes."
}
Response Body
| Parameter | Data Type | Description |
|---|---|---|
| transactionId | string | A unique identifier for the invoice transaction. This UUID should be used to track the status of the invoice reporting |
| QRCode | string | base64 string encoded . |
| status | string | The current status of the invoice reporting process, default when the transaction created is "pending" |
| message | string | A descriptive message providing more details about the status of the invoice submission. |
| HTTP Status Code | Description |
|---|---|
| 200 | invoice is already reported. |
| 202 | a new transaction is created or an existing one is updated, indicating pending processing. |
| 400 | any validation error occurs during processing. |
| 401 | If the user is not authenticated. |