BR-28: Negativer Bruttopreis

Der Bruttopreis einer Position (BT-148) darf nicht negativ sein.

Regelwerk
EN 16931 (CEN)
Syntax
UBL und CII
Betroffene Felder
BT-148

Offizieller Regeltext

The Item gross price (BT-148) shall NOT be negative.

Regeltext aus den Validierungsartefakten zu EN 16931 in Version 1.3.16 (CEN/TC 434, veröffentlicht von ConnectingEurope), Lizenz EUPL 1.2; enthalten in der XRechnung-Validatorkonfiguration 2026-08-31.

Schweregrad

Ein Verstoß führt im Szenario „XRechnung“ des KoSIT-Validators zur Ablehnung der Rechnung.

Typische Ursachen

Vorzeichenfehler bei der Übernahme von Listenpreisen oder bei Rücknahmen.

So behebst du den Fehler

Den Bruttopreis positiv angeben; Rücknahmen über eine negative Menge abbilden.

Weil der Nettopreis dann nicht mehr Bruttopreis minus Preisnachlass ist, meldet der Validator zusätzlich PEPPOL-EN16931-R046.

Geprüftes Beispiel: falsch und richtig

Die Auszüge stammen aus vollständigen, synthetischen Rechnungen des E-Rechnungs-Testkorpus. Geänderte Zeilen sind hervorgehoben. Beide Dateien werden in den automatischen Tests mit dem KoSIT-Validator geprüft.

Bei den Beispielen meldet der Validator außer BR-28 auch: PEPPOL-EN16931-R046.

Beispiel in UBL

Änderung gegenüber der gültigen Rechnung: Negativer Bruttopreis (BT-148).

Falsch – ab Zeile 168
    <cbc:ChargeIndicator>false</cbc:ChargeIndicator>
    <cbc:Amount currencyID="EUR">3</cbc:Amount>
    <cbc:BaseAmount currencyID="EUR">-22.95</cbc:BaseAmount>
  </cac:AllowanceCharge>
</cac:Price>
Richtig – ab Zeile 168
    <cbc:ChargeIndicator>false</cbc:ChargeIndicator>
    <cbc:Amount currencyID="EUR">3</cbc:Amount>
    <cbc:BaseAmount currencyID="EUR">22.95</cbc:BaseAmount>
  </cac:AllowanceCharge>
</cac:Price>

Prüfergebnis (KoSIT-Validator 1.6.3, Konfiguration 2026-08-31): falsche Datei abgelehnt, korrigierte Datei angenommen. Meldungen zur falschen Datei:

  • BR-28 The Item gross price (BT-148) shall NOT be negative. Fundstelle: /Invoice[1]/InvoiceLine[2]
  • PEPPOL-EN16931-R046 Item net price MUST equal (Gross price - Allowance amount) when gross price is provided. Fundstelle: /Invoice[1]/InvoiceLine[2]/Price[1]/AllowanceCharge[1]

Vollständige Dateien im Testkorpus: br-28-negativer-bruttopreis_ubl.xml (falsch) und positionsrabatt_ubl.xml (richtig).

Beispiel in CII

Änderung gegenüber der gültigen Rechnung: Negativer Bruttopreis (BT-148).

Falsch – ab Zeile 68
<ram:SpecifiedLineTradeAgreement>
  <ram:GrossPriceProductTradePrice>
    <ram:ChargeAmount>-22.95</ram:ChargeAmount>
    <ram:AppliedTradeAllowanceCharge>
      <ram:ChargeIndicator>
Richtig – ab Zeile 68
<ram:SpecifiedLineTradeAgreement>
  <ram:GrossPriceProductTradePrice>
    <ram:ChargeAmount>22.95</ram:ChargeAmount>
    <ram:AppliedTradeAllowanceCharge>
      <ram:ChargeIndicator>

Prüfergebnis (KoSIT-Validator 1.6.3, Konfiguration 2026-08-31): falsche Datei abgelehnt, korrigierte Datei angenommen. Meldungen zur falschen Datei:

  • BR-28 The Item gross price (BT-148) shall NOT be negative. Fundstelle: /CrossIndustryInvoice[1]/SupplyChainTradeTransaction[1]/IncludedSupplyChainTradeLineItem[2]
  • PEPPOL-EN16931-R046 Item net price MUST equal (Gross price - Allowance amount) when gross price is provided. Fundstelle: /CrossIndustryInvoice[1]/SupplyChainTradeTransaction[1]/IncludedSupplyChainTradeLineItem[2]/SpecifiedLineTradeAgreement[1]/GrossPriceProductTradePrice[1]

Vollständige Dateien im Testkorpus: br-28-negativer-bruttopreis_cii.xml (falsch) und positionsrabatt_cii.xml (richtig).

Testdateien zu BR-28

Technische Details: Kontext und Prüfausdruck aus dem Schematron

CII

Kontext:

//ram:IncludedSupplyChainTradeLineItem

Prüfausdruck:

(ram:SpecifiedLineTradeAgreement/ram:GrossPriceProductTradePrice/ram:ChargeAmount >= 0) or not(ram:SpecifiedLineTradeAgreement/ram:GrossPriceProductTradePrice/ram:ChargeAmount)

UBL

Kontext:

cac:InvoiceLine | cac:CreditNoteLine

Prüfausdruck:

(cac:Price/cac:AllowanceCharge/cbc:BaseAmount) >= 0 or not(exists(cac:Price/cac:AllowanceCharge/cbc:BaseAmount))

Technische Formatprüfung nach XRechnung 3.0.2; keine steuerliche oder rechtliche Beratung.