Peppol BIS Billing 3.0.21 · UBL

BR-65: The Item classification identifier (BT-158) shall have a Scheme identifier

Peppol BIS Billing 3.0.21 · UBL

fatalbusiness

Original rule text

[BR-65]-The Item classification identifier (BT-158) shall have a Scheme identifier.

Stored validation assertion
exists(@listID)

BR-65 is a fatal rule in the business layer of Peppol BIS Billing 3.0.21 · UBL. An invoice that breaks it is rejected. It refers to BT-158.

What this rule requires

In UBL, the rule applies to cac:InvoiceLine/cac:Item/cac:CommodityClassification/cbc:ItemClassificationCode and cac:CreditNoteLine/cac:Item/cac:CommodityClassification/cbc:ItemClassificationCode, and requires the @listID attribute to exist. The UBL test only checks exists(@listID), so it requires the attribute to be present, even if empty. In CII, the rule applies to //ram:DesignatedProductClassification and passes if ram:ClassCode is absent, or if ram:ClassCode has a @listID with non-whitespace content. If ram:ClassCode is present but its @listID is missing or empty/whitespace, the rule fails.

How to fix

For UBL, add a listID attribute to the cbc:ItemClassificationCode element and set it to a value identifying the classification scheme; the rule does not define the allowed values, so consult the relevant code list or specification. For CII, if you include ram:ClassCode inside ram:DesignatedProductClassification, set its listID attribute to a non-empty scheme identifier; alternatively, if no classification code is required, the element may be omitted.

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-65.

Validate an invoice against these rules · All release changes