qmetrics
Fatal — invoice rejected Party & address UAE-specific rule PINT-AE 2026.5

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

What is ibr-128-ae?

ibr-128-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 a postal address and belongs to the Party & address rule group. An e-invoice that fails ibr-128-ae is rejected by the Accredited Service Provider gateway before it reaches the FTA.

What the official rule says

When Country code (IBT-040, IBT-055, IBT-069, IBT-080) is AE, then country subdivision (IBT-039, IBT-054, IBT-068, IBT-079) must be one of (AUH, DXB, SHJ, UAQ, FUJ, AJM, RAK).
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 a postal address of your UBL 2.1 invoice:

cac:PostalAddress

Business terms referenced

Term ID Field Other rules
IBT-040 Country codes in an invoice view →
IBT-055 Seller country code view →
IBT-069 MUST contain a Tax representative country code view →
IBT-080 MUST contain a Deliver to country code view →
IBT-039 Seller country subdivision view →
IBT-054 Buyer country subdivision view →
IBT-068 view →
IBT-079 Deliver to country subdivision view →

Field names are derived automatically from the official rule corpus.

Why this happens

Whenever an address on the invoice has country code AE, its 'country subdivision' field must carry the emirate. ERP address records frequently have the emirate stored in a free-text city field or not at all, so the exporter leaves CountrySubentity empty — a fatal rejection.

How to fix it

1. In the party's address record, populate the emirate/state field. 2. Use the emirate abbreviation your ASP expects (e.g. DXB, AUH, SHJ). 3. Check every AE address on the invoice: seller, buyer, delivery.

Compliant XML

<cac:PostalAddress>
  <cbc:StreetName>Street Name</cbc:StreetName>
  <cbc:CityName>Dubai</cbc:CityName>
  <cbc:CountrySubentity>DXB</cbc:CountrySubentity>
  <cac:Country><cbc:IdentificationCode>AE</cbc:IdentificationCode></cac:Country>
</cac:PostalAddress>
Technical test condition (Schematron)
(cac:Country/cbc:IdentificationCode="AE" and cbc:CountrySubentity = ("AUH", "DXB", "SHJ", "UAQ", "FUJ", "AJM", "RAK")) or not(cac:Country/cbc:IdentificationCode="AE")

Test your invoice against ibr-128-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.