JavaScript & PayPal Checkout Button Question



我目前正在使用Javascript测试PayPal结帐集成的沙箱。

我知道如何使用"沙箱"模式与使用Live">

我想问的是我如何设置产品的标题,以便买家可以在点击"立即付款"之前确切地看到他们将要购买的产品。按钮以完成交易?

这是我目前正在处理的代码,如下所示:

//HTML GOES HERE TO CONTAIN THE PAYPAL BUTTON
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?&client-id=[MY-CLIENT-ID-GOES-HERE]&merchant-id=[MY-MERCHANT-EMAIL-ADDRESS-GOES-HERE]&currency=USD"></script>

paypal.Buttons({
style: {
layout:  'vertical',
color:   'gold',
shape:   'pill',
label:   'buynow'
},
// Sets up the transaction when a payment button is clicked
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{
amount: {
value: 50, // Can reference variables or functions. Example: `value: document.getElementById('...').value`
currency: 'USD'
},
}]

});

},

// Finalize the transaction after payer approval
onApprove: function(data, actions) {
return actions.order.capture().then(function(orderData) {
// Successful capture! For dev/demo purposes:
console.log('Capture result', orderData, JSON.stringify(orderData, null, 2));
var transaction = orderData.purchase_units[0].payments.captures[0];
alert('Transaction '+ transaction.status + ': ' + transaction.id + 'nnSee console for all available details');
// When ready to go live, remove the alert and show a success message within this page. For example:
// var element = document.getElementById('paypal-button-container');
// element.innerHTML = '';
// element.innerHTML = '<h3>Thank you for your payment!</h3>';

actions.redirect('https://SomeWebsiteURLiWillForwardThemTo.com');
});
}
}).render('#paypal-button-container');

在paypal文档中可以看到购买单位对象。https://developer.paypal.com/docs/api/orders/v2/#definition-purchase_unit在该对象中,可以看到可以传递一个items数组。这是一个对象数组,你可以在这里查看https://developer.paypal.com/docs/api/orders/v2/#definition-item。您可以定义每个产品的参数,包括名称。所以在你的情况下,我认为你可以试着这样做:

purchase_units: [{
amount: {
value: 50,
currency: 'USD',
breakdown: {
item_total: {
currency_code: 'USD',
value: 50
},
}
},
items: [
{
name: 'Product Name',
unit_amount: {
currency_code: 'USD',
value: 50
},
quantity: '1'
}
]
}]

这里是一个工作小提琴只是弹出您的客户端id来测试。小提琴演示

注意:查看文档,看看哪些字段是必需的。我还认为,您需要对金额进行细分,这样才能发挥作用。

相关内容

  • 没有找到相关文章

最新更新