View Issue Details

IDProjectCategoryView StatusLast Update
0007972OXID eShop (all versions)2.3. Extensions (modules, themes)public2026-07-01 17:17
Reportersuabo Assigned To 
PrioritynormalSeverityminorReproducibilityhave not tried
Status newResolutionopen 
Product Version6.5.5 
Summary0007972: PayPal Webhook Fehler
DescriptionLogik-Widerspruch im Code: Das Modul wirft intern völlig korrekt eine WebhookEventRetryException (da die Bestellung zum exakten Zeitpunkt des Webhook-Eingangs wegen DB-Transaktionen/Race-Conditions noch nicht vollständig geladen werden kann).

Fehlerhaftes HTTP-Handling: Anstatt diese Retry-Exception zu nutzen, um PayPal über einen HTTP-Statuscode 422 oder 503 mitzuteilen, dass der Request später wiederholt werden soll, fängt das Modul (oder der OXID-Core) die Exception ab und antwortet mit einem HTTP 200 OK.

Die Folge: PayPal hakt den Webhook als "erfolgreich zugestellt" ab und sendet ihn nie wieder. Dem Shop fehlen dadurch dauerhaft die Zahlungs- und Bankdaten für den Rechnungskauf.
Additional Informationoxorder.oxtimestamp: 2026-06-30 16:11:41
oscpaypal_order.oxtimestamp: 2026-06-30 16:11:40

Auszug aus der PayPal Log:
[2026-06-30 16:11:43] PayPal Payment Logger.ERROR: Shop Order for PayPal order 'xxx' not found ["[object] (Ox
idSolutionCatalysts\\PayPal\\Exception\\WebhookEventRetryException(code: 0): Shop Order for PayPal order 'xxx
' not found at .../vendor/oxid-solution-catalysts/paypal-module/src/Exception/WebhookEventRetryException.
php:18)\n[stacktrace]\n#0 .../vendor/oxid-solution-catalysts/paypal-module/src/Core/Webhook/Handler/Webho
okHandlerBase.php(180): OxidSolutionCatalysts\\PayPal\\Exception\\WebhookEventRetryException::byPayPalOrderId()\n#1 .../vendor/oxid-solution-catalysts/paypal-module/src/Core/Webhook/Handler/WebhookHandlerBase.php(51): OxidSoluti
onCatalysts\\PayPal\\Core\\Webhook\\Handler\\WebhookHandlerBase->getOrderByPayPalOrderId()\n#2 .../vendor
/oxid-solution-catalysts/paypal-module/src/Core/Webhook/EventDispatcher.php(27): OxidSolutionCatalysts\\PayPal\\Core\\Webho
ok\\Handler\\WebhookHandlerBase->handle()\n#3 .../vendor/oxid-solution-catalysts/paypal-module/src/Core/W
ebhook/RequestHandler.php(87): OxidSolutionCatalysts\\PayPal\\Core\\Webhook\\EventDispatcher->dispatch()\n#4 .../vendor/oxid-solution-catalysts/paypal-module/src/Core/Webhook/RequestHandler.php(61): OxidSolutionCatalysts\\PayPal
\\Core\\Webhook\\RequestHandler->processEvent()\n#5 .../vendor/oxid-solution-catalysts/paypal-module/src/
Controller/WebhookController.php(50): OxidSolutionCatalysts\\PayPal\\Core\\Webhook\\RequestHandler->process()\n#6 .../vendor/oxid-esales/oxideshop-ce/source/Core/ShopControl.php(398): OxidSolutionCatalysts\\PayPal\\Controller\\W
ebhookController->init()\n#7 .../vendor/oxid-esales/oxideshop-ce/source/Core/ShopControl.php(278): OxidEs
ales\\EshopCommunity\\Core\\ShopControl->_initializeViewObject()\n#8 .../vendor/oxid-esales/oxideshop-ce/
source/Core/ShopControl.php(142): OxidEsales\\EshopCommunity\\Core\\ShopControl->_process()\n#9 .../vendo
r/oxid-esales/oxideshop-ce/source/Core/Oxid.php(27): OxidEsales\\EshopCommunity\\Core\\ShopControl->start()\n#10 .../source/index.php(16): OxidEsales\\EshopCommunity\\Core\\Oxid::run()\n#11 {main}\n"] []

Access Log:
173.0.81.200 - - [30/Jun/2026:16:11:42 +0200] "POST /index.php?cl=oscpaypalwebhook HTTP/1.1" 200 4052 "-" "PayPal/AUHD-1.0-1"

Es werden noch 2 weitere Anfragen an den Webhook gesendet, welche mit dem gleichen Fehler geloggt, aber mit 200 beantwortet werden.
TagsNo tags attached.
ThemeNot defined
BrowserNot defined
PHP VersionNot defined
Database VersionNot defined

Activities

There are no notes attached to this issue.