In einer Rechnung mit Rabatt, erhalten wir bei der Validierung der XRechnung die Fehlercodes
[BR-DEC-02] - Die zulässige Höchstzahl an Dezimalstellen für den Basisbetrag der Zulage auf Dokumentebene (BT-93) beträgt 2.
und
[PEPPOL-EN16931-R040] - Der Betrag des Zuschusses/Zuschlags muss dem Basisbetrag * Prozentsatz/100 entsprechen, wenn Basisbetrag und Prozentsatz vorhanden sind.
Der erste Fehler ist im code einfach zu finden. Es gibt den Eintrag
<ram:BasisAmount>-169.785</ram:BasisAmount>
Wenn man den Wert auf -169.78 ändert, verschwindet der Fehler.
Der zweite Fehler hat auch etwas mit dem Rabatt zu tun. Die Zahlen im code sind teilweise nicht nachvollziehbar. Der obige Basisbetrag -169.78 hat meines erachtens nichts mit den relevanten Zahlen der Rechnung zu tun. Es gibt die Einträge
<ram:CalculationPercent>-3.5</ram:CalculationPercent> und <ram:ActualAmount>48.51</ram:ActualAmount>
Der Positionswert ist 1386 Eur. Das ergibt dann 1386 * (-3.5) / 100 =-48.51, wenn der richtige Basiswert (ich nehme an das ist der Positionswert) angesetzt wird. Wo die -169.78 herkommen weiss ich nicht.
Für Ideen waere ich dankbar.