Rule at a Glance
| ID | Severity | Context (XPath) |
|---|---|---|
| Series ref. BR-53 | Fatal (error) | cbc:EndpointID[@schemeID='0088'] | cac:PartyIdentification/cbc:ID[@schemeID='0088'] | cbc:CompanyID[@schemeID='0088'] |
| Schematron ID: ibr-068 | Field: GLN format across IBT-034, IBT-049, IBT-029, IBT-046, IBT-060, IBT-030, IBT-047, IBT-061 | ||
Classification
Contextual — the rule fires only where an identifier is declared under scheme 0088, the ISO 6523 code for GS1 Global Location Numbers. Invoices that identify parties by TIN under scheme 0235 never meet it; declare 0088 anywhere and the value must survive a genuine GS1 format check.
What the Rule Is Checking
The assert applies two tests to any 0088-flagged value: it must consist of digits only, and it must pass the GS1 check-digit algorithm — the schematron implements the mod-10 weighted sum and compares the result against the final digit. The check covers endpoints, party identifiers and legal registration identifiers for seller, buyer and payee alike. A wrong check digit, an embedded space or a letter anywhere in the value is a fatal error.
Why This Rule Exists
Declaring scheme 0088 is a claim that the value is a number issued by GS1, resolvable in a global registry. Validation cannot query GS1 in real time, but the check digit gives it the next best thing: an arithmetic proof that the number is at least well-formed. The rule exists to stop internal account codes and free-text location labels travelling under a scheme that promises registry-grade identity — a mislabelled identifier is worse than a missing one, because downstream systems would trust and act on it.
Standard / Code List
Scheme 0088 sits in the same ISO 6523 ICD registry as the UAE's 0235, covered in Peppol EAS and ICD Participant Identifiers. GLNs are 13-digit GS1 identifiers assigned to legal entities and physical locations.
UAE Data Example
PASSES ✓: <cac:PartyIdentification><cbc:ID schemeID="0088">5060012349998</cbc:ID></cac:PartyIdentification> — thirteen digits with a valid mod-10 check digit.
FAILS ✗: A retail supplier maps its internal site code — "DXB-WH-04" — into the party identifier and labels it 0088 because the mapping template defaulted to that scheme. Non-numeric characters fail the first test before the check digit is even computed.
What Your ERP / IT Team Must Ensure
Only emit scheme 0088 where the master data field genuinely holds a GS1-issued GLN — grocery, FMCG and retail supply chains are where these live in the UAE. Strip formatting characters before output, since a GLN stored with separators fails the digits-only test. If no GLN exists, identify the party by TIN under 0235 instead of defaulting the scheme; a template default of 0088 turns every non-GS1 identifier into a fatal error. Validate check digits at master data entry, not at invoice time.
Related Rules
The scheme attribute itself is mandated by BR-49 (ibr-062) and BR-50 (ibr-063) for seller and buyer endpoints. This rule adds format policing on top, but only for values claiming to be GLNs.
