BR-23EN 16931

BR-23: Mengeneinheit in der Rechnungsposition fehlt

Eine Rechnungszeile hat eine Menge, aber keinen Einheitencode (BT-130). Häufigster Auslöser: Die Einheit ist als Freitext wie „Std.

Regeltext im Prüfregelwerk

An Invoice line (BG-25) shall have an Invoiced quantity unit of measure code (BT-130).

BG-25BT-129BT-130

BR-23 ist die Schwesterregel zu BR-22: Dort fehlt die Menge selbst, hier die Einheit dazu. Beide stehen in der CII-Syntax im selben XML-Element.

Was die Regel prüft

Zu jeder abgerechneten Menge (BT-129) gehört ein Einheitencode (BT-130; BT = Business Term, das nummerierte Feld der Norm). Erwartet wird kein Freitext, sondern ein Code aus der UN/ECE-Recommendation-20-Liste (ergänzt um Rec 21). Die für Handwerk und B2B wichtigsten:

  • H87 = Stück
  • HUR = Stunde
  • MTR = Meter, MTK = Quadratmeter, MTQ = Kubikmeter
  • KGM = Kilogramm
  • LTR = Liter
  • DAY = Tag
  • C62 = Einheit (neutrale Zähleinheit)

In der XML steht der Code als Attribut: <ram:BilledQuantity unitCode="HUR">8</ram:BilledQuantity>.

Warum sie in der Praxis fehlschlägt

Fast immer sind es Freitext-Einheiten aus den Stammdaten: „Std.", „Stk", „pausch.", „m²". Auf der Papierrechnung völlig üblich, aber kein gültiger Code. Manche Software schreibt den Freitext ins unitCode-Attribut (dann meckert die Codelisten-Prüfung), andere lassen das Attribut bei unbekannter Einheit ganz weg, und BR-23 schlägt an.

Zweiter Fall: Importierte Positionen aus Aufmaß- oder Kalkulationsprogrammen, deren Einheitenkatalog nicht auf UN/ECE gemappt ist.

So behebst du den Fehler

Hinterleg in deinen Artikel- oder Leistungsstammdaten die Einheit als Auswahl aus der Codeliste, nicht als Freitext, und lass die Anzeige („Std.") getrennt vom Code (HUR) laufen. Wenn du unsicher bist, welcher Code passt: C62 ist die neutrale Zähleinheit und immer gültig, H87 das gängige „Stück". Belegschmied bietet die Einheiten als Auswahlliste mit deutschen Bezeichnungen an und schreibt intern immer den UN/ECE-Code.

Wer XML selbst erzeugt: Das Attribut heißt unitCode und sitzt direkt an ram:BilledQuantity, nicht in einem eigenen Element.

XML-Beispiel: vorher und nachher

Menge vorhanden, Einheitencode fehlt:

<!-- verletzt BR-23: BilledQuantity ohne unitCode-Attribut -->
<ram:SpecifiedLineTradeDelivery>
  <ram:BilledQuantity>8</ram:BilledQuantity>
</ram:SpecifiedLineTradeDelivery>

Korrigiert mit UN/ECE-Code für Stunden:

<ram:SpecifiedLineTradeDelivery>
  <ram:BilledQuantity unitCode="HUR">8</ram:BilledQuantity>
</ram:SpecifiedLineTradeDelivery>

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.

Regeln, die oft zusammen auftreten

← Alle Fehlermeldungen im Überblick