BR-28 Feld BT-148 EN-16931-Grundregeln (BR)

BR-28 beheben: Brutto-Einzelpreis (BT-148) ist negativ

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

BR-28 in deiner eigenen Rechnung? Lade die Datei hoch und finde alle Fehler in Sekunden.

Was bedeutet BR-28?

Der Listenpreis pro Einheit darf nicht kleiner als null sein. Rabatte werden getrennt als Positions-Abschlag ausgewiesen.

Häufige Ursachen für BR-28

So behebst du BR-28

  1. Fehlerhafte Stelle im XML finden. Öffne die XML der E-Rechnung und navigiere zum Feld BT-148 über den folgenden XPath://ram:IncludedSupplyChainTradeLineItem/ram:SpecifiedLineTradeAgreement/ram:GrossPriceProductTradePrice/ram:ChargeAmount
  2. Korrektur einsetzen. Der Brutto-Einzelpreis (BT-148) darf nicht negativ sein. Setze in ram:GrossPriceProductTradePrice/ram:ChargeAmount einen Wert von 0 oder groesser. Rabatte gehoeren als Positions-Abschlag in ram:AppliedTradeAllowanceCharge, nicht in einen negativen Bruttopreis.
  3. Erneut validieren. Speichere die Datei und validiere sie erneut, um zu prüfen, dass BR-28 nicht mehr gemeldet wird.
Konkreter Korrekturvorschlag

Der Brutto-Einzelpreis (BT-148) darf nicht negativ sein. Setze in ram:GrossPriceProductTradePrice/ram:ChargeAmount einen Wert von 0 oder groesser. Rabatte gehoeren als Positions-Abschlag in ram:AppliedTradeAllowanceCharge, nicht in einen negativen Bruttopreis.

XPath//ram:IncludedSupplyChainTradeLineItem/ram:SpecifiedLineTradeAgreement/ram:GrossPriceProductTradePrice/ram:ChargeAmount

Vorher / Nachher: das XML-Beispiel

So sieht die betroffene Stelle vor und nach der Korrektur aus (Cross-Industry-Invoice, ZUGFeRD/Factur-X).

Fehlerhaft
<ram:GrossPriceProductTradePrice>
  <ram:ChargeAmount>-11.90</ram:ChargeAmount>
</ram:GrossPriceProductTradePrice>
Korrekt
<ram:GrossPriceProductTradePrice>
  <ram:ChargeAmount>11.90</ram:ChargeAmount>
  <ram:AppliedTradeAllowanceCharge>
    <ram:ChargeIndicator><udt:Indicator>false</udt:Indicator></ram:ChargeIndicator>
    <ram:ActualAmount>1.90</ram:ActualAmount>
  </ram:AppliedTradeAllowanceCharge>
</ram:GrossPriceProductTradePrice>

Häufige Fragen zu BR-28

Wo trage ich einen Positionsrabatt richtig ein?
Als ram:AppliedTradeAllowanceCharge innerhalb des Brutto-Einzelpreises. Der Rabattbetrag (BT-147) senkt den Bruttopreis auf den Nettopreis (BT-146), ohne dass ein Preis negativ wird.
Muss ich ueberhaupt einen Bruttopreis angeben?
Nein, der Brutto-Einzelpreis (BT-148) ist optional. Gibst du ihn an, darf er aber nicht negativ sein.

Verwandte Fehlercodes

BR-28 automatisch prüfen

Statt das XML manuell zu durchsuchen, kannst du deine ZUGFeRD- oder XRechnung-Datei online validieren – lade die PDF oder XML hoch und du bekommst jeden Fehler mit Regel-ID, betroffenem Feld, Korrekturvorschlag und XPath, als lesbaren Report oder strukturiertes JSON über die API.

Software-Tipp

Rechnung selbst gebaut?

Wer das XML aus dem eigenen System oder von Hand zusammensetzt, muss Regeln wie diese kennen. Diese Programme erzeugen ZUGFeRD und XRechnung und füllen die Pflichtfelder von sich aus.

Lexware Office Weit verbreiteter Allrounder (früher lexoffice) für Einsteiger und kleine Unternehmen. Ansehen *
sevDesk Rechnung und Buchhaltung in einem, beliebt bei Selbstständigen und kleinen Firmen. Ansehen *
BuchhaltungsButler Starke Beleg-Automatik, wenn viel hereinkommt. Wir nutzen es selbst. Ansehen *

* Werbelinks. Wir bekommen eine Provision, für dich bleibt der Preis gleich. Fünf Programme im Vergleich

Jeden Fehler automatisch finden statt manuell suchen

Lade deine ZUGFeRD- oder XRechnung-Datei hoch – du bekommst jeden Verstoß mit Regel-ID, Feld, Korrekturvorschlag und XPath zurück.

Kostenlos online validieren
Rechnung prüfen