Auf dieser Seite
Die kurze Antwort
BR-DEC-18 schlägt fehl, wenn cac:LegalMonetaryTotal/cbc:PayableAmount mehr als zwei Zeichen nach dem Dezimalpunkt hat. Schreiben Sie den fälligen Zahlungsbetrag mit höchstens zwei Nachkommastellen: 70.00, nicht 70.000.
Schon das Auffüllen löst die Regel aus: Das aufgezeichnete 70.000 ist der richtige Betrag, mit einer Null zu viel geschrieben. UBL-DT-01 meldet dasselbe Element daneben.
Was die Regel prüft
Die Regel läuft auf cac:LegalMonetaryTotal, nimmt den Text von cbc:PayableAmount und schlägt fehl, wenn mehr als zwei Zeichen auf den Dezimalpunkt folgen. Eine nachgestellte Null zählt wie jede andere Ziffer.
Das Format wird unabhängig von der Arithmetik geprüft, die den Wert ergeben hat. Im Versuch wurde 70.004 nur von dieser Regel und UBL-DT-01 gemeldet: Mit vorhandenem Rundungsbetrag rundet BR-CO-16 den fälligen Zahlungsbetrag vor dem Vergleich und hatte daher nichts einzuwenden.
Der Vorauszahlungsbetrag und der Rundungsbetrag daneben haben eigene Nachkommastellenregeln. Im Versuch meldete ein Rundungsbetrag von -0.200 die Regeln BR-DEC-17 und UBL-DT-01, nicht diese Regel.
| Begriff | Bedeutung | UBL-Element |
|---|---|---|
| BT-115 | Fälliger Zahlungsbetrag | cac:LegalMonetaryTotal/cbc:PayableAmount |
Wie es in einer Integration dazu kommt
Mögliche Ursachen, abgeleitet aus der Form der Regel und nicht aus gemessener Nutzung:
- Der fällige Betrag wird aus einer Summe einschließlich Umsatzsteuer mit höherer Genauigkeit abgeleitet, abzüglich einer Vorauszahlung, und ohne abschließende Rundung geschrieben.
- Eine Bargeldrundung auf eine gröbere Stufe, etwa 0.05, wird in einem Typ berechnet, der drei Nachkommastellen behält, und das Ergebnis wird mit dieser Skala geschrieben.
- Beträge werden als Gleitkommazahlen gehalten und mit fest drei Nachkommastellen formatiert.
So korrigieren Sie das Dokument
- Berechnen Sie den fälligen Betrag aus den geschriebenen Summen: Summe einschließlich Umsatzsteuer minus Vorauszahlungsbetrag plus Rundungsbetrag.
- Runden Sie das Ergebnis auf zwei Nachkommastellen und formatieren Sie es mit höchstens zwei, ohne Leerzeichen.
- Schreiben Sie es in
cac:LegalMonetaryTotal/cbc:PayableAmount, das letzte Element der Gesamtbeträge. - Formatieren Sie ein vorhandenes
cbc:PrepaidAmountundcbc:PayableRoundingAmountgenauso, da auch für sie jeweils zwei Nachkommastellen gelten.
Vorher und nachher
Dies sind Ausschnitte, keine vollständigen Dokumente. Die vollständigen synthetischen Dokumente, aus denen sie stammen, sind unten verlinkt.
Ausschnitt der fehlerhaften Rechnung: 80.20 - 10.00 - 0.20 ist als 70.000 geschrieben
<cac:LegalMonetaryTotal>
<!-- line, net, allowance and charge totals omitted from this fragment -->
<cbc:TaxInclusiveAmount currencyID="GBP">80.20</cbc:TaxInclusiveAmount>
<cbc:PrepaidAmount currencyID="GBP">10.00</cbc:PrepaidAmount>
<cbc:PayableRoundingAmount currencyID="GBP">-0.20</cbc:PayableRoundingAmount>
<cbc:PayableAmount currencyID="GBP">70.000</cbc:PayableAmount>
</cac:LegalMonetaryTotal>Ausschnitt der korrigierten Rechnung: der fällige Betrag als 70.00 geschrieben
<cac:LegalMonetaryTotal>
<!-- line, net, allowance and charge totals omitted from this fragment -->
<cbc:TaxInclusiveAmount currencyID="GBP">80.20</cbc:TaxInclusiveAmount>
<cbc:PrepaidAmount currencyID="GBP">10.00</cbc:PrepaidAmount>
<cbc:PayableRoundingAmount currencyID="GBP">-0.20</cbc:PayableRoundingAmount>
<cbc:PayableAmount currencyID="GBP">70.00</cbc:PayableAmount>
</cac:LegalMonetaryTotal>Nur cbc:PayableAmount ist anders geschrieben, 70.000 im fehlerhaften Dokument und 70.00 im korrigierten; der fällige Betrag ist in beiden derselbe, 80.20 - 10.00 - 0.20. Das fehlerhafte Dokument meldet BR-DEC-18 an den Gesamtbeträgen und UBL-DT-01 am Zahlungsbetrag selbst. UBL-DT-01 ist die Prüfung des UBL-Datentyps, die jedes Betragselement auf zwei Nachkommastellen begrenzt, ausgenommen den Artikelnettopreis und die Beträge eines Nachlasses auf den Preis; deshalb wiederholt sie diesen Befund für den fälligen Betrag. Die Korrektur des Formats behebt beide.
Was der Validator gemeldet hat
- Die fehlerhafte Rechnung meldet BR-DEC-18 und UBL-DT-01. Das korrigierte Dokument besteht jeden Prüfschritt ohne Befunde.Fehlerhaftes XML herunterladenKorrigiertes XML herunterladen
Aufgezeichnet mit phive 12.1.0 / phive-rules-peppol 4.5.6 / Saxon-HE 12.10, der Engine hinter dem kostenlosen Validator, mit synthetischen Daten. Ein aufgezeichnetes Ergebnis ist ein Regressionsnachweis für diese Dokumente, keine Zertifizierung.
Wo die Regel gilt
- Gilt gleichermaßen für UBL
InvoiceundCreditNote. Im Versuch meldete eine Gutschrift mit einem fälligen Betrag von70.000dieselben zwei Befunde. - Ein negativer fälliger Betrag, wie bei manchen Gutschriften oder überzahlten Rechnungen, wird genauso gezählt: Das Minuszeichen steht vor dem Dezimalpunkt und spielt keine Rolle.
- Die Regel ignoriert die Währung. Sie verbietet zwei Nachkommastellen für eine Währung ohne Untereinheit nicht, und sie erlaubt keine dritte für eine Währung, deren Untereinheit drei Stellen hat.
Verwandte Regeln
- UBL-DT-01 meldet denselben fälligen Betrag als allgemeine Grenze von zwei Nachkommastellen für Beträge
- BR-CO-16 prüft den Wert des fälligen Betrags gegen die Summe einschließlich Umsatzsteuer, den Vorauszahlungsbetrag und den Rundungsbetrag
- BR-DEC-12 wendet dieselbe Grenze auf die Summe ohne Umsatzsteuer an
- Alle Regeln der Referenz ansehen
- Hintergrund (auf Englisch): Understanding EN 16931 validation errors
Umfang und Quelle
Geschrieben für Peppol BIS Billing 3.0.21 (May 2026), EN 16931 1.3.16, angewendet auf Invoice- und CreditNote-Dokumente in UBL 2.1. Andere Profile, Syntaxen und Releases können diese Kennung anders definieren. Version des Hinweiskatalogs 2026-09-24.1: Quelle geprüft am 2026-09-24, Erklärung zuletzt aktualisiert am 2026-09-24.
Die offizielle Definition von BR-DEC-18 (auf Englisch) enthält den normativen Wortlaut und den Test. Diese Seite ist unsere Erklärung dazu, keine Kopie.
Die Erklärung ändert das Urteil der Engine nicht. Dass Sie diesen Befund beheben, heißt nicht, dass das Dokument jeden Prüfschritt besteht. Die Validierung bescheinigt keine rechtliche oder steuerliche Konformität und überträgt kein Dokument über Peppol.

