BR-DE-21: Specification identifier entspricht nicht der XRechnung-Kennung
Das Feld BT-24 muss exakt die Kennung des XRechnung-Standards enthalten. Häufigster Auslöser: Die Software schreibt eine ZUGFeRD-Profil-Kennung oder die URN einer veralteten XRechnung-Version hinein.
Das Element "Specification identifier" (BT-24) soll syntaktisch der Kennung des Standards XRechnung entsprechen.
Diese Meldung sagt: Die Datei behauptet gar nicht, eine XRechnung zu sein. Das Feld, das den Standard deklariert, enthält eine andere oder falsch geschriebene Kennung.
Was die Regel prüft
Jede E-Rechnung nach EN 16931 trägt in BT-24 (BT = Business Term, das nummerierte Feld der Norm) eine Kennung, die angibt, nach welcher Spezifikation sie erstellt wurde. Für XRechnung 3.0 lautet sie:
urn:cen.eu:en16931:2017#compliant#urn:xeinkauf.de:kosit:xrechnung_3.0
In der CII-Syntax steht dieser Wert in rsm:ExchangedDocumentContext/ram:GuidelineSpecifiedDocumentContextParameter/ram:ID. BR-DE-21 prüft per Muster, ob der Wert syntaktisch eine gültige XRechnung-Kennung ist. Empfangsplattformen von Behörden entscheiden anhand dieses Feldes, mit welchem Regelwerk sie validieren.
Warum sie in der Praxis fehlschlägt
- ZUGFeRD-Profil statt XRechnung-Kennung. Viele Programme erzeugen standardmäßig das ZUGFeRD-Profil EN 16931 mit der Kennung
urn:cen.eu:en16931:2017. Das ist eine gültige EN-16931-Rechnung, aber keine XRechnung. Wer an eine Behörde liefert, die XRechnung verlangt, bekommt BR-DE-21. - Veraltete Versions-URN. Bis Version 2.3 begann der XRechnung-Teil der Kennung mit
urn:xoev-de:kosit:standard:xrechnung_…. Seit 3.0 heißt esurn:xeinkauf.de:kosit:xrechnung_3.0. Software, die noch die alte URN schreibt, fällt bei einem 3.0-Validator durch. - Tippfehler. Die Kennung wird zeichengenau geprüft, auch Groß- und Kleinschreibung. Ein manuell eingetragener Wert mit einem Leerzeichen oder einem falschen Trennzeichen (
#compliant#ist Pflichtbestandteil) reicht für den Fehler.
So behebst du den Fehler
Stell in deiner Software das Zielformat auf XRechnung (bzw. das ZUGFeRD-Profil XRECHNUNG) um oder aktualisiere sie auf eine Version, die XRechnung 3.0 unterstützt. Den Wert von Hand in der XML zu ändern genügt nur, wenn die Rechnung auch inhaltlich die strengeren XRechnung-Regeln erfüllt (z. B. Leitweg-ID in BT-10, Verkäufer-Kontakt), sonst tauschst du BR-DE-21 nur gegen andere Fehler. Belegschmied setzt die Kennung beim Erzeugen automatisch passend zum gewählten Format.
XML-Beispiel: vorher und nachher
<rsm:ExchangedDocumentContext>
<ram:GuidelineSpecifiedDocumentContextParameter>
<!-- verletzt BR-DE-21: nur EN-16931-Kennung, keine XRechnung -->
<ram:ID>urn:cen.eu:en16931:2017</ram:ID>
</ram:GuidelineSpecifiedDocumentContextParameter>
</rsm:ExchangedDocumentContext>
<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>
Rechnung selbst prüfen
Lade deine Datei hoch und sieh in Sekunden, welche Regeln sie besteht und welche nicht. Kostenlos, ohne Anmeldung, nichts wird gespeichert.