Account
English

BR-CL-13: Item classification scheme is not a UNTDID 7143 code

EN 16931 core rule · Error · UBL / CII

StandardEN 16931-1 (European e-invoicing semantic model)SeverityError: the invoice is rejectedSyntaxUBL, CIIApplies toEvery EN 16931 invoice: XRechnung, ZUGFeRD 2.x / Factur-X (profiles EN 16931, EXTENDED, XRECHNUNG), Peppol BIS Billing 3.0, and national CIUS such as the Dutch NLCIUS or the Italian/Spanish profiles.

Official rule text

[BR-CL-13] Item classification identifier identification scheme identifier MUST be coded using one of the UNTDID 7143 list.

Why this error occurs

An item classification identifier (BT-158) must state its scheme in the listID attribute, and the scheme must be a code from UNTDID 7143. The rule checks cac:CommodityClassification/cbc:ItemClassificationCode/@listID (UBL) or ram:DesignatedProductClassification/ram:ClassCode/@listID (CII). It fires when the scheme name is written as text ("UNSPSC", "eClass", "CPV") or when an internal catalogue key is used as listID.

How to fix it

Set listID to the UNTDID 7143 code of the classification system, e.g. HS (Harmonised System), EN (EAN/GTIN), MP (product/service identification number), ZZZ (mutually defined); the version of the list can go into listVersionID. If you do not classify the item with a standard scheme, omit cac:CommodityClassification entirely rather than inventing a listID. Seller and buyer item numbers belong in cac:SellersItemIdentification and cac:BuyersItemIdentification, not in the classification.

Example (valid)

<cac:CommodityClassification>
  <cbc:ItemClassificationCode listID="HS">85171200</cbc:ItemClassificationCode>
</cac:CommodityClassification>

What the validator checks

Checked element (context):

UBL

cac:CommodityClassification/cbc:ItemClassificationCode[@listID]

Test (XPath):

((not(contains(normalize-space(@listID), ' ')) and contains(' AA AB AC AD AE AF AG AH AI AJ AK AL AM AN AO AP AQ AR AS AT AU AV AW AX AY AZ BA BB BC BD BE BF BG BH BI BJ BK BL BM BN BO BP BQ BR BS BT BU BV BW BX BY BZ CC CG CL CR CV DR DW EC EF EMD EN FS GB GN GMN GS HS IB IN IS IT IZ MA MF MN MP NB ON PD PL PO PPI PV QS RC RN RU RY SA SG SK SN SRS SRT SRU SRV SRW SRX SRY SRZ SS SSA SSB SSC SSD SSE SSF SSG SSH SSI SSJ SSK SSL SSM SSN SSO SSP SSQ SSR SSS SST SSU SSV SSW SSX SSY SSZ ST STA STB STC STD STE STF STG STH STI STJ STK STL STM STN STO STP STQ STR STS STT STU STV STW STX STY STZ SUA SUB SUC SUD SUE SUF SUG SUH SUI SUJ SUK SUL SUM TG TSN TSO TSP TSQ TSR TSS TST TSU UA UP VN VP VS VX ZZZ ', concat(' ', normalize-space(@listID), ' '))))

CII

ram:ClassCode[@listID]

Test (XPath):

((not(contains(normalize-space(@listID), ' ')) and contains(' AA AB AC AD AE AF AG AH AI AJ AK AL AM AN AO AP AQ AR AS AT AU AV AW AX AY AZ BA BB BC BD BE BF BG BH BI BJ BK BL BM BN BO BP BQ BR BS BT BU BV BW BX BY BZ CC CG CL CR CV DR DW EC EF EMD EN FS GB GN GMN GS HS IB IN IS IT IZ MA MF MN MP NB ON PD PL PO PPI PV QS RC RN RU RY SA SG SK SN SRS SRT SRU SRV SRW SRX SRY SRZ SS SSA SSB SSC SSD SSE SSF SSG SSH SSI SSJ SSK SSL SSM SSN SSO SSP SSQ SSR SSS SST SSU SSV SSW SSX SSY SSZ ST STA STB STC STD STE STF STG STH STI STJ STK STL STM STN STO STP STQ STR STS STT STU STV STW STX STY STZ SUA SUB SUC SUD SUE SUF SUG SUH SUI SUJ SUK SUL SUM TG TSN TSO TSP TSQ TSR TSS TST TSU UA UP VN VP VS VX ZZZ ', concat(' ', normalize-space(@listID), ' '))))

Check your invoice

Drop your XML or PDF on the validator and every failed rule is linked to its page here. Free, no account, the file is not stored.

Check your invoice →

Same check via API:

curl -F file=@invoice.xml https://einvoicechecker.com/v1/validate

Related rules

Frequently asked questions

What does BR-CL-13 mean?

BR-CL-13 is a en 16931 core rule: Item classification identifier identification scheme identifier MUST be coded using one of the UNTDID 7143 list.

Will my invoice be rejected because of BR-CL-13?

Yes. BR-CL-13 is flagged "fatal"; validators (KoSIT, Peppol access points, the German ZRE/OZG-RE portals) reject the invoice until it is fixed.

Which formats does BR-CL-13 apply to?

Every EN 16931 invoice: XRechnung, ZUGFeRD 2.x / Factur-X (profiles EN 16931, EXTENDED, XRECHNUNG), Peppol BIS Billing 3.0, and national CIUS such as the Dutch NLCIUS or the Italian/Spanish profiles. Syntax: UBL and CII.

Source: EN 16931-1:2017 schematron (CEN TC434, via Peppol BIS 3.0.20). Catalogue generated from the official schematron on 2026-10-14.