Rule at a Glance
| ID | Severity | Context (XPath) |
|---|---|---|
| BR-06 | Fatal (error) | ubl:Invoice |
| Series reference: BR-06 | Schematron ID: ibr-077 | ||
Classification
Transaction Data — This rule validates a header-level financial field that governs how VAT amounts are reported when the transacting parties use different currencies for invoicing and VAT accounting purposes.
What the Rule Is Checking
BR-06 applies when the optional field cbc:TaxCurrencyCode (BT-6) is present on the invoice. When a VAT accounting currency code is provided, it must be different from the invoice currency code in cbc:DocumentCurrencyCode (BT-5). If BT-6 equals BT-5, the rule fails fatally.
The rule does not require BT-6 to be present. It is only triggered when the element exists. In the majority of UAE invoices denominated and accounted for in AED, BT-6 is absent and BR-06 does not fire.
Why This Rule Exists
The VAT accounting currency code field exists to handle transactions where a supplier invoices in a foreign currency but must report VAT to the FTA in AED. UAE VAT legislation requires VAT to be expressed in AED when the invoice is issued in a foreign currency. In that scenario, BT-5 would carry the foreign currency (e.g., USD) while BT-6 would carry AED, enabling the receiving system to present both the commercial amount and the VAT amount in their respective currencies.
If BT-6 were permitted to equal BT-5, the field would be redundant and could cause downstream systems to apply erroneous currency conversion logic. The fatal severity ensures no ambiguous dual-currency invoices enter the UAE Peppol network.
Standard / Code List
Both BT-5 and BT-6 must carry valid ISO 4217 currency codes. The UAE dirham is AED. See the reference post ISO 4217 Currency Codes in UAE E-Invoicing for the full code list context.
When a UAE supplier invoices a foreign buyer in USD and reports VAT in AED, the header carries both codes:
BT-5 (DocumentCurrencyCode): USD
BT-6 (TaxCurrencyCode): AED
UAE Data Example
PASSES ✓ — Foreign currency invoice with AED VAT accounting:
<cbc:DocumentCurrencyCode>USD</cbc:DocumentCurrencyCode>
<cbc:TaxCurrencyCode>AED</cbc:TaxCurrencyCode>
PASSES ✓ — AED-only invoice with no TaxCurrencyCode (most common UAE case):
<cbc:DocumentCurrencyCode>AED</cbc:DocumentCurrencyCode>
<!-- No cbc:TaxCurrencyCode element — BR-06 does not fire -->
FAILS ✗ — TaxCurrencyCode equals DocumentCurrencyCode:
<cbc:DocumentCurrencyCode>AED</cbc:DocumentCurrencyCode>
<cbc:TaxCurrencyCode>AED</cbc:TaxCurrencyCode>
What Your ERP / IT Team Must Ensure
- For AED-denominated invoices, do not populate BT-6 at all. Leaving
cbc:TaxCurrencyCodeabsent is correct and avoids BR-06. - For foreign-currency invoices where VAT must be reported in AED, populate BT-6 with
AEDand ensure BT-5 carries the transaction currency (e.g.,USD,EUR). - ERP currency configuration that defaults
TaxCurrencyCodeto the same value asDocumentCurrencyCodemust be suppressed in the UBL mapping layer — the element should only be emitted when the two currencies genuinely differ. - When BT-6 is present, the UBL XML must also include tax subtotals expressed in BT-6 currency. Verify that the XML builder populates
cac:TaxTotalwith the AED-converted VAT amount alongside the foreign-currency tax total. - Exchange rate declarations (MD 243 Article 6 obligation) interact with this field — ensure the exchange rate used to derive the AED VAT amount is documented in the invoice data per FTA requirements.
Related Rules
BR-05 (Invoice currency code mandatory), ISO 4217 Currency Codes, UAE Exchange Rate Obligation BTAE-04
