Fehlerkatalog · Kopfdaten und Beteiligte · EN 16931
BR-05: Währungscode fehlt
Jede Rechnung muss einen Währungscode (BT-5) nach ISO 4217 tragen, also zum Beispiel EUR.
| Regelkennung | BR-05 |
|---|---|
| Betroffenes Feld | BT-5 |
| Regelwerk | EN 16931 |
| UBL (XRechnung) | Invoice/cbc:DocumentCurrencyCode |
| CII (ZUGFeRD) | CrossIndustryInvoice/…/ram:ApplicableHeaderTradeSettlement/ram:InvoiceCurrencyCode |
Woran es sich zeigt
Der Empfänger oder ein Prüfdienst meldet ein Pflichtfeld als fehlend und weist die Rechnung ab, bevor sie überhaupt in der Buchhaltung ankommt.
Warum es passiert
In UBL steht die Währung sowohl im Element `DocumentCurrencyCode` als auch als Attribut `currencyID` an jedem Betrag. Fehlt eines von beidem oder widersprechen sie sich, schlägt die Prüfung fehl.
Wie es zu beheben ist
- DocumentCurrencyCode auf Dokumentebene setzen.
- An jedem Betragselement das Attribut currencyID mit derselben Währung führen.
- Ein Euro-Zeichen oder „Euro“ als Text ist kein gültiger Code — es muss EUR heißen.
So sieht es richtig aus
<cbc:DocumentCurrencyCode>EUR</cbc:DocumentCurrencyCode> … <cbc:PayableAmount currencyID="EUR">319.43</cbc:PayableAmount>
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 currency, 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.