qmetrics
Fatal — invoice rejected VAT categories & rates UAE-specific rule PINT-AE 2026.5

How to fix aligned-ibrp-e-01 in UAE e-invoicing

What is aligned-ibrp-e-01?

aligned-ibrp-e-01 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 VAT categories & rates rule group. An e-invoice that fails aligned-ibrp-e-01 is rejected by the Accredited Service Provider gateway before it reaches the FTA.

What the official rule says

An Invoice that contains an Invoice line (ibg-25), a Document level allowance (ibg-20) or a Document level charge (ibg-21) where the VAT category code (ibt-151, ibt-95 or ibt-102) is "Exempt from VAT" MUST contain exactly one VAT breakdown (ibg-23) with the VAT category code (ibt-118) equal to "Exempt from VAT".
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
IBG-25 Invoice line view →
IBG-20 Document level allowance view →
IBG-21 Document level charge view →
IBT-151 Invoiced item VAT category code view →
IBT-95 Document level allowance VAT category code view →
IBT-102 Document level charge VAT category code view →
IBG-23 VAT breakdown view →
IBT-118 VAT category code view →

Field names are derived automatically from the official rule corpus.

Technical test condition (Schematron)
((exists(//cac:TaxCategory[cac:TaxScheme/normalize-space(upper-case(cbc:ID))='VAT']/cbc:ID[normalize-space(.) = 'E']) or exists(//cac:ClassifiedTaxCategory[cac:TaxScheme/normalize-space(upper-case(cbc:ID))='VAT']/cbc:ID[normalize-space(.) = 'E'])) and (count(cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory[cac:TaxScheme/normalize-space(upper-case(cbc:ID))='VAT']/cbc:ID[normalize-space(.) = 'E']) = 1)) or (not(//cac:TaxCategory[cac:TaxScheme/normalize-space(upper-case(cbc:ID))='VAT']/cbc:ID[normalize-space(.) = 'E']) and not(//cac:ClassifiedTaxCategory[cac:TaxScheme/normalize-space(upper-case(cbc:ID))='VAT']/cbc:ID[normalize-space(.) = 'E']))

Test your invoice against aligned-ibrp-e-01 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.