e-Invoice submission validation endpoint

Hi,

I wanted to confirm the existence or not of a endpoint to perform a check in the submission status. By looking at the official documentation: Zatca

There’s no endpoint to check the submission status (GET), just a POST submitting again the same document. If I had received a error in the document submission and then tried to submit again, I will receive a error message telling that the document it’s duplicated.

Hello @isabelapastorini,

Thank you for your inquiry.

Currently, there is no specific endpoint available to check the submission status of an e-invoice (via a GET request). However, when a POST request is submitted, the system will validate the submission. Meanwhile you can rely on API response until
Statistic page in Fatoora platform is ready, once its ready and published, the taxpayers will be informed.

If you require further assistance or have additional questions, please don’t hesitate to reach out.

Best regards,
Lina

Hi Lina, I am working with Isabela on an issue. Are you able to tell me what is the expected behavior when submitting an invoice a second time (i.e. duplicated) when it has been previously rejected? What if it was approved?

Dear @kogabr ,

Thank you for your question.

Below is the expected behavior when submitting an invoice a second time:

  1. For Previously Rejected Invoice: If the invoice is resubmitted after rejection, it should be uploaded as a new document with a new UUID, ICV and invoice hash. Ensure all previous errors are corrected before resubmission.

  2. For Previously Approved Invoice: If an invoice that has already been approved is resubmitted (duplicated), the system will flag it as a duplicate based on the UUID, ICV and invoice hash which are the same. Furthermore, please note that the action of resubmitting the same approved invoice (duplicate) is prohibited by ZATCA compliance guidelines, and taxpayers should prevent duplicating their invoices. please note that the return message in the simulation environment is 409 error and in production it returns 200 which is accepting for now, but it’s not allowed.

Please let me know if you need further clarification.

Best regards,
Lina