Ich habe das untersucht, da gab es noch einen kleinen Bug.... In Deinem Testshop funktioniert das jetzt. Die korrigierte Version im Anhang.
Ich habs ausprobiert. Der Link wird jetzt in der Email und im Checkout erzeugt. Er ist aber ungültig. Klickt man auf den Link im Checkout, gibt es eine weisse Seite mit der Meldung "Payment has already been made for this InvoiceID." Klickt man auf den Link in der Email, gibt es eine im Shop eingebundene Fehlermeldung "Dieser Zahlungslink ist nicht gültig. Bitte wenden Sie sich an den Shopbetreiber." Ich habe sogar den Nummernkreis geändert, auf eine Auftragsnummer die es nie gab und nicht geben wird. Der Fehler kommt trotzdem.
Das Problem müsste dann auch mit über den Admin generierten Zahlungslinks auftreten. Denn das ist genau das, was das Overload macht: es generiert einen Zahlungslink, wobei dafür derselbe Code wie im Admin verwendet wird. Die ganze dazu notwendige Zahlungsinfrastruktur ist in Gambio ja schon vorhanden. Wie sieht denn der Zahlungslink genau aus? Welche Zahlungsart wurde während des checkouts gewählt?
Ich habe das gerade noch mal getestet: wenn ich in der "Success"-Seite den PayPal-Link klicke, dann werde ich zum PayPal-Login weiter geleitet... Was bedeutet, das PayPal den Zahlungsrequest schon geprüft und akzeptiert hat. Deine Fehlermeldung tritt hier nicht auf. Hattest Du das nicht auch schon mal bei dem Link in der Order-mail, was dann nicht mehr auftrat???
Hmm.. ja, am Anfang mit der ersten Variante. Ich habe gerade den Link in der OrderMail getestet, die Du durch den Testkauf ausgelöst hast. Funktioniert nicht. Dann habe ich eine neue Bestellung ausgelöst. Da funktioniert auch der Link im Checkout nicht.
Der Orderlink in der Email ist ein anderer als im Checkout und auch ein anderer als in der Datenbank in Tabelle paypal_paylink zu dem Auftrag angelegt ist. Er ist auch nicht mit anderen Orderlinks in der Tabelle identisch. Ich habe nun vier weitere Bestellungen gemacht. Bei der ersten funktionierte der Paylink im Checkout nicht. Bei allen weiteren funktionierte es wunderbar. Kann es sein, daß Du durch die zwei overloads auch zwei Paylinks erzeugst, wobei immer nur der zweite gültig ist, weil er den anderen überschreibt?
Habe mir gerade den zuständigen Code in der Papalng-Klasse angeschaut, und es ist tatsächlich so, dass jedesmal ein neuer Paycode erzeugt wird.... Das muss ich wohl noch verriegeln....
Im Anhang neue Versionen der beiden Overloads, mit denen sicher gestellt wird, dass im "Checkout" jetzt in der "Order-Mail" und "Checkout-Success" derselbe "paycode" verwendet wird.... Wenn man dann alerdings im Admin noch mal einen Pay-Link generieren lässt, ist der im "Checkout" generierte Paycode nicht mehr gültig...
Nur wo taucht den der Link dann auf im Kundenkonto wäre auch gut aber wo erscheint denn der neu erzeugte paypal Link?