Zahlungsabschluss und Fehlerseiten
... but the clearer provides no failure url. The customer stays on the page the clearer returned to. Configure an error template for this payment method.
Nachrichten-ID: paymentCheckBeforeRoute.missingFailureRedirectUrl
Symptom
Der Kunde bleibt auf der Seite, auf die er vom Zahlungsanbieter zurückgeschickt wurde. In der Regel ist das die reguläre Checkout- oder Pending-Seite. Es kommt zu keinem Absturz und es wird keine leere Seite angezeigt.
Ursache
Eine Zahlung ist in einem Status geendet, für den eigentlich eine eigene Fehlerseite benötigt wird (beispielsweisecanceledByUser ). Für den aktuellen Zahlungsanbieter ist jedoch keine eigene Fehlerweiterleitung implementiert
Vorgehen
Betroffenen Zahlungsanbieter bestimmen
pi_.Häufigkeit einordnen
Bei häufigem Auftreten als Anforderung melden
PayPal Checkout
Failed to load payment status for order:Payment is in invalid state setting payment to error: checkoutCapture: response status is not valid (regular)
Nachrichten-ID: paymentCheckBeforeRoute.clearerStatusUpdateFailed
Symptom
Eine über PayPal begonnene Bestellung wird nicht als bezahlt bestätigt. Sie behält im Shop den Zahlungsstatus, den sie vor dem Abgleich hatte. In den allermeisten Fällen liegt das daran, dass der Kunde den Vorgang im PayPal-Fenster nicht zu Ende geführt hat.
Ursache
Der Shop fragt den PayPal-Auftragsstatus ab, um die Zahlung zu bestätigen. An dieser Stelle akzeptiert er für eine reguläre PayPal-Zahlung nur den StatusAPPROVED oder PENDING. PayPal meldet jedoch einen anderen Status. Der häufigste Grund dafür ist, dass der Kunde die Zahlung im PayPal-Fenster nie final abgeschlossen hat, beispielsweise weil er das Fenster geschlossen oder zurücknavigiert hat. Die Order steht bei PayPal dann noch auf CREATED, während der Shop trotzdem eine Statusabfrage anstößt.
Der Teil vor dem Doppelpunkt, Failed to load payment status for order, ist dabei keine eigenständige Ursache, sondern eine Rahmenmeldung, die in allen Fällen angezeigt wird, in denen der Shop den Zahlungsstatus nicht abrufen konnte. Die eigentliche Ursache steht dahinter.
Der Zusatz in Klammern sagt Ihnen, um welchen Zahlungsablauf es geht:
Vorgehen
Häufigkeit und Kontext prüfen
Tatsächlichen PayPal-Status nachlesen
paypalCheckoutService.checkoutValidateOrderDetails. Diese Meldung steht auf Log-Level “Info” und enthält die vollständige Antwort von PayPal einschließlich des tatsächlichen status-Werts. Daran sehen Sie, in welchem Zustand die Order bei PayPal hängt.Legen Sie die Log-Gruppe deshalb so an, dass sie das Level Info mit einschließt. Sonst fehlt Ihnen genau die Meldung, die die Antwort enthält.Button-Integration prüfen
wsPaymentStatus=refresh bereits ausgelöst wird, bevor der Kunde die Freigabe bei PayPal abgeschlossen hat. Das ist das typische Symptom bei selbst angepassten PayPal-Button-Handlern, siehe Praxisbeispiele - Verknüpfung mit dem Zahlungsanbieter.Unklare Fälle melden
APPROVED oder PENDING ist, obwohl der Kunde den Checkout augenscheinlich nochmal durchlaufen hat, melden Sie den Fall mit der Bestellnummer an WEBSALE.Failed to load payment status for order:getOrderDetails: Failed to communicate with paypal
Nachrichten-ID: paymentCheckBeforeRoute.clearerStatusUpdateFailed
Symptom
Der Zahlungsstatus einer Bestellung wird nicht aktualisiert. Die Bestellung behält daher den Status, den sie vor dem Abgleich hatte.
Ursache
Der Shop wollte den Zahlungsstatus einer Bestellung bei PayPal abfragen, beispielsweise, wenn der Kunde von PayPal in den Shop zurückgeleitet wurde oder ein automatischer Statusabgleich lief. Der Aufruf an PayPal ist jedoch fehlgeschlagen und der Shop hat keine verwertbare Antwort erhalten. Die konkrete Ursache, beispielsweise eine Zeitüberschreitung, ungültige Zugangsdaten oder eine Störung bei PayPal, ist in dieser Meldung nicht angegeben. Es gibt eine zweite Variante mit dem Zusatz “result was not a valid JSON”. In diesem Fall hat PayPal zwar geantwortet, aber nicht ein einem für den Shop auswertbaren Format.
Vorgehen
Häufigkeit prüfen
Zugangsdaten prüfen
sandbox oder live) muss zu den hinterlegten Zugangsdaten passen.Subshops vergleichen
Dauerhafte Fälle eskalieren
Error setting up the connection to paypal api (Http: 404)
Nachrichten-ID: paypalCheckoutService.callApiHttpError
Symptom
Ein Vorgang, in den PayPal involviert ist, wird nicht abgeschlossen. Je nach betroffenem Aufruf wird entweder eine Zahlung nicht eingezogen oder ein Zahlungsstatus nicht aktualisiert. Bei den Fehlercodes 401 und 403 betrifft das sämtliche PayPal-Zahlungen im Shop, bei 404 in der Regel nur einzelne Bestellungen.
Ursache
PayPal hat einen Aufruf der PayPal-REST-API, beispielsweise eine Statusabfrage oder einen Zahlungseinzug, mit einem Fehlercode beantwortet. Diese Meldung erscheint bei jedem HTTP-Code, der nicht erfolgreich ist. Der Code in Klammern entscheidet über die Bedeutung.404 sind zwei Ursachen üblich. Entweder existiert die PayPal-Bestellung nicht mehr, weil der Kunde sie nie abgeschlossen hat und sie auf PayPal-Seite verfallen ist. Oder die Sandbox- und die Live-Umgebung passen nicht zusammen, beispielsweise weil Live-Zugangsdaten hinterlegt sind, die Order aber noch unter Sandbox angelegt wurde.
Direkt danach steht im Log die Rohantwort von PayPal unter der Nachrichten-ID paypalCheckoutService.callApiHttpErrorResult, beispielsweise:
RESOURCE_NOT_FOUND und INVALID_RESOURCE_ID bestätigen dies. Die angefragte Order-ID existiert bei PayPal nicht mehr.
Error setting up the connection to Paypal API for Access Token (Http: ...)”. Tritt diese auf, sind die Zugangsdaten grundsätzlich ungültig, unabhängig von einer einzelnen Bestellung.Vorgehen
Bestellung identifizieren
paypalCheckoutService.callApiErrorResponse. Diese Meldung steht auf Log-Level Info und enthält die Bestellnummer, die Transaktions-ID, die gesendete Anfrage und die vollständige Antwort von PayPal.Sandbox- und Live-Konfiguration abgleichen
Alter der Bestellung prüfen
Frische Bestellungen melden
Computop Hosted
payment method invalid, not defined in computopHosted config
Nachrichten-ID: computopHosted.getComputopHostedConfigPaymentMethodInvalid
Symptom
Der Kunde wählt im Checkout eine bestimmte Zahlungsart aus, doch statt zur Computop-Bezahlseite weitergeleitet zu werden, bricht die Zahlung ab. Betroffen ist genau die Zahlungsart, deren ID in der Meldung angegeben ist.
Ursache
Die gewählte Zahlungsart soll über Computop Hosted abgewickelt werden. Das Shopsystem sucht dazu im Konfigurationsknotenpayment.computopHosted nach dem Eintrag mit dieser Zahlungsart-ID, kann ihn jedoch nicht finden. Daraufhin bricht die Zahlung kontrolliert ab. Dies ist kein technischer Fehler, sondern eine fehlende oder falsche Zuordnung in der Konfiguration.
Die betroffene Zahlungsart-ID steht ohne Leerzeichen direkt hinter dem Doppelpunkt der Meldung.
Vorgehen
Zahlungsart-ID und Subshop notieren
Konfiguration prüfen
payment.computopHosted und prüfen Sie für den betroffenen Subshop, ob ein Eintrag mit dieser ID existiert.Fehlenden Eintrag ergänzen oder Template korrigieren
payment.payment aktiv ist, aber nicht unter payment.computopHostedhinterlegt ist, müssen Sie sie dort ergänzen. Konfigurationsknoten lassen sich pro Subshop überschreiben. Prüfen Sie deshalb jeden betroffenen Subshop einzeln.Wenn die ID nicht mehr existiert, weil sie umbenannt oder entfernt wurde, prüfen Sie Ihre Templates auf eine fest eingetragene alte Zahlungsart-ID und stellen Sie auf eine dynamische Referenz um. Testbestellung durchführen
Wechselnde IDs einordnen
