PintLint

Rules / IBR-159-AE

IBR-159-AE error

Non-AED invoices need an exchange rate

If the invoice isn't in AED, it must carry the exchange rate to AED (BTAE-04).

VAT is reported to the FTA in dirhams, whatever currency you bill in.

Fails

<cbc:DocumentCurrencyCode>USD</cbc:DocumentCurrencyCode>
<cbc:TaxCurrencyCode>AED</cbc:TaxCurrencyCode>
<!-- no exchange rate -->

Fix

Add cac:TaxExchangeRate with the rate to AED. In 1.0.4 it lives under TaxExchangeRate, not PricingExchangeRate.

Passes

<cac:TaxExchangeRate>
  <cbc:SourceCurrencyCode>USD</cbc:SourceCurrencyCode>
  <cbc:TargetCurrencyCode>AED</cbc:TargetCurrencyCode>
  <cbc:CalculationRate>3.6725</cbc:CalculationRate>
</cac:TaxExchangeRate>
Schematron
Context
/ubl:Invoice | /cn:CreditNote
Test
(cbc:DocumentCurrencyCode != "AED" and (exists(//cac:TaxExchangeRate/cbc:CalculationRate))) or cbc:DocumentCurrencyCode = "AED"

Official text: Currency exchange rate [BTAE-04] is MUST when then Invoice currency code [IBT-005] is different from 'AED'.

Official · PINT AE (UAE) rules. Severity: error. Runs on UBL XML.

Check an invoice