e-invoicing Saudi Arabia: How Compliance and Enablement toolbox SDK enables taxpayers comply with ZATCA published regulations

0 Comments | Category 1

The Zakat, Tax and Customs Authority (ZATCA) had recently published a software development kit (SDK tool kit) which enables taxpayers to validate the generated electronic invoice and note XML files and the embedded QR codes against the e-invoicing requirements and regulations published by the ZATCA. This SDK tool kit (also referred to as Compliance and Enablement toolbox) must be integrated with the taxpayer’s electronic invoicing solution for validating the e-invoice and notes’ XML files and related QR codes. The SDK tool kit along with guidelines for implementation can be accessed from the ZATCA official webpage.

How does the SDK tool kit work?
The Compliance and Enablement toolbox SDK is a standalone application and works similar to a ZATCA e-invoicing solution. It checks the field specifications and business rules expected from a compliant e-invoice, credit or debit note based on ZATCA’s published specifications on individual XML files. The SDK tool kit also verifies the invoice hash or hashes of a short sequence of such invoices.
The SDK tool kit can test the validity of the generated invoices and an XML corresponding to a compliant e-invoice or electronic note along with a QR code string is generated by the SDK, when the test is successful. In case the test is unsuccessful, an XML for a non-compliant e-invoice or e-note along with error messages are generated. Taxpayers can correct the published errors and re-test the e-invoices and e-notes. The QR codes are also validated using similar process. Taxpayers can also request for SDK to return a e-invoice or e-note XML with a dummy cryptographic stamp.
Compliance with the SDK tool kit does not imply that the XML files have been acknowledged, accepted, or approved by ZATCA, since the Compliance and Enablement toolbox SDK is a standalone application.

Complying with Generation Phase Requirements
For the Generation Phase, the toolkit enables the taxpayers and developers to check compliance of QR codes generated against the ZATCA regulations. The following are the fields of the QR code users can validate, for complying with the Phase 1 requirements of ZATCA mandate.
• Name of the Seller
• Seller’s VAT registration number
• Date and time (timestamp) of the generation of electronic invoice or electronic note
• Total amount of the electronic invoice or electronic note (inclusive of VAT)
• Total amount of VAT charged.
Users can validate the compliance against the requirements for QR code using the tool kit and make the required changes for adhering to the ZATCA regulations, in case of errors.

Complying with Integration Phase Requirements
For the Integration Phase, the toolkit enables taxpayers and developers to check the compliance of e-invoice, electronic note XML files along with the respective QR codes against the ZATCA regulations for the integration phase. In this phase, the QR code must include four more additional fields, apart from the fields mentioned in the generation phase –
• Hash of XML electronic invoice or credit/debit note
• Cryptographic Stamp
• Public key used for generating the Cryptographic stamp
• Authority’s Portal Cryptographic stamp of the public key of the E-Invoice Solution, in case of simplified tax invoices.

The SDK toolkit can be used to validate the XML files against the ZATCA published specifications and standards in the following sequence –
• Validation against the UBL 2.1 XSD schema
• Validation against the EN16931 derived rules (schematron)
• Validation against the KSA specific rules (a separate schematron)
• Validation of cryptographic security features in XML
• Validation of QR code and cryptographic security features in the QR code

In case of any further queries regarding the Compliance and Enablement toolbox SDK or if you are looking for a compliant electronic invoicing solution, please connect with our electronic invoicing solution experts by writing to us at sales@taxilla.com.

Leave a Reply