在亚马逊帐户上成功登录后,亚马逊支付上收到"访问被拒绝"错误



我已经为亚马逊支付实施了PHP SDK,目前我面临一个错误,当我单击亚马逊支付按钮时,将打开一个弹出窗口,询问亚马逊的登录凭据,成功登录后,它将重定向到地址簿和付款方式选择页面,在该页面上我面临此错误,我得到的Json响应如下。

AmazonPayResponseParser Object
(
[response] => Array
(
[Status] => 401
[ResponseBody] => 

Sender
AccessDenied
Access denied
11e659e5-6413-4f49-ab38-339472490e5c

)
)
{
"Error": {
"Type": "Sender",
"Code": "AccessDenied",
"Message": "Access denied"
},
"RequestID": "11e659e5-6413-4f49-ab38-339472490e5c",
"ResponseStatus": "401"
}

因此,如果您知道此错误,请向我建议。 提前感谢!

请在亚马逊支付配置文件上设置正确的国家/地区配置设置。 即,如果您的国家/地区选择基于英国,则亚马逊支付沙盒仅适用于英镑和英国,如果您尝试使用其他区域或货币,则会收到此访问被拒绝错误。

还要交叉检查 Amazon 沙盒凭证与您在文件中设置的凭证,并确保所有设置正确无误。

<?php
namespace AmazonPay;
$config = array(
'merchant_id' => 'YOUR_MERCHANT_ID',
'access_key'  => 'YOUR_ACCESS_KEY',
'secret_key'  => 'YOUR_SECRET_KEY',
'client_id'   => 'YOUR_LOGIN_WITH_AMAZON_CLIENT_ID',
'region'      => 'REGION',
'sandbox'     => true);
$client = new Client($config);
// Also you can set the sandbox variable in the config() array of the Client class by
$client->setSandbox(true);

单击此处查看有关在您的网站上实施亚马逊支付网关的完整文档。

您需要在亚马逊支付配置文件上设置正确的国家/地区配置设置。 例如,如果您在卖家平台账户注册时选择区域为英国和货币为英镑,则必须在 Amazon Pay 配置文件中设置"区域"=>"英国"和"货币"=>"英镑"。 如果添加不同的区域或货币详细信息,则会收到"拒绝访问"错误。

请。。遵循以下代码

<?php
namespace AmazonPay;
$config = array(
'merchant_id' => 'YOUR_MERCHANT_ID',
'access_key'  => 'YOUR_ACCESS_KEY',
'secret_key'  => 'YOUR_SECRET_KEY',
'client_id'   => 'YOUR_LOGIN_WITH_AMAZON_CLIENT_ID',
'region'      => 'uk',   //set value here
'currency_code' => 'GBP' //set value here
'sandbox'     => true);
$client = new Client($config);

最新更新