BR-DEC-28EN 16931

BR-DEC-28: Basisbetrag des Positionszuschlags mit mehr als zwei Nachkommastellen

Der Grundbetrag, auf den sich ein Positionszuschlag bezieht (BT-142), darf höchstens zwei Nachkommastellen haben. Häufigster Auslöser: die Software übernimmt einen ungerundeten internen Wert als Bezugsgröße.

Regeltext im Prüfregelwerk

The allowed maximum number of decimals for the Invoice line charge base amount (BT-142) is 2.

BT-142

Diese Meldung ist die letzte der DEC-Regeln auf Positionsebene und betrifft ein Feld, das viele Programme automatisch mitschreiben, sobald ein Zuschlag prozentual definiert ist: die Bezugsgröße des Zuschlags.

Was die Regel prüft

BT-142 (BT = Business Term, das nummerierte Feld der Norm) ist der Basisbetrag eines Positionszuschlags, also der Wert, auf den der Zuschlagsprozentsatz angewendet wird. In der CII-Syntax ist das ram:BasisAmount in einem ram:SpecifiedTradeAllowanceCharge-Block mit ChargeIndicator true. Erlaubt sind höchstens zwei Nachkommastellen. Wie in der ganzen DEC-Serie wird die Schreibweise geprüft: 52.1730 fällt auch dann durch, wenn der Wert stimmt.

Warum sie in der Praxis fehlschlägt

  • Als Basis dient der interne, ungerundete Positionswert aus Menge mal Einzelpreis, etwa 13,5 kg × 3,865 EUR = 52,1775. Die Software reicht die Zahl unverändert durch.
  • Die Basis wird aus einem bereits fehlerhaften Zwischenwert kopiert; dann meldet der Validator meist zusätzlich BR-DEC-27 für den Zuschlagsbetrag oder BR-DEC-23 für den Positionsnetto, weil alle drei aus derselben Rechnung stammen.

So behebst du den Fehler

Runde die Bezugsgröße kaufmännisch auf zwei Nachkommastellen, bevor der Prozentsatz angewendet wird, und berechne den Zuschlag aus dem gerundeten Wert. Wenn du eine Basis angibst, verlangt die PEPPOL-Prüfung auch den zugehörigen Prozentsatz (PEPPOL-EN16931-R042); umgekehrt gilt dasselbe. Alternativ kannst du Basis und Prozentsatz ganz weglassen und nur den fertigen Zuschlagsbetrag (BT-141) ausweisen, beide Felder sind optional. Belegschmied schreibt grundsätzlich nur centgenaue Beträge in die XML.

XML-Beispiel: vorher und nachher

<ram:SpecifiedTradeAllowanceCharge>
  <ram:ChargeIndicator><udt:Indicator>true</udt:Indicator></ram:ChargeIndicator>
  <ram:CalculationPercent>5</ram:CalculationPercent>
  <!-- verletzt BR-DEC-28: Basisbetrag mit vier Nachkommastellen -->
  <ram:BasisAmount>52.1775</ram:BasisAmount>
  <ram:ActualAmount>2.61</ram:ActualAmount>
  <ram:Reason>Legierungszuschlag</ram:Reason>
</ram:SpecifiedTradeAllowanceCharge>
<ram:SpecifiedTradeAllowanceCharge>
  <ram:ChargeIndicator><udt:Indicator>true</udt:Indicator></ram:ChargeIndicator>
  <ram:CalculationPercent>5</ram:CalculationPercent>
  <!-- korrekt: Basis auf Cent gerundet, Zuschlag daraus berechnet -->
  <ram:BasisAmount>52.18</ram:BasisAmount>
  <ram:ActualAmount>2.61</ram:ActualAmount>
  <ram:Reason>Legierungszuschlag</ram:Reason>
</ram:SpecifiedTradeAllowanceCharge>

Rechnung selbst prüfen

Lade deine Datei hoch und sieh in Sekunden, welche Regeln sie besteht und welche nicht. Kostenlos, ohne Anmeldung, nichts wird gespeichert.

Regeln, die oft zusammen auftreten

← Alle Fehlermeldungen im Überblick