qmetrics
Fatal — invoice rejected TRN & registration UAE-specific rule PINT-AE 2026.5

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

What is ibr-135-ae?

ibr-135-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 the buyer (customer) party block and belongs to the TRN & registration rule group. An e-invoice that fails ibr-135-ae is rejected by the Accredited Service Provider gateway before it reaches the FTA.

What the official rule says

Either Buyer identifier (IBT-046) or Buyer VAT identifier (IBT-048 ) MUST be present when the Invoice transaction type code [BTAE-02] is other than XXXXXXX1 (Exports) and scheme identifier (IBT-049-1) is '0235' and buyer electronic address (IBT-049) is not '1XXXXXXXXX'
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 buyer (customer) party block of your UBL 2.1 invoice:

cac:AccountingCustomerParty/cac:Party

Business terms referenced

Term ID Field Other rules
IBT-046 Buyer identifier view →
IBT-048 Buyer VAT identifier view →
BTAE-02 Invoice transaction type code view →
IBT-049-1 scheme identifier view →
IBT-049 Buyer electronic address view →

Field names are derived automatically from the official rule corpus.

Why this happens

For the invoice transaction types that require it, at least one of the buyer identifier (IBT-046) or the buyer VAT identifier / TRN (IBT-048) must be present. A B2B invoice with a completely anonymous buyer is not accepted.

How to fix it

1. Add the buyer's TRN if they are VAT-registered. 2. Otherwise provide a buyer identifier (e.g. their registration number). 3. Only simplified (B2C) transaction types may omit both — verify your BTAE-02 flags.

Technical test condition (Schematron)
((cac:PartyIdentification/cbc:ID or cac:PartyTaxScheme/cbc:CompanyID) and (not(matches(../../cbc:ProfileExecutionID, "^[01]{7}1$")) and cbc:EndpointID/@schemeID = "0235" and not(matches(cbc:EndpointID, "^1\d{9}$")))) or not(not(matches(../../cbc:ProfileExecutionID, "^[01]{7}1$")) and cbc:EndpointID/@schemeID = "0235" and not(matches(cbc:EndpointID, "^1\d{9}$")))

Worried your invoices fail ibr-135-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.