我正在尝试将Amazon Payments(仅限付款,而不是使用Amazon登录)整合到我的网站中。
我可以成功显示付款的身份验证表单:
<div id="AmazonPayButton" />
@{
var callbackurl = string.Format("{0}://{1}/Account/AmazonConfirm", Request.Url.Scheme, Request.Url.Authority);
}
<script type="text/javascript">
OffAmazonPayments.Button("AmazonPayButton", "M_MYSELLERID_1234567", {
type: "PwA",
size: "medium",
authorization: function() {
loginOptions =
{scope: "payments:widget", popup: true };
authRequest = amazon.Login.authorize(loginOptions, "@(callbackurl)");
},
onError: function(error) {
alert('We could not connect to Amazon to process your payment, try again later');
}
});
</script>
</div>
亚马逊在身份验证后成功重定向到我的回调网址。但是当我尝试使用相同卖家ID 显示钱包小部件时,我收到“无效的卖家ID”错误:
<div id="walletWidgetDiv">
</div>
<script>
new OffAmazonPayments.Widgets.Wallet({
sellerId: 'M_MYSELLERID_1234567',
onReady: function(billingAgreement) {
var billingAgreementId = billingAgreement.getAmazonBillingAgreementId();
},
agreementType: 'BillingAgreement',
design: {
size : {width:'400px', height:'260px'}
},
onPaymentSelect: function(billingAgreement) {
// Replace this code with the action that you want to perform
// after the payment method is selected.
},
onError: function(error) {
alert(error.getErrorMessage());
}
}).bind("walletWidgetDiv");
</script>
为什么验证会有效,只是让电子钱包显示被拒绝?
更新 @Brent道格拉斯在他的回答中触发我重新检查我的卖家ID,并在我的一个脚本引用中指定了错误的ID。现在我收到以下错误:
“卖方ID未处于执行请求的适当状态”
不确定这意味着什么。我检查了我的帐户并指定了存款/银行信息,并且集成设置页面上没有标记任何其他信息。帐户中是否还有其他需要添加/验证的内容? (除了典型的网页网址和其他信息)
答案 0 :(得分:2)
您需要登录卖家中心帐户,确保&#34;亚马逊支付高级&#34;在顶部的下拉列表中选中,单击&#34;设置&#34;在右上角,然后&#34;集成设置&#34;。在此页面上,您将看到&#34;您的商家ID&#34;。这是您的卖家ID。将M_MYSELLERID_1234567替换为此卖家ID无处不在。
假设您使用的是正确的卖家ID,您还需要确保在您显示钱包小部件的句柄登录页面中包含以下内容。
<!-- since you are using 'popup' -->
<script type='text/javascript'>
window.onAmazonLoginReady = function () {
amazon.Login.setClientId('[YOUR_CLIENT_ID]');
amazon.Login.setUseCookie(true);
};
</script>
然后,您需要包含Widgets.js文件。
对于沙箱模式,您可以使用此功能。
<script src='https://static-na.payments-amazon.com/OffAmazonPayments/us/sandbox/js/Widgets.js'></script>
对于制作你会使用它。
<script src='https://static-na.payments-amazon.com/OffAmazonPayments/us/js/Widgets.js'></script>
答案 1 :(得分:0)