Fehlerkatalog · Rechnungspositionen · EN 16931
BR-21: Positionsnummer fehlt
Jede Rechnungsposition muss eine Positionsnummer (BT-126) tragen.
| Regelkennung | BR-21 |
|---|---|
| Betroffenes Feld | BT-126 |
| Regelwerk | EN 16931 |
| UBL (XRechnung) | Invoice/cac:InvoiceLine/cbc:ID |
| CII (ZUGFeRD) | CrossIndustryInvoice/…/ram:IncludedSupplyChainTradeLineItem/ram:AssociatedDocumentLineDocument/ram:LineID |
Woran es sich zeigt
Der Empfänger meldet den Fehler für einzelne Positionen, oft für genau eine in einer sonst korrekten Rechnung.
Warum es passiert
Die Nummer wird aus einem Schleifenindex erzeugt, der bei 0 beginnt — und eine leere Zeichenkette oder eine 0 wird von manchen Prüfungen als fehlend gewertet. Zweiter Fall: Beim Löschen einer Position bleibt eine Lücke, und die Nummerierung wird neu erzeugt, aber nicht überall.
Wie es zu beheben ist
- Positionen fortlaufend ab 1 nummerieren.
- Die Nummer muss innerhalb der Rechnung eindeutig sein.
- Nicht mit der Rechnungsnummer (BT-1) verwechseln — in UBL heißen beide Elemente `cbc:ID`, stehen aber auf verschiedenen Ebenen.
Prüfen statt raten
Ob die Korrektur greift, sagt Ihnen der kostenlose Prüfer in ein paar Sekunden — ohne Anmeldung, die Datei bleibt im Arbeitsspeicher. Wer die Rechnung erzeugt statt sie zu reparieren: In POST /api/v1/create entspricht diesem Feld lines[].id (wird ohne Angabe fortlaufend vergeben), und die API prüft ihre eigene Ausgabe, bevor sie sie ausliefert.
Tritt meist zusammen auf mit
Die Regel ist hier sinngemäß wiedergegeben, in der Fassung, in der dieser Prüfer sie anwendet. Verbindlich ist der Text der EN 16931 bzw. der XRechnung-Spezifikation der KoSIT; die vollständige Prüfung leistet der KoSIT-Referenzvalidator. Diese Seite ist keine Rechts- oder Steuerberatung.