Attestwire › Rule reference › BR-CL-26
BR-CL-26 A delivery location identifier scheme must be an ISO 6523 ICD code
noun · EN 16931 · fatal · BT-71
For a sample invoice, the library reports: The scheme identifier on the deliver-to location identifier (BT-71-1) is "9930", which is not in the ISO 6523 ICD list.
- Business term
BT-71- Severity
fatal
The fix
Set deliverToLocationId.schemeId to an ISO 6523 ICD code — "0088" for a GLN, which is what almost every delivery-point identifier in practice is. Drop the schemeId and keep the bare value if the identifier is one you and the buyer agreed privately.
A passing value
"deliverToLocationId": { "schemeId": "0088", "value": "4304171000002" }What the library returns
The full error returned by @attestwire/en16931. It includes the rule ID,
affected field and suggested correction. Developers can use this object in their application:
{
"rule": "BR-CL-26",
"field": "BT-71",
"severity": "fatal",
"message": "The scheme identifier on the deliver-to location identifier (BT-71-1) is \"9930\", which is not in the ISO 6523 ICD list. BT-71 is how an invoice names a delivery point precisely enough to be matched automatically — a warehouse door, a ward, a store — where the postal address alone is ambiguous because several locations share it. That matching is only possible if the receiver knows which registry the identifier belongs to, which is what the scheme says.",
"fix": "Set deliverToLocationId.schemeId to an ISO 6523 ICD code — \"0088\" for a GLN, which is what almost every delivery-point identifier in practice is. Drop the schemeId and keep the bare value if the identifier is one you and the buyer agreed privately.",
"example": "\"deliverToLocationId\": { \"schemeId\": \"0088\", \"value\": \"4304171000002\" }",
"xpath": "/ubl:Invoice/cac:Delivery/cac:DeliveryLocation/cbc:ID/@schemeID",
"docsUrl": "https://attestwire.com/rules/BR-CL-26"
}
xpath is always a UBL path. On a CII invoice, look for the
matching CII field instead.