Starting July 2026, the UAE will mandate structured
electronic invoices for B2B and B2G transactions using the Peppol
International (PINT AE) format. This change isn’t just about technology;
it’s about tax compliance, audit-readiness, and aligning with international
best practices.
This guide provides practical scenarios and XML examples so
you can structure your e-invoices and credit notes correctly from day one.
✅ Scenario 1: Standard UAE Tax Invoice in Foreign Currency
(EUR)
<cbc:InvoiceTypeCode>380</cbc:InvoiceTypeCode>
<cbc:ProfileExecutionID>00000000</cbc:ProfileExecutionID>
<cbc:DocumentCurrencyCode>EUR</cbc:DocumentCurrencyCode>
<cbc:TaxCurrencyCode>AED</cbc:TaxCurrencyCode>
<cac:TaxTotal>
<cbc:TaxAmount
currencyID="AED">XYZ</cbc:TaxAmount>
</cac:TaxTotal>
Why it matters: All VAT
must be reported in AED even if the invoice is issued in another currency.
✅ Scenario 2: Credit Note for Returned Goods
<cbc:InvoiceTypeCode>381</cbc:InvoiceTypeCode>
<cac:DiscrepancyResponse>
<cbc:ResponseCode>RETURN</cbc:ResponseCode>
</cac:DiscrepancyResponse>
<cac:BillingReference>
<cac:InvoiceDocumentReference>
<cbc:ID>INV1234</cbc:ID>
<cbc:IssueDate>2024-03-21</cbc:IssueDate>
</cac:InvoiceDocumentReference>
</cac:BillingReference>
Why it matters: Credit
notes must clearly specify the reason and reference the original invoice.
✅ Scenario 3: Volume Discount Credit Note
<cbc:InvoiceTypeCode>381</cbc:InvoiceTypeCode>
<cbc:ProfileExecutionID>00000000</cbc:ProfileExecutionID>
<cac:DiscrepancyResponse>
<cbc:ResponseCode>VD</cbc:ResponseCode>
</cac:DiscrepancyResponse>
Why it matters: When using
VD
as the reason, referencing the original invoice becomes optional.
✅ Scenario 4: Export Invoice from UAE
<cbc:InvoiceTypeCode>380</cbc:InvoiceTypeCode>
<cbc:ProfileExecutionID>00000001</cbc:ProfileExecutionID>
Why it matters: The last
digit in the ProfileExecutionID string flags this as an export transaction.
✅ Scenario 5: Deemed Supply + Profit Margin Scheme
<cbc:InvoiceTypeCode>380</cbc:InvoiceTypeCode>
<cbc:ProfileExecutionID>01100000</cbc:ProfileExecutionID>
Why it matters: The binary
string allows you to mark multiple tax treatments simultaneously.
Scenario
|
InvoiceTypeCode
|
ProfileExecutionID
|
Standard Invoice (No Flags)
|
380
|
00000000
|
Credit Note (Return)
|
381
|
00000000
|
Volume Discount Credit Note
|
381
|
00000000
|
Export Invoice
|
380
|
00000001
|
Deemed + Profit Margin Scheme
|
380
|
01100000
|
- Use
<InvoiceTypeCode> = 380 for tax invoices and 381 for credit notes.
- Always
declare VAT in AED using <TaxCurrencyCode>.
- Use
the 8-digit <ProfileExecutionID> string to flag VAT treatments like Export, FTZ, etc.
- Credit
notes must include <DiscrepancyResponse> with the appropriate reason code.
Stay compliant, stay accurate – and structure your UAE
e-invoices the right way from the start.
If you need help implementing this across your finance or
ERP system, reach out to our compliance team today.