Seit Update Paypal Plus 5.0.2 wird keine fortlaufende Bestellnummer generiert

Wir haben SW 5.7.13 installiert und PayPal Plus 5.0.2. seit dem Update von PayPal wird im Shop keine fortlaufende Bestellnummer generiert.

In der Datenbank gibt es auch keine fortlaufenden Bestellungen. Vorhanden ist die 25055, die nächste ist dann die 25062 usw. Manchmal wird nur eine übersprungen und manchmal mehrere.

Bestellabbrüche oder Probleme beim Bezahlvorgang gibt es nicht.

Kann mir jemand sagen wo hier das Problem ist und wie ich das eventuell lösen kann?

Vielen Dank im Voraus

Hallo @andtro

der Grund hierfür wird die neue Mechanik sein, die wir mit der Version 5.0.0 in das PayPal Plugin eingebaut haben.

Viele Händler wünschen sich, dass die Bestellnummer mit zu PayPal übertragen wird. Dafür benötigt man aber normalerweise eine angelegte Bestellung in Shopware, da vorher die Bestellnummer nicht generiert wird.
Eine Bestellung anlegen, bevor die Zahlung erfolgreich war, führt allerdings zu vielen anderen Problemen, zu denen man hier im Forum ja auch jeden Menge lesen kann.

Wir haben uns also überlegt, wie wir das Problem lösen können und reservieren nun quasi die nächste Bestellnummer und schicken diese mit zu PayPal. Wenn Shopware nun die Bestellung anlegt, wird diese reservierte Bestellnummer genommen, anstatt eine neu zu generieren.

Nun kann es natürlich passieren, dass die Kunden die Bestellung gar nicht abschließen, das PayPal Plugin allerdings schon eine Bestellnummer reserviert hat. Diese Reservierung ist session-gebunden, damit es nicht zu Seiteneffekten kommen kann. Das kann die Ursache dafür sein, dass Lücken im Bestellnummernkreis auftauchen.

Wir haben dies mit unserer Financial-Abteilung abgesprochen und dort wird dies als nicht schlimm erachtet. Schlimmer wäre eine Lücke im Rechnungsnummernkreis. Dieser ist aber ja unabhängig vom Bestellnummernkreis.

Inwiefern stellen diese Lücken jetzt bei dir genau ein Problem dar?

Viele Grüße aus Schöppingen
Michael Telgmann

Vielen Dank für die schnelle Rückmeldung.

Ein direktes Problem gibt es ja nicht, mich wunderte es nur das hier Lücken im Bestellnummernkreis aufgetaucht sind die es bis zu dem neuen Update von PayPal nicht gab. Wird dieser Fehler mit dem nächsten Update behoben sein?

Hallo @andtro

so gesehen ist das kein ungewolltes Fehlverhalten, sondern etwas das wir hingenommen haben. Zumindest ist uns bisher keine Lösung eingefallen zusätzlich zu verhindern, dass Lücken im Bestellnummernkreis entstehen.

Die Alternative wären dann wieder doppelte Bestellungen usw. und das Problem wiegt für uns sehr viel schwerer.

Viele Grüße aus Schöppingen
Michael Telgmann

Vielen Dank für die Aufklärung Herr Telgmann.

Freundliche Grüße aus Saarbrücken

Das mollie-plugin kann die Bestellnummer an mollie übertragen OHNE vorher die Bestellung in Shopware anzulegen.
Vielleicht schaut ihr mal wie das da gelöst ist und ob das mit PP möglich wäre

Naja, und mit Paypal 3.7.2 hat das ganze wohl auch funktioniert.

@Michael_Telgmann die reservierte Bestellnummer gibt es auch in Plugins für PostFinance (Schweiz). Es kann dann sein, dass man 3 Bestellnummern übersprungen hat, wenn der Kunde doch eine andere Zahlart aussucht oder nicht den Kauf abschliesst. Könnte man das nicht mit einer extra-id-Spalte lösen und die Bestellnummer nicht anfassen, ähnlich einer Art Transaktionsnummer welche man reserviert?

Hallo @Steffffi

wir haben in der Version 4 des Plugins genau die gleiche Logik benutzt wie in älteren Versionen. Der Unterschied ist, dass anscheinend mit der APIv2 von PayPal, die wir ab v4 benutzen, viel mehr Fehler auf den Systemen auftauchen. :person_shrugging:
Also auch mit v3 des Plugins kann es sein, das doppelte Bestellung im System auftauchen. Es war aber nie auffällig oft.

Hallo @brettvormkopp

es gibt mit Sicherheit viel bessere Lösungen, z.B. wie in SW6, wo immer zuerst die Bestellung im System angelegt wird bevor es überhaupt zu einer Bezahlung kommt.
Ich befürchte aber, dass wir so etwas ohne große Umbauten für SW5 nicht hinbekommen.

Viele Grüße aus Schöppingen
Michael Telgmann

Danke für die Info, Hr. @Michael_Telgmann

Kann man dann zumindest davon ausgehen, dass ohne Express die Version 4.3.3 so bleibt, also, so funktional, bis v5 wirklich mal läuft, auch mit Express?

Der Grund für die Version 5.0.0 sind lediglich nötige technische Code Änderungen gewesen, die ein Breaking Change darstellen.
Ohne diese Änderungen wäre die Version eine 4.3.4 geworden.
Es wird also keine weiteren 4.x Versionen geben.

@Michael_Telgmann

Ehrlich gesagt finde ich diese Lösung mit den übersprungenen Bestellnummern sehr schlecht. Was ist denn der Grund dafür das die Bestellnummer unbedingt nach Paypal muss ? Jede Bestellung hat doch eine eindeutige Transaktionsnummer, die auch in Shopware gespeichert wird.

Tatsächlich ist es mMn viel problematischer wenn unregelmäßig Bestellnummern fehlen im System. Ehrlich gesagt weiss ich nicht wie ich bei einer Prüfung dies klarmachen soll ohne das es zu Problemen führt. Es fehlen X Bestellnummern im System, aber die Rechnungsnummern sind ja fortlaufend ? Achso und was ist mit den X fehlenden Bestellnummern die Sie „gelöscht/nicht benutzt“ haben wo es keine Buchungen zu gibt ?

Da sollte man wirklich weiter nach einer anderen Lösung suchen, das wurde so nicht gut durchdacht.

Grüße

1 „Gefällt mir“

Eigentlich wäre Fortschritt ja, wenn etwas besser werden würde, derzeit werden einem aber vermehrt Rückschritte als Fortschritte vorgegaukelt. Und warum API2 besser sein soll als API1, keine Ahnung, API2 tut auf jedenfall NICHT das was es soll: abrechnen und Schnittstelle sein. Und wenn es die Kernfunktion nicht ausführt, was soll das dann? Für was brauche ich ein Auto wenn es nicht fährt? Ja, Spotify geht, aber fahren tut es nicht, leider leider…

Heutzutage denken wohl Programmierer und Firmen, die „Schnittstellen“ bereitstellen, vor allem mal an: sich selbst, was technisch machbar ist, wie toll das sein könnte, etc. Mit der Praxis hat das dann wenig zu tun.

Die Praxis schaut dann genau so: seit März 2022 gibt es keine zu 100% funktionierende Paypal Schnittstelle. Leute schaffen es mit Ach und Krach, Classic Zahlungen abzuwickeln und das auch nur mit tricks, wenn man Kundenkommentare haben möchte. Dazwischen kamen dann noch Patches rein für absurd unwahrscheinliche Fälle des Betrugs mit SW5.

Bei Paypal v5 streicht man einfach ein paar Bestellnummern, egal. Wie das dann in Shops ausschaut mit 100 oder 200 oder mehr Bestellungen am Tag, möchte ich gar nicht wissen. Möchte ja nicht der Vergangenheit nachtrauern (was ich aber hiermit tue), aber das ganze ging schon mal um vieles besser und das ganz OHNE API2, PHP 8, Windows 11 und dem restlichen Beta Kram. Früher gab es eine Weiterleitung, die Abrechnung und eine Rückleitung mit dem Ja oder Nein, ob es geklappt hat. Und das beste daran: es hat funktioniert.

Hallo @SForst

viele Händler brauchen die Bestellnummer bei PayPal. Die Gründe dafür sind verschieden.

Ein Möglichkeit wäre die Option wieder einzubauen, um das Senden der Bestellnummer ein oder auszuschalten. Erstelle dafür gerne ein Ticket Shopware Issuetracker
Je nach Zuspruch können wir das früher oder später angehen.

Wie oben schon geschrieben, ist es, unserer Einschätzung nach, nicht bedenklich wenn es Lücken in den Bestellnummern gibt.
Dies passiert ja auch nur, wenn Kunden die Bestellung abbrechen.

Viele Grüße aus Schöppingen
Michael Telgmann

Äh sorry…vielleicht bin ich hier jetzt falsch aber wir haben ein katastrophales Problem mit den Bestellnummern.
Wir nutzen die Shopware version 5.6 und das Paypal Plugin Vers 5.0.3.
Seit dem 2.11 wird schlagartig bei Bezahlungen über Paypal immer die selbe Bestellnummer ausgegeben und der Shop zählt nicht hoch. Nur bei den anderen Zahlungsarten klappt das noch.
Alle unsere Paypalkunden haben nun die selbe Bestellnummer.
wie sollen wir so arbeiten ?

Ergänzend noch dazu dass die TransaktionsID zwar im Paypalaccount stimmt aber !!! sieh oben…sehr viel „doppelt und dreifach“ auftauchen

Moin @BLS1,

schau mal in die Datenbank. Tabelle s_core_paymentmeans hier sollte ein Eintrag mit dem „name“ SwagPaymentPayPalUnified sein. In dem Datensatz sollte in der Spalte „action“ der Wert PaypalUnifiedV2 angegeben sein. Wenn das nicht so ist. Bitte ersetzen.

So sollten zumindest die folgenden Bestellungen mit PayPal wieder eine neue Nummer bekommen

Danke für den Tip…aber der Wert steht da drinnen. Das hilft also nichts

Ok… dann schau mal in die Tabelle swag_payment_paypal_unified_order_number_pool Wenn da die Bestellnummer drin steht die immer wieder genommen wird, lösche diese aus den Einträgen

gemacht. …funktioniert …bisher…DANKE !!!

Gut… es wäre hilfreich wenn du die debug statements für PayPal aktivierst.

Dazu folgendes Snippet in die config.php einfügen.

'logger' => [
    'level' => \Shopware\Components\Logger::DEBUG,
],

Sobald wieder etwas schief geht kannst du das wieder deaktivieren und mir die Logs des Tages mit einem Hint auf die Bestellnummer zukommen lassen. Dann kann ich mir das ansehen und ggf. herausfinden waurm dieser Fehler auftritt.

LG