Skip to content

BR-DE-21: Specification identifier (BT-24) does not match XRechnung

Official message

[BR-DE-21] Das Element "Specification identifier" (BT-24) soll syntaktisch der Kennung des Standards XRechnung entsprechen.

XRechnung (CII) · Warning · Message language: German · Version: xrechnung-3.0.2-validator-configuration-2026-08-31

[BR-DE-21] Das Element "Specification identifier" (BT-24) soll syntaktisch der Kennung des Standards XRechnung entsprechen.

XRechnung (UBL) · Warning · Message language: German · Version: xrechnung-3.0.2-validator-configuration-2026-08-31
Severity
Warning Note: this does not make the invoice invalid, but it should be checked.
Applies to
XRechnung (CII), XRechnung (UBL)
Affected fields
BT-24

What does this mean?

The specification identifier (BT-24) should contain the XRechnung identifier so that the invoice is recognised as XRechnung. The invoice contains a different identifier, e.g. that of EN 16931 or of a ZUGFeRD profile. The message is a warning.

Typical causes

The invoice was generated with a ZUGFeRD/Factur-X profile or as a plain EN 16931 invoice, but validated against the XRechnung rules.
The identifier contains an outdated XRechnung version or a typo.

How to fix the error

If an XRechnung is intended, enter the XRechnung 3.0 identifier in BT-24: urn:cen.eu:en16931:2017#compliant#urn:xeinkauf.de:kosit:xrechnung_3.0 (for the extension or CVD the correspondingly extended identifier).
CII: rsm:ExchangedDocumentContext/ram:GuidelineSpecifiedDocumentContextParameter/ram:ID, UBL: cbc:CustomizationID.
If no XRechnung is intended, validate the invoice against the matching profile instead of XRechnung.
Generate and validate the invoice again.

In E-Rechnungsfreund

In the invoice form ("Experte" view), section "Profil & Prozesssteuerung (BG-2)" (profile), select "XRechnung" as "ZUGFeRD-Profil"; the field "Spezifikationskennung (BT-24)" is then set to the XRechnung identifier if it was empty or contained the EN 16931 identifier. Otherwise correct the identifier there manually.

Example

Wrong

<rsm:ExchangedDocumentContext>
  <ram:GuidelineSpecifiedDocumentContextParameter>
    <ram:ID>urn:cen.eu:en16931:2017</ram:ID>
  </ram:GuidelineSpecifiedDocumentContextParameter>
</rsm:ExchangedDocumentContext>

Correct

<rsm:ExchangedDocumentContext>
  <ram:GuidelineSpecifiedDocumentContextParameter>
    <ram:ID>urn:cen.eu:en16931:2017#compliant#urn:xeinkauf.de:kosit:xrechnung_3.0</ram:ID>
  </ram:GuidelineSpecifiedDocumentContextParameter>
</rsm:ExchangedDocumentContext>
For developers: test expression per syntax

XRechnung (CII) (CII)

Context: /rsm:CrossIndustryInvoice/rsm:ExchangedDocumentContext

ram:GuidelineSpecifiedDocumentContextParameter/ram:ID = $XR-CIUS-ID or ram:GuidelineSpecifiedDocumentContextParameter/ram:ID = $XR-EXTENSION-ID or ram:GuidelineSpecifiedDocumentContextParameter/ram:ID = $XR-CVD-ID

XRechnung (UBL) (UBL)

Context: /ubl:Invoice | /cn:CreditNote

cbc:CustomizationID = $XR-CIUS-ID or cbc:CustomizationID = $XR-EXTENSION-ID or cbc:CustomizationID = $XR-CVD-ID

Related validation rules

  • BR-DE-1: Payment instructions (BG-16) are missing
  • BR-DE-10: Deliver to city (BT-77) is missing
  • BR-DE-11: Deliver to post code (BT-78) is missing
  • BR-DE-14: VAT category rate (BT-119) is missing in the VAT breakdown
  • BR-DE-15: Buyer reference (BT-10) is missing
  • BR-DE-16: Seller VAT ID, tax number or tax representative is missing

Frequently asked questions

Is a ZUGFeRD invoice with this warning faulty?

Not necessarily. The warning only states that the invoice is not marked as XRechnung. If the recipient requires an XRechnung (e.g. public contracting authorities), the XRechnung identifier must be used.

Last updated:
Explanation of the validation rule, not legal or tax advice.