Skip to main content

BR-DE-21 Specification identifier should match the XRechnung syntax

Under the XRechnung standard specification, the specification identifier (BT-24 / CustomizationID) declares the exact profile and extension version to which the electronic invoice conforms. For XRechnung 3.0.x, the specification identifier must match the official Uniform Resource Name (URN): "urn:cen.eu:en16931:2017#compliant#urn:xeinkauf.de:kosit:xrechnung_3.0". Validation engines and recipient gateways (such as KoSIT validator and Peppol access points) use this identifier to select the applicable Schematron rulepack and verify profile compliance.

Problem Description

WARNING

German XRechnung rule (KoSIT, BR-DE) · XRechnung 3.0

Interactive pipeline

Click a stage to see what it checks, or type a rule ID to light up the stage that reports it.

Try:

BR-DE-21 XRechnung rule (Germany)

Reported in stage 3: National rules (CIUS).

Level warning: on its own, the invoice is still accepted.

Stage 3 · What it checks

  • The specification identifier in BT-24 selects the rule set, for example XRechnung 3.0 or Peppol BIS Billing 3.0.
  • XRechnung adds the German BR-DE rules: buyer reference (BT-10), seller contact, payment instructions.
  • Peppol adds PEPPOL-EN16931 and country rules. XRechnung applies some PEPPOL-EN16931 rules too.

Example codes

Typical fix

Fill the fields the rule set requires in your master data, such as the Leitweg-ID in BT-10 or the seller contact.

A validator checks an e-invoice in stages. First the file must be well-formed XML that matches the UBL or CII schema (XSD). Then the EN 16931 business rules run: BR core rules, BR-CO calculations, BR-CL code lists, BR-DEC decimals and VAT-category rules such as BR-S. Next come the national or network rules that BT-24 selects: BR-DE for XRechnung, PEPPOL-EN16931 for Peppol BIS Billing. The report lists every failed rule: one error means reject, warnings alone still mean accept. BR-DE-21: XRechnung rule (Germany), reported in the stage “National rules (CIUS)”. Rule sets: KoSIT validator 1.6.3 with the XRechnung configuration of 31 Aug 2026 (EN 16931 artefacts 1.3.16), Peppol BIS Billing 3.0.21.

Context and Significance

An incorrect or plain EN 16931 CustomizationID prevents the KoSIT validator from recognizing the XRechnung extension, causing national rule validation to be bypassed or flagged as a profile mismatch.

Solution

In your XML generator or e-invoicing export module, set BT-24 to the official XRechnung 3.0 CustomizationID string: urn:cen.eu:en16931:2017#compliant#urn:xeinkauf.de:kosit:xrechnung_3.0. In UBL 2.1 syntax, populate <cbc:CustomizationID> directly under <Invoice> or <CreditNote>. In UN/CEFACT CII syntax, populate <ram:GuidelineSpecifiedDocumentContextParameter><ram:ID> inside <rsm:CrossIndustryInvoice><rsm:ExchangedDocumentContext>.

Quick actions

Valid Examples

  • BT-24 = "urn:cen.eu:en16931:2017#compliant#urn:xeinkauf.de:kosit:xrechnung_3.0"
  • BT-24 = "urn:cen.eu:en16931:2017#compliant#urn:xeinkauf.de:kosit:xrechnung_3.0#conformant#urn:xeinkauf.de:kosit:extension:xrechnung_3.0" (XRechnung extension)

Invalid Examples

  • BT-24 = "urn:cen.eu:en16931:2017" (Base EN 16931 identifier without XRechnung extension URN)
  • BT-24 = "XRechnung_3.0" (Informal text string instead of standardized URN syntax)
  • BT-24 = "urn:cen.eu:en16931:2017#compliant#urn:xoev-de:kosit:standard:xrechnung_2.3" (Legacy XRechnung 2.x identifier; not valid for XRechnung 3.0)
  • BT-24 = "urn:cen.eu:en16931:2017#compliant#urn:fdc:peppol.eu:2017:poacc:billing:3.0" (Peppol BIS Billing 3.0 is a different CIUS, not an XRechnung identifier)

Code Examples

Valid XML
<cbc:CustomizationID>urn:cen.eu:en16931:2017#compliant#urn:xeinkauf.de:kosit:xrechnung_3.0</cbc:CustomizationID>
Invalid XML
<cbc:CustomizationID>urn:cen.eu:en16931:2017</cbc:CustomizationID>

Affected Fields

Validation Tools