BR-64: The Item standard identifier (BT-157) shall have a Scheme identifier
Peppol BIS Billing 3.0.20 · UBL
Original rule text
[BR-64]-The Item standard identifier (BT-157) shall have a Scheme identifier.
exists(@schemeID)BR-64 is a fatal rule in the business layer of Peppol BIS Billing 3.0.20 · UBL. An invoice that breaks it is rejected. It refers to BT-157.
What this rule requires
This fatal rule requires that when an item standard identifier (BT-157) is provided, it carries a scheme identifier. In UBL, the element cac:InvoiceLine/cac:Item/cac:StandardItemIdentification/cbc:ID (or the CreditNoteLine equivalent) must have the schemeID attribute present; the UBL test only checks existence, not whether its value is non-empty. In CII, for each //ram:IncludedSupplyChainTradeLineItem, if ram:SpecifiedTradeProduct/ram:GlobalID exists, its @schemeID must be present and have a non-whitespace value; if ram:GlobalID is absent, the rule passes. A document fails in UBL when the schemeID attribute is missing, and in CII when ram:GlobalID is present but its @schemeID is missing, empty, or whitespace-only.
How to fix
In UBL, add a schemeID attribute to the cbc:ID element inside cac:StandardItemIdentification; the rule itself only checks that the attribute exists, but set it to the identifier of the scheme used. In CII, either remove ram:SpecifiedTradeProduct/ram:GlobalID if no item standard identifier is needed, or set its @schemeID to a non-whitespace value identifying the scheme. The rule does not define which scheme identifier values are allowed, so use a value from the applicable XRechnung code list for the item standard identifier scheme.
Guidance on this rule. The original text above is authoritative.
Where to go next
No published Peppol BIS Billing UBL release comparison lists a change to BR-64.
Validate an invoice against these rules · All release changes