Question regarding the UUID, ICV and IRN

Good day,

The below screenshot was taken from a Standard Invoice Sample from the SDK.

  1. This field represents the UUID in the ZATCA required format.
  2. How do we populate the value of the second UUID, the format is not the same. Are both representing the same UUID?
  3. What is the difference between the InvoiceNumber (cbc:ID) and the
  4. Invoice Counter Value (cac:AdditionalDocumentReference / cbc:ID)?

Dear @LindieBotha,

thanks for reaching out, please refer to the answers of your questions in order below:

1- yes, this field represents the UUID in your invoice, which is A Unified Unique Identification Number (UUID) is a 128-bit number used to uniquely identify information in computer systems for E-Invoice Generation. The UUID generation scheme ensures a high probability of global uniqueness without requiring a central database check.

2- UUID that assigned to each generated invoice must be unique & shouldn’t be re-used again, so this is 100% normal to see that it’s not with the same format, and it’s an autmoatically generated value within the compliant E-invoicing solution (EGS), taxpayer’s EGS should automatically generate & store the UUID value inside the XML invoice to be compliant with ZATCA’s requirements.

3-
the invoice number: it’s the same as the invoice reference number (IRN), which is a unique, sequential note number, issued by taxpayer, as per Article 53(5)(b) of the VAT Implementing Regulation. This implies IRN is just another name for Invoice Sequence Number.

Invoice Contuer Value (ICV): as specified in E Invoicing Resolution, the Compliant E-Invoice solution must have
a tamper-resistant Electronic Invoice counter that cannot be reset or reformatted. The
counter must increment for each generated Electronic Invoice or associated note and
the Compliant Solution must record the value of this counter in each Electronic Invoice or
associated Notes. Example 1,2,3,4,5.

once the e-invoice is generated, then its ICV shoudn’t be re-used again, taxpayers should ensure that each (EGS) has its own sequence of ICV, taxpayer can upload invoices with any order, in example, the EGS is generating invoices in the sequence of (1,2,3), then the taxpayer can upload invoices to ZATCA with the order of (3,1,2) or any other order as long it’s generated as a sequence from the EGS. the validation will held at the backend not upfront.

I hope this answer your questions, if you needed any further clarifiactions, please do not hesitate to reach out.

Hi @Aturkistani ,

Does the sequential apply to Invoice, Credit Note and Debit Note globally? Or the sequential can be apply for each document type.

Global sequence sample:

DocumentType, IRN
Invoice, 24/0001
Invoice, 24/0002
Debit Note, 24/0003
Credit Note, 24/0004
Invoice, 24/0005

Document Type sequence sample:

DocumentType, IRN
Invoice, 24/INV0001
Invoice, 24/INV0002
Debit Note, 24/DN0001
Credit Note, 24/CN0001
Invoice, 24/INV0003

Please confirm which data sample is correct.

Did you get the response?

Dears @jonathanb @Firoz ,

the ICV sequence should be applied globally on same device, regardless of the document type.

INV10=ICV10
DN1= ICV11
CN3=ICV12

This is the right sequence, please note that if you have multiple devices (EGSs) onboarded under the same VAT number, then each device should has its own seperate sequence.

1 Like

Dear @Firoz,

I have mentioned you in the response.

Noted on that, appreciate the advise. Great we are on the same page.

I have the following sequence of documents and their corresponding ICV (Invoice Control Values), generated in this order:

  • INV/001: ICV1
  • DN001: ICV2
  • CN001: ICV3
  • INV/002: ICV4

Do I need to submit these documents to ZATCA in the exact order of their ICV values (e.g., ICV1 → ICV2 → ICV3 → ICV4)? Or can I submit them in a different order, such as ICV3 → ICV2 → ICV4?

For example, would submitting them in this order:
INV/001 (ICV1) → CN001 (ICV3) → DN001 (ICV2) → INV/002 (ICV4) be acceptable, or is it mandatory to maintain the order of the generated ICVs?

Dear @arjun_tech24,

you can submit (Send) them in any order, but it’s mandatory that they are being generated on the sequence order.

1 Like