Skip to content

BR-DEX – XRechnung extension

BR-DEX-06: item identifier scheme not from the ISO 6523 list

ErrorXRechnung business rule (KoSIT)

The rule's own wording

[BR-DEX-06] Any scheme identifier in MUST be coded using one of the ISO 6523 ICD list.

Source: KoSIT XRechnung, version 3.0.2 (Schematron 2.6.0)

Meaning of the rule

An invoice line names a standard identifier of the item, such as a GTIN, but the scheme of that identifier is not a code from the ISO 6523 list. The extension requires the code so that the recipient knows which identifier system the number comes from and can look it up in their item master. For GTIN and EAN it is the code 0160. Free labels such as EAN or GTIN in the scheme field lead to a rejection.

The fix in the XML

Set in the schemeID attribute of cbc:ID under cac:StandardItemIdentification the code 0160 for GTIN, or another ISO 6523 code of the actual system. Internal numbers belong in the seller's item number BT-155 without a scheme.

Before – invalid
<cac:Item>
  <cbc:Name>Printer</cbc:Name>
  <cac:StandardItemIdentification>
    <cbc:ID schemeID="GTIN">4006381333931</cbc:ID>
  </cac:StandardItemIdentification>
</cac:Item>
After – corrected
<cac:Item>
  <cbc:Name>Printer</cbc:Name>
  <cac:StandardItemIdentification>
    <cbc:ID schemeID="0160">4006381333931</cbc:ID>
  </cac:StandardItemIdentification>
</cac:Item>

Questions and answers

Is the scheme mandatory for the standard identifier?

Yes. The norm always requires a scheme for BT-157, because without a system a standard identifier is not unique; the extension additionally checks that it comes from ISO 6523.

Where do I enter my own item number?

In BT-155, the seller's item number, without a scheme. The standard identifier is meant for cross-vendor numbers such as GTIN.

Other typical causes

  • The software writes EAN or GTIN as the scheme instead of the code 0160.
  • An internal item number was transmitted as a standard identifier with an invented scheme.
  • The scheme is missing in the item master and filled with a placeholder.

EN 16931 fields

  • BT-157
  • BG-31
  • BT-155

See also

Check your invoice

The XRechnung validator reports this rule with the line number and location – right in your browser, without upload.

Open the XRechnung validator

The rule in detail
UBL · Context (XPath)
cac:StandardItemIdentification/cbc:ID[@schemeID and $isExtension]
UBL · Schematron test
((not(contains(normalize-space(@schemeID), ' ')) and contains($ISO-6523-ICD-EXT-CODES, concat(' ', normalize-space(@schemeID), ' '))))
CII · Context (XPath)
ram:SpecifiedTradeProduct/ram:GlobalID[@schemeID and $isExtension]
CII · Schematron test
((not(contains(normalize-space(@schemeID), ' ')) and contains($ISO-6523-ICD-EXT-CODES, concat(' ', normalize-space(@schemeID), ' '))))

Explanation written on 14 September 2026