Fehlerkatalog · Rechnungspositionen · EN 16931
BR-23: Maßeinheit der Position fehlt
Jede Rechnungsposition muss eine Maßeinheit (BT-130) aus der Codeliste UN/ECE Recommendation 20 tragen.
| Regelkennung | BR-23 |
|---|---|
| Betroffenes Feld | BT-130 |
| Regelwerk | EN 16931 |
| UBL (XRechnung) | Invoice/cac:InvoiceLine/cbc:InvoicedQuantity/@unitCode |
| CII (ZUGFeRD) | CrossIndustryInvoice/…/ram:SpecifiedLineTradeDelivery/ram:BilledQuantity/@unitCode |
Woran es sich zeigt
Der Empfänger meldet eine fehlende oder unbekannte Mengeneinheit.
Warum es passiert
Es wird ein deutsches Wort statt eines Codes eingetragen: „Stück“, „Std.“, „Pauschal“. Die Maßeinheit ist in UBL kein eigenes Element, sondern ein Attribut an der Menge — beim Zusammenbauen des XML wird sie deshalb leicht übersehen.
Wie es zu beheben ist
- Als Attribut unitCode an InvoicedQuantity setzen, nicht als Text.
- Stück: C62. Stunde: HUR. Tag: DAY. Kilogramm: KGM. Meter: MTR. Pauschale: LS.
- Im Zweifel C62 — das ist die neutrale Zähleinheit und immer zulässig.
So sieht es richtig aus
<cbc:InvoicedQuantity unitCode="HUR">3</cbc:InvoicedQuantity>
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[].unitCode (Vorgabe: C62), und die API prüft ihre eigene Ausgabe, bevor sie sie ausliefert.
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.