Zum Inhalt springen

BR-28: Bruttopreis der Position (BT-148) ist negativ

Offizielle Meldung

[BR-28] The Item gross price (BT-148) shall NOT be negative.

EN 16931 (CII) · Fehler · Sprache der Meldung: Englisch · Stand: xrechnung-3.0.2-validator-configuration-2026-08-31

[BR-28] The Item gross price (BT-148) shall NOT be negative.

EN 16931 (UBL) · Fehler · Sprache der Meldung: Englisch · Stand: xrechnung-3.0.2-validator-configuration-2026-08-31

[BR-28] The Item gross price (BT-148) shall NOT be negative.

Factur-X / ZUGFeRD EN 16931 · Fehler · Sprache der Meldung: Englisch · Stand: Factur-X 1.08 / ZUGFeRD 2.4
Schweregrad
Fehler Die Rechnung gilt als ungültig und kann vom Empfänger abgelehnt werden.
Gilt für
EN 16931 (CII), EN 16931 (UBL), Factur-X / ZUGFeRD EN 16931
Betroffene Felder
BT-148

Was bedeutet das?

Der Bruttopreis eines Artikels (Item gross price, BT-148), also der Preis vor Abzug des Preisnachlasses (BT-147), darf nicht negativ sein. Bei mindestens einer Position ist er kleiner als 0. Der Bruttopreis ist optional; fehlt er, greift die Regel nicht.

Typische Ursachen

Eine Gutschrift, Rücknahme oder ein Rabatt wurde als Position mit negativem Preis erfasst.
Das Vorzeichen eines Nachlasses wurde auf den Bruttopreis übertragen.

So beheben Sie den Fehler

Den Bruttopreis als positiven Wert angeben oder weglassen. Soll die Position den Rechnungsbetrag mindern, die Menge (BT-129) negativ angeben.
CII: ram:SpecifiedLineTradeAgreement/ram:GrossPriceProductTradePrice/ram:ChargeAmount, UBL: cac:InvoiceLine/cac:Price/cac:AllowanceCharge/cbc:BaseAmount.
Die Rechnung erneut erzeugen und prüfen.

In E-Rechnungsfreund

Im Rechnungsformular (Ansicht „Experte“) im Abschnitt „Rechnungspositionen (BG-25)“ im Feld „Bruttopreis (BT-148)“ einen Wert ab 0 eintragen oder das Feld leer lassen; negative Preise werden nicht gespeichert.

Beispiel

Fehlerhaft

<ram:SpecifiedLineTradeAgreement>
  <ram:GrossPriceProductTradePrice>
    <ram:ChargeAmount>-60.00</ram:ChargeAmount>
  </ram:GrossPriceProductTradePrice>
  ...
</ram:SpecifiedLineTradeAgreement>

Richtig

<ram:SpecifiedLineTradeAgreement>
  <ram:GrossPriceProductTradePrice>
    <ram:ChargeAmount>60.00</ram:ChargeAmount>
  </ram:GrossPriceProductTradePrice>
  ...
</ram:SpecifiedLineTradeAgreement>
Für Entwickler: Prüfausdruck je Syntax

EN 16931 (CII) (CII)

Kontext: //ram:IncludedSupplyChainTradeLineItem

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

EN 16931 (UBL) (UBL)

Kontext: cac:InvoiceLine | cac:CreditNoteLine

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

Factur-X / ZUGFeRD EN 16931 (CII)

Technische ID in der Quelle: FX-SCH-A-000207

Kontext: //ram:IncludedSupplyChainTradeLineItem

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

Verwandte Prüfregeln

  • BR-01: Spezifikationskennung (BT-24) fehlt
  • BR-02: Rechnungsnummer (BT-1) fehlt
  • BR-03: Rechnungsdatum (BT-2) fehlt
  • BR-04: Rechnungsart-Code (BT-3) fehlt
  • BR-05: Rechnungswährung (BT-5) fehlt
  • BR-06: Name des Verkäufers (BT-27) fehlt

Zuletzt aktualisiert:
Erläuterung der Prüfregel, keine Rechts- oder Steuerberatung.