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
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")
Worried your invoices fail ibr-128-ae?
Upload your UBL XML — qmetrics runs 40+ core PINT-AE pre-submission checks (TRN, VAT math, addresses, totals and more) 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.