(mal wieder) Paypal und Rabatte = Fehler! Laut log: Falsche Steuer an PP übertragen?!

Wir haben massenhaft Probleme bei Stammkunden, die Rabatte bekommen, und mit Paypal bezahlen wollen - es gibt in schönster Regelmäßigkeit Abbrüche bzw. Fehler seitens Paypal.
Ich habe jetzt mal die Log vom Plugin bei einem Vorgang zerlegt und interessante Sachen gefunden.

Zunächst der primäre Fehler (Auszug):

swag_paypal.ERROR: Swag\PayPal\RestApi\Client\AbstractClient::handleRequestException (169): Client error: POST https://api-m.paypal.com/v2/checkout/orders resulted in a 422 Unprocessable Entity response: {„name“:„UNPROCESSABLE_ENTITY“,„details“:[{„field“:"/purchase_units/@reference_id==‚default‘/amount/breakdown/tax_total/ (truncated…) The requested action could not be performed, semantically incorrect, or failed business validation. Should equal sum of (tax * quantity) across all items for a given purchase_unit TAX_TOTAL_MISMATCH (/purchase_units/@reference_id==‚default‘/amount/breakdown/tax_total/value)

Aha, die Summen passen nicht. Also holen wir uns den nächsten Block im Error-Log (Auszug) und zerlegen den, um Nachzurechnen:

{„breakdown“:{„item_total“:{„currency_code“:„EUR“,„value“:„532.00“},„shipping“:{„currency_code“:„EUR“,„value“:„0.00“},„handling“:{„currency_code“:„EUR“,„value“:„0.00“},„tax_total“:{„currency_code“:„EUR“,„value“:„96.03“},„discount“:{„currency_code“:„EUR“,„value“:„26.60“}},„currency_code“:„EUR“,„value“:„601.43“},„custom_id“:„e1e6287719d24b4fbb48a18156a5416a“,„invoice_id“:„VP12217“,„items“:[{„name“:„1400 x Faltkarton 360x200x200 mm - KK 80“,„unit_amount“:{„currency_code“:„EUR“,„value“:„532.00“},„tax“:{„currency_code“:„EUR“,„value“:„101.08“},„tax_rate“:19.0,"

Logisch sortiert sieht das dann so aus:

Stückzahl: 1400 Stk.
Stückpreis: (wird nicht übermittelt, wäre 0,38)
Summe Produkt: 532,00

Summe Total (vor Rabatt): 532,00
Rabatt: 26,60
Versandkosten: 0,00
[Zwischensumme: 505,40, wird nicht übermittelt]

Steuer „tax_total“ (19%): 96,03
Endsumme: 601,43
Steuer „tax“ (19%): 101,08

Die spannende Frage:
Was ist die 2. Steuer „tax“ mit 101,08?

Antwort:
Das WÄRE die MwSt., wenn der Artikel nicht rabattiert gewesen wäre!

Was hat die da zu Suchen???

Alle Zahlen bis Endsumme 601,43 stimmen. Und dann kommt diese komische Steuer, die überhaupt nichts mit der Bestellung zu tun hat…

Kann sich darauf jemand einen Reim machen??

Wir hatten so viele Probleme wegen der Kundenrabatte und Paypal, dass wir PP schon auf unseren externen Zahlungsanbieter umgeschaltet haben :frowning:

Wir haben ein ähnliches Problem mit Paypal-Zahlungen und konnten das erstmal beheben, indem wir die Option „Warenkorb übertragen“ in den Paypal-Plugin-Einstellungen deaktiviert haben.

Hatten wir auch versucht.
Und auch die Zeilen- und Spaltenweise Steuerberechnung. Hat aber beides nicht funktioniert:
Sobald bei etwas höheren Beträgen Rabatte im Spiel waren, weigerte sich PP, die Zahlung auszuführen. Bei Kleinbestellungen so ca. < 50 Euro lässt PP die Differenz scheinbar noch durchlaufen.