Konto
Deutsch

BR-S-09: Steuerbetrag zum Regelsteuersatz (BT-117) ist nicht Basis mal Satz

EN-16931-Kernregel · Fehler · UBL / CII

StandardEN 16931-1 (europäisches Datenmodell der E-Rechnung)SchweregradFehler: die Rechnung wird abgelehntSyntaxUBL, CIIGeschäftsbegriffe
  • BG-23 VAT breakdown
  • BT-116 VAT category taxable amount
  • BT-117 VAT category tax amount
  • BT-118 VAT category code
  • BT-119 VAT category rate
Gilt fürJede EN-16931-Rechnung: XRechnung, ZUGFeRD 2.x / Factur-X (Profile EN 16931, EXTENDED, XRECHNUNG), Peppol BIS Billing 3.0 sowie nationale CIUS.

Offizieller Regeltext

[BR-S-09] The VAT category tax amount (BT-117) in a VAT breakdown (BG-23) where VAT category code (BT-118) is "Standard rated" shall equal the VAT category taxable amount (BT-116) multiplied by the VAT category rate (BT-119).

Der normative Text ist Englisch und wird unverändert zitiert.

Warum dieser Fehler auftritt

In einer Aufschlüsselung zum Regelsteuersatz (Kategorie S) muss der Steuerbetrag (BT-117) der Bemessungsgrundlage (BT-116) mal Steuersatz (BT-119) entsprechen; das Schematron erlaubt eine Abweichung unter 1.00 für positionsweise Rundung. Die Regel liest cac:TaxSubtotal/cbc:TaxAmount, cbc:TaxableAmount und cac:TaxCategory/cbc:Percent (UBL) bzw. ram:CalculatedAmount, ram:BasisAmount und ram:RateApplicablePercent (CII). Sie schlägt fehl, wenn der Satz als 0.19 angegeben ist, die Steuer auf einer anderen Basis als der geschriebenen berechnet wurde oder der Betrag mit abweichender Rundung aus einem PDF übernommen wurde.

So beheben Sie den Fehler

Formel: BT-117 = round(BT-116 x BT-119 / 100, 2), mit dem Satz als Prozentzahl (19, 7). Die Steuer aus dem exakt in die XML geschriebenen cbc:TaxableAmount / ram:BasisAmount berechnen. Rechnet Ihr System die Umsatzsteuer je Position und summiert, liegt das Ergebnis in der Toleranz, die Summen müssen aber weiterhin zu BR-CO-14 und BR-CO-15 passen. Je Satz ein Subtotal führen.

Beispiel (gültig)

<cac:TaxSubtotal>
  <cbc:TaxableAmount currencyID="EUR">100.00</cbc:TaxableAmount>
  <cbc:TaxAmount currencyID="EUR">19.00</cbc:TaxAmount>
  <cac:TaxCategory><cbc:ID>S</cbc:ID><cbc:Percent>19</cbc:Percent><cac:TaxScheme><cbc:ID>VAT</cbc:ID></cac:TaxScheme></cac:TaxCategory>
</cac:TaxSubtotal>

Was der Validator prüft

Geprüftes Element (Kontext):

UBL

/*/cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory[normalize-space(cbc:ID) = 'S'][cac:TaxScheme/normalize-space(upper-case(cbc:ID))='VAT']

Test (XPath):

(abs(xs:decimal(../cbc:TaxAmount)) - 1 <  round((abs(xs:decimal(../cbc:TaxableAmount)) * (xs:decimal(cbc:Percent) div 100)) * 10 * 10) div 100 ) and (abs(xs:decimal(../cbc:TaxAmount)) + 1 >  round((abs(xs:decimal(../cbc:TaxableAmount)) * (xs:decimal(cbc:Percent) div 100)) * 10 * 10) div 100 )

CII

//ram:ApplicableHeaderTradeSettlement/ram:ApplicableTradeTax/ram:CategoryCode[.='S']

Test (XPath):

(abs(xs:decimal(../ram:CalculatedAmount)) - 1 < round(abs(xs:decimal(../ram:BasisAmount)) * ../ram:RateApplicablePercent) div 100 ) and (abs(xs:decimal(../ram:CalculatedAmount)) + 1 > round(abs(xs:decimal(../ram:BasisAmount)) * ../ram:RateApplicablePercent) div 100 )

Rechnung prüfen

Legen Sie Ihre XML- oder PDF-Datei im Validator ab; jede verletzte Regel ist mit ihrer Seite hier verlinkt. Kostenlos, ohne Konto, die Datei wird nicht gespeichert.

Rechnung prüfen →

Dieselbe Prüfung per API:

curl -F file=@invoice.xml https://einvoicechecker.com/v1/validate

Verwandte Regeln

Häufige Fragen

Was bedeutet BR-S-09?

BR-S-09 ist eine EN-16931-Kernregel: The VAT category tax amount (BT-117) in a VAT breakdown (BG-23) where VAT category code (BT-118) is "Standard rated" shall equal the VAT category taxable amount (BT-116) multiplied by the VAT category rate (BT-119).

Wird meine Rechnung wegen BR-S-09 abgelehnt?

Ja. BR-S-09 ist als „fatal“ eingestuft; Validatoren (KoSIT, Peppol Access Points, ZRE/OZG-RE) weisen die Rechnung zurück, bis der Fehler behoben ist.

Für welche Formate gilt BR-S-09?

Jede EN-16931-Rechnung: XRechnung, ZUGFeRD 2.x / Factur-X (Profile EN 16931, EXTENDED, XRECHNUNG), Peppol BIS Billing 3.0 sowie nationale CIUS. Syntax: UBL und CII.

Quelle: EN 16931-1:2017 schematron (CEN TC434, via Peppol BIS 3.0.20). Katalog erzeugt aus dem offiziellen Schematron am 2026-10-14.