Auf dieser Seite
Die kurze Antwort
BR-DEC-05 schlägt fehl, wenn das cbc:Amount eines Zuschlags auf das ganze Dokument, also eines cac:AllowanceCharge auf Wurzelebene mit cbc:ChargeIndicator gleich true, mehr als zwei Zeichen nach dem Dezimalpunkt hat. Runden Sie den Zuschlag auf zwei Nachkommastellen und schreiben Sie 3.50 statt 3.500.
In der aufgezeichneten Rechnung beträgt der Zuschlag 10 Prozent von 35.00, also richtig 3.50, und schlägt nur wegen der dritten Ziffer fehl. UBL-DT-01 meldet dasselbe cbc:Amount.
Was die Regel prüft
Die Regel wählt jedes cac:AllowanceCharge, das direktes Kind des Wurzelelements ist und dessen cbc:ChargeIndicator auf true steht, und zählt, was im zugehörigen cbc:Amount nach dem Dezimalpunkt folgt. Mehr als zwei Zeichen schlagen fehl, gleich welche.
Ein kleiner ungerundeter Rest wird hier erkannt, auch wenn die Rechenregeln ihn durchlassen. Im Versuch meldete ein Zuschlag von 3.504 nur diese Regel und UBL-DT-01: BR-CO-12 rundet die addierten Zuschläge auf 3.50, bevor es sie mit der Summe der Zuschläge vergleicht, und PEPPOL-EN16931-R040 lässt 0.02 gegenüber 10 Prozent von 35.00 zu. Bei 3.506 rundet die Summe auf 3.51, und BR-CO-12 wurde ebenfalls gemeldet.
Den Grundbetrag desselben Zuschlags zählt BR-DEC-06, den Betrag eines Nachlasses auf Dokumentenebene BR-DEC-01: Der Wert von cbc:ChargeIndicator entscheidet, welche Regel das Element liest.
| Begriff | Bedeutung | UBL-Element |
|---|---|---|
| BT-99 | Betrag des Zuschlags auf Dokumentenebene | cac:AllowanceCharge[cbc:ChargeIndicator = true]/cbc:Amount |
Wie es in einer Integration dazu kommt
Mögliche Ursachen, abgeleitet aus der Form der Regel und nicht aus gemessener Nutzung:
- Ein prozentualer Zuschlag wird als Grundbetrag mal Satz berechnet, und das Produkt wird ohne Rundung geschrieben.
- Fracht- oder Bearbeitungsgebühren liegen in einer Preistabelle mit drei Nachkommastellen und werden so, wie sie gespeichert sind, in den Zuschlag kopiert.
- Zuschlag und Einzelpreise laufen durch einen einzigen Formatierer, der auf die Genauigkeit der Preise eingestellt ist.
So korrigieren Sie das Dokument
- Berechnen Sie den Zuschlag, runden Sie ihn auf zwei Nachkommastellen und schreiben Sie diesen Wert in
cbc:Amountimcac:AllowanceChargeauf Dokumentenebene mitcbc:ChargeIndicatorgleichtrue. - Bilden Sie
cbc:ChargeTotalAmountaus den gerundeten Zuschlägen, damitBR-CO-12Gleiches mit Gleichem vergleicht. - Rechnen Sie den gerundeten Zuschlag in den Steuerbasisbetrag seiner Umsatzsteuerkategorie ein, damit die Umsatzsteueraufschlüsselung dazu passt.
- Formatieren Sie den Grundbetrag eines prozentualen Zuschlags ebenso; für ihn gilt gesondert
BR-DEC-06.
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: ein Zuschlag von 10 Prozent auf 35.00, als 3.500 geschrieben
<cac:AllowanceCharge>
<cbc:ChargeIndicator>true</cbc:ChargeIndicator>
<cbc:AllowanceChargeReasonCode>CG</cbc:AllowanceChargeReasonCode>
<cbc:AllowanceChargeReason>Example document charge</cbc:AllowanceChargeReason>
<cbc:MultiplierFactorNumeric>10</cbc:MultiplierFactorNumeric>
<cbc:Amount currencyID="GBP">3.500</cbc:Amount>
<cbc:BaseAmount currencyID="GBP">35.00</cbc:BaseAmount>
<!-- tax category omitted from this fragment -->
</cac:AllowanceCharge>Ausschnitt der korrigierten Rechnung: derselbe Zuschlag als 3.50 geschrieben
<cac:AllowanceCharge>
<cbc:ChargeIndicator>true</cbc:ChargeIndicator>
<cbc:AllowanceChargeReasonCode>CG</cbc:AllowanceChargeReasonCode>
<cbc:AllowanceChargeReason>Example document charge</cbc:AllowanceChargeReason>
<cbc:MultiplierFactorNumeric>10</cbc:MultiplierFactorNumeric>
<cbc:Amount currencyID="GBP">3.50</cbc:Amount>
<cbc:BaseAmount currencyID="GBP">35.00</cbc:BaseAmount>
<!-- tax category omitted from this fragment -->
</cac:AllowanceCharge>Der Zuschlag auf Dokumentenebene lautet 3.500 in der fehlerhaften Rechnung und 3.50 in der korrigierten; Prozentsatz, Grundbetrag und Steuerkategorie sind gleich, und die Summe der Zuschläge von 3.50 passt zu beiden. Das fehlerhafte Dokument meldet BR-DEC-05 am zweiten cac:AllowanceCharge, dem Zuschlag, und UBL-DT-01 an dem cbc:Amount darin. UBL-DT-01 begrenzt jedes Betragselement auf zwei Nachkommastellen, ausgenommen den Artikelnettopreis und die Beträge eines Nachlasses auf Preisebene, und ein Zuschlag auf Dokumentenebene gehört nicht zu diesen Ausnahmen; die beiden Befunde treten daher gemeinsam auf, und eine Korrektur behebt beide.
Was der Validator gemeldet hat
- Die fehlerhafte Rechnung meldet BR-DEC-05 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 für UBL
InvoiceundCreditNote. Im Versuch meldete eine Gutschrift mit einem Zuschlag auf Dokumentenebene von3.500dasselbe Befundpaar. - Nur Zuschläge auf das Dokument sind erfasst. Einen Zuschlag auf einer Position zählt
BR-DEC-27, und Peppol erlaubt innerhalb voncac:Priceüberhaupt keinen Zuschlag (PEPPOL-EN16931-R044). - Die Währung ändert die Grenze nicht:
currencyIDspielt bei der Zählung keine Rolle.
Verwandte Regeln
- UBL-DT-01 wird für denselben Zuschlagsbetrag gemeldet, als allgemeine Grenze von zwei Nachkommastellen für Beträge
- BR-CO-12 prüft, dass die Summe der Zuschläge den gerundeten addierten Zuschlägen auf Dokumentenebene entspricht
- BR-DEC-06 wendet dieselbe Grenze auf den Grundbetrag eines Zuschlags auf Dokumentenebene an
- BR-DEC-11 wendet dieselbe Grenze auf die Summe der Zuschläge in den Gesamtbeträgen 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-28.1: Quelle geprüft am 2026-09-28, Erklärung zuletzt aktualisiert am 2026-09-28.
Die offizielle Definition von BR-DEC-05 (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.

