robin.vision Termin

SmartFormular

Werkzeuge › SmartFormular E-Rechnung lite › Prüfregeln › BR-CO-16

BR-CO-16

Der Zahlbetrag (BT-115) ist nicht Gesamtbetrag mit Umsatzsteuer (BT-112) minus bereits gezahlt (BT-113) plus Rundung (BT-114)

Prüfregel der EN 16931 (CEN, Prüfregeln 1.3.16) · Stufe: Fehler

Was die Meldung bedeutet

Der Zahlbetrag (BT-115) ist nicht Gesamtbetrag mit Umsatzsteuer (BT-112) minus bereits gezahlt (BT-113) plus Rundung (BT-114).

Was der Rechnungssteller ändern muss

Den Zahlbetrag neu berechnen lassen.

Betroffene Felder

Ihre Rechnung meldet BR-CO-16? Prüfen Sie sie mit SmartFormular E-Rechnung lite, kostenlos testen bis 31.12.2026: Das Werkzeug zeigt alle Befunde mit Erklärung, die Rechnung lesbar und einen GiroCode zum Bezahlen – im Browser, ohne Upload.

E-Rechnung prüfen

Herkunft

Regelwerk
EN 16931 (CEN, Prüfregeln 1.3.16)
Syntax
CII, UBL
Stufe
Fehler

Originaltext der Regel

Amount due for payment (BT-115) = Invoice total amount with VAT (BT-112) -Paid amount (BT-113) +Rounding amount (BT-114).

Quelle: CEN/TC 434, Prüfregeln der EN 16931 1.3.16, European Union Public Licence 1.2

Technische Angaben für die IT

UBL

Kontext: cac:LegalMonetaryTotal
Test: not((exists(cbc:PrepaidAmount) and not(exists(cbc:PayableRoundingAmount)) and (xs:decimal(cbc:PayableAmount) = (round((xs:decimal(cbc:TaxInclusiveAmount) - xs:decimal(cbc:PrepaidAmount)) * 10 * 10) div 100))) or (not(exists(cbc:PrepaidAmount)) and not(exists(cbc:PayableRoundingAmount)) and xs:decimal(cbc:PayableAmount) = xs:decimal(cbc:TaxInclusiveAmount)) or (exists(cbc:PrepaidAmount) and exists(cbc:PayableRoundingAmount) and ((round((xs:decimal(cbc:PayableAmount) - xs:decimal(cbc:PayableRoundingAmount)) * 10 * 10) div 100) = (round((xs:decimal(cbc:TaxInclusiveAmount) - xs:decimal(cbc:PrepaidAmount)) * 10 * 10) div 100))) or  (not(exists(cbc:PrepaidAmount)) and exists(cbc:PayableRoundingAmount) and ((round((xs:decimal(cbc:PayableAmount) - xs:decimal(cbc:PayableRoundingAmount)) * 10 * 10) div 100) = xs:decimal(cbc:TaxInclusiveAmount))))

CII

Kontext: //ram:SpecifiedTradeSettlementHeaderMonetarySummation
Test: not((xs:decimal(ram:DuePayableAmount[1]) = xs:decimal(ram:GrandTotalAmount[1]) - xs:decimal(ram:TotalPrepaidAmount[1]) + xs:decimal(ram:RoundingAmount[1]))     or ((xs:decimal(ram:DuePayableAmount[1]) = xs:decimal(ram:GrandTotalAmount[1]) + xs:decimal(ram:RoundingAmount[1])) and not(ram:TotalPrepaidAmount))     or ((xs:decimal(ram:DuePayableAmount[1]) = xs:decimal(ram:GrandTotalAmount[1]) - xs:decimal(ram:TotalPrepaidAmount[1])) and not(ram:RoundingAmount))     or ((xs:decimal(ram:DuePayableAmount[1]) = xs:decimal(ram:GrandTotalAmount[1])) and not(ram:TotalPrepaidAmount) and not(ram:RoundingAmount)))

Verwandte Regeln

Alle Prüfregeln

Technische Erklärung von robin.vision, keine Steuer- oder Rechtsberatung. Stand der Prüfregeln: 31.08.2026 (Konfiguration des KoSIT-Prüfprogramms).