Skip to content
Fatooraz

Invoices and documents

Invoice UUID

An invoice UUID is the unique identifier of one e-invoice: a code that belongs to that invoice alone. It is one of the technical elements each Phase 2 invoice carries, alongside the counter value and the previous invoice hash.

What it means

Your customer sees an invoice number, usually a running serial on the page. The UUID is something different: a unique code assigned to each invoice that no other invoice shares. It lets ZATCA's systems and yours point at one exact invoice without confusion, even when two invoices have the same amount, date and customer.

You will rarely type a UUID yourself. A cafe cashier or a wholesaler's accountant never sees it at work, because the invoicing system creates it along with the invoice and stores it inside the XML data. It matters when something needs tracing, such as a rejected invoice or a question you send to your software provider. There is no need to memorise it or check it every day.

Taken with the invoice counter value and the previous invoice hash, the UUID helps identify an invoice and place it in order. All of this is produced inside your system, so staff enter nothing, but your software must support Phase 2 to generate it. Your wave, announced by ZATCA, sets when that becomes necessary, and it is wise to ask your provider about it early.

In practice

  • Ask your software provider whether it creates a unique identifier for every invoice.
  • Create each invoice through your system, never by copying and editing an old invoice file.
  • Keep the UUID at hand when you ask your provider about a specific invoice.
  • Practise in ZATCA's simulation environment to see how test invoices are identified.

Questions about Invoice UUID

Is the UUID the same as the invoice number?

No, they are two different things. The invoice number is the serial your customer reads on the page, while the UUID is a technical identifier that belongs to that one invoice. It does not replace your own sequential numbering, so a Phase 2 invoice needs both.

Do I have to create the UUID myself?

In normal use you do not. The UUID is one of the elements that Phase 2 invoices carry, and your invoicing system is where it is produced and stored with the invoice data. What you should do is confirm, ideally in the simulation environment, that your system supports it before your wave begins.

Issue correct invoices without the guesswork

Try Fatooraz free for 90 days in ZATCA’s simulation environment. No credit card needed.