qmetrics
Fatal — invoice rejected Currency & exchange UAE-specific rule PINT-AE 2026.5

How to fix ibr-153-ae in UAE e-invoicing

What is ibr-153-ae?

ibr-153-ae is a fatal validation rule in the UAE's Peppol PINT-AE e-invoicing specification — one of the UAE-specific rules. It is checked against the invoice document and belongs to the Currency & exchange rule group. An e-invoice that fails ibr-153-ae is rejected by the Accredited Service Provider gateway before it reaches the FTA.

What the official rule says

When the Tax accounting currency (IBT-006) is set to AED and the invoice currency code (IBT-005) differs from AED, the source currency must be designated as the invoice currency code (IBT-005), and the target currency must be specified as the Tax accounting currency (IBT-006), provided that the currency exchange rate (BTAE-04) is available
UAE impact: this is a fatal rule specific to the UAE PINT-AE profile — an invoice failing it is rejected at the Accredited Service Provider gateway before it ever reaches the FTA. A rejected invoice means resubmission delays, and late transmission risks the AED 100-per-invoice penalty under Cabinet Decision No. 106 of 2025.

Where it applies

This rule is checked against the invoice document of your UBL 2.1 invoice:

/ubl:Invoice | /cn:CreditNote

Business terms referenced

Term ID Field Other rules
IBT-006 Tax accounting currency view →
IBT-005 Invoice currency code view →
BTAE-04 Currency exchange rate view →

Field names are derived automatically from the official rule corpus.

Why this happens

A foreign-currency invoice (document currency ≠ AED with tax currency AED) must include a second TaxTotal carrying the VAT amount converted to AED. Without it the FTA can't account the VAT in dirhams and the invoice is rejected.

How to fix it

1. Keep your normal TaxTotal in the invoice currency (with its subtotals). 2. Add a second <cac:TaxTotal> whose <cbc:TaxAmount currencyID="AED"> is the converted VAT amount. 3. Include the exchange rate used (BTAE-04) — see rule ibr-159-ae.

Compliant XML

<cac:TaxTotal>
  <cbc:TaxAmount currencyID="USD">50</cbc:TaxAmount>
  <cac:TaxSubtotal>...</cac:TaxSubtotal>
</cac:TaxTotal>
<cac:TaxTotal>
  <cbc:TaxAmount currencyID="AED">183.64</cbc:TaxAmount>
</cac:TaxTotal>
Technical test condition (Schematron)
not(cbc:TaxCurrencyCode = "AED" and cbc:DocumentCurrencyCode != "AED" and (not(cac:TaxExchangeRate/cbc:SourceCurrencyCode = cbc:DocumentCurrencyCode) or not(cac:TaxExchangeRate/cbc:TargetCurrencyCode = cbc:TaxCurrencyCode) or not(cac:TaxExchangeRate/cbc:CalculationRate)))

Test your invoice against ibr-153-ae now

Upload your UBL XML — we check all 302 PINT-AE rules including this one, in one second. Your file is validated in memory and never stored.

Related rules

Rule text sourced from the official OpenPeppol PINT-AE validation artifacts (version 2026.5), refreshed weekly. Explanations are qmetrics' own guidance, not official FTA/MoF text.