View Issue Details
ID | Project | Category | View Status | Date Submitted | Last Update |
---|---|---|---|---|---|
0007576 | module Amazon Pay | main | public | 2024-01-09 09:26 | 2024-02-14 16:37 |
Reporter | d3 | Assigned To | |||
Priority | normal | Severity | major | Reproducibility | always |
Status | resolved | Resolution | fixed | ||
Product Version | 2.1.3 | ||||
Fixed in Version | 2.1.4 | ||||
Summary | 0007576: OXID Logger.ERROR: OxidSolutionCatalysts\AmazonPay\Core\Helper\PhpHelper::jsonToArray(): - 2.1.4 | ||||
Description | We got this error: [2024-01-03 15:35:27] OXID Logger.ERROR: OxidSolutionCatalysts\AmazonPay\Core\Helper\PhpHelper::jsonToArray(): Argument #1 ($json) must be of type string, array given, called in /tdl.devendor/oxid-esales/amazon-pay-module/src/Core/AmazonService.php on line 562 ["[object] (TypeError(code: 0): OxidSolutionCatalysts\\AmazonPay\\Core\\Helper\\PhpHelper::jsonToArray(): Argument #1 ($json) must be of type string, array given, called in /tdl.devendor/oxid-esales/amazon-pay-module/src/Core/AmazonService.php on line 562 at /tdl.devendor/oxid-esales/amazon-pay-module/src/Core/Helper/PhpHelper.php:16)\n[stacktrace]\n #0 /tdl.devendor/oxid-esales/amazon-pay-module/src/Core/AmazonService.php(562): OxidSolutionCatalysts\\AmazonPay\\Core\\Helper\\PhpHelper::jsonToArray()\n #1 /tdl.devendor/oxid-esales/amazon-pay-module/src/Controller/DispatchController.php(109): OxidSolutionCatalysts\\AmazonPay\\Core\\AmazonService->processCharge()\n #2 /tdl.devendor/oxid-esales/oxideshop-ce/source/Core/ShopControl.php(471): OxidSolutionCatalysts\\AmazonPay\\Controller\\DispatchController->render()\n #3 /tdl.devendor/oxid-esales/oxideshop-ee/Core/ShopControl.php(209): OxidEsales\\EshopCommunity\\Core\\ShopControl->_render()\n #4 /tdl.devendor/oxid-esales/oxideshop-ce/source/Core/ShopControl.php(359): OxidEsales\\EshopEnterprise\\Core\\ShopControl->_render()\n #5 /tdl.devendor/oxid-esales/oxideshop-ee/Core/ShopControl.php(98): OxidEsales\\EshopCommunity\\Core\\ShopControl->formOutput()\n #6 /tdl.devendor/oxid-esales/oxideshop-ce/source/Core/ShopControl.php(282): OxidEsales\\EshopEnterprise\\Core\\ShopControl->formOutput()\n #7 /tdl.desource/modules/d3/modcfg/Modules/Application/Controller/d3_oxshopcontrol_modcfg_extension.php(164): OxidEsales\\EshopCommunity\\Core\\ShopControl->_process()\n #8 /tdl.devendor/oxid-esales/oxideshop-ce/source/Core/ShopControl.php(142): D3\\ModCfg\\Modules\\Application\\Controller\\d3_oxshopcontrol_modcfg_extension->_process()\n #9 /tdl.desource/modules/d3/modcfg/Modules/Application/Controller/d3_oxshopcontrol_modcfg_extension.php(94): OxidEsales\\EshopCommunity\\Core\\ShopControl->start()\n #10 /tdl.devendor/oxid-esales/oxideshop-ce/source/Core/Oxid.php(27): D3\\ModCfg\\Modules\\Application\\Controller\\d3_oxshopcontrol_modcfg_extension->start()\n 0000011 /tdl.desource/index.php(16): OxidEsales\\EshopCommunity\\Core\\Oxid::run()\n#12 {main}\n"] [] | ||||
Steps To Reproduce | The return from Amazon is not json, it is an array: array ( 'status' => 404, 'method' => 'GET', 'url' => 'https://pay-api.amazon.eu/live/v2/chargePermissions/P02-1761470-5260747-1234567', 'headers' => array ( 0 => 'accept:application/json', [] 11 => 'platformId:A1O8CIV1A24A6X', ), 'request' => NULL, 'response' => array ( 'reasonCode' => 'ResourceNotFound', 'message' => 'Resource you are trying to access is not available. Requested path \'/live/v2/chargePermissions/P02-1761470-5260747-1234567\'', ), 'request_id' => '090fa835-6ea4-48b4-8459-1233445', 'retries' => 0, 'duration' => 167, ) | ||||
Additional Information | Add an check for array/json a this line: https://github.com/OXID-eSales/amazon-pay-module/blob/0d5867966bb7b50eb9c5b2c90f327f65666d3e44/src/Core/AmazonService.php#L562 | ||||
Tags | No tags attached. | ||||