BR-01An Invoice shall have a Specification identifier (BT-24).
Official rule text
The invoice must carry a specification identifier (BT-24), which tells the recipient which rule set the invoice was built against.
- Severity
- Error
- Applies to
- CII, UBL
- Rule set
- v2026-08-31
- Checked on
Written and checked against the official KoSIT rule set by Dmytro Yalanskyi, NormAPI.
Why does BR-01 happen?
Two causes, and the second is the nastier one. Either the field is missing entirely — it was never visible on a paper invoice, so nothing in the source system fills it. Or it carries an identifier inherited from an older template, in which case the invoice is checked against a rule set you did not mean and the findings match nothing.
What the validator checks
The expression the official KoSIT rule set evaluates — not paraphrased, but read from the Schematron file it ships. UBL and CII address different document trees, so the same rule reads differently in each.
- UBL
normalize-space(cbc:CustomizationID) != ''- CII
normalize-space(rsm:ExchangedDocumentContext/ram:GuidelineSpecifiedDocumentContextParameter/ram:ID) != ''
Source: rule set v2026-08-31
How do you fix BR-01?
Set BT-24 to the identifier of the version you actually produce. For XRechnung 3.0 that is urn:cen.eu:en16931:2017#compliant#urn:xeinkauf.de:kosit:xrechnung_3.0 — the namespace is xeinkauf.de. For a plain EN 16931 invoice with no national flavour, urn:cen.eu:en16931:2017 is enough. Identifiers from earlier versions look almost identical and differ only in namespace and version number, so an inherited one is nearly invisible on reading: compare it character by character. The value goes in cbc:CustomizationID in UBL, ram:GuidelineSpecifiedDocumentContextParameter/ram:ID in CII.
In the XML
A UBL fragment. The CII path is named above — same change, different element names.
<cbc:ID>RE-2026-0042</cbc:ID>
<cbc:IssueDate>2026-08-26</cbc:IssueDate>
<cbc:InvoiceTypeCode>380</cbc:InvoiceTypeCode><cbc:CustomizationID>urn:cen.eu:en16931:2017#compliant#urn:xeinkauf.de:kosit:xrechnung_3.0</cbc:CustomizationID>
<cbc:ID>RE-2026-0042</cbc:ID>
<cbc:IssueDate>2026-08-26</cbc:IssueDate>
<cbc:InvoiceTypeCode>380</cbc:InvoiceTypeCode>Related rules
NormAPI provides technical validation, not tax or legal advice.