Paypal 贝宝智能支付按钮-请求数量
我正在使用PayPal智能支付按钮在我的网站上销售单个项目,但我在任何文档中都找不到如何索要数量 智能支付按钮API甚至可以做到这一点吗 我只是想让客户能够更改他们想要购买的商品的数量。我不介意它是在贝宝的表单中还是在结账阶段 这是我迄今为止的代码,它非常标准,因为我试图保持简单:Paypal 贝宝智能支付按钮-请求数量,paypal,paypal-sandbox,Paypal,Paypal Sandbox,我正在使用PayPal智能支付按钮在我的网站上销售单个项目,但我在任何文档中都找不到如何索要数量 智能支付按钮API甚至可以做到这一点吗 我只是想让客户能够更改他们想要购买的商品的数量。我不介意它是在贝宝的表单中还是在结账阶段 这是我迄今为止的代码,它非常标准,因为我试图保持简单: <script> // Render the PayPal button into #paypal-button-container paypal.Buttons({ st
<script>
// Render the PayPal button into #paypal-button-container
paypal.Buttons({
style: {
size: 'responsive',
shape: 'pill',
label: 'checkout',
},
// Set up the transaction
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{
amount: {
value: '8.99'
}
}]
});
},
// Finalize the transaction
onApprove: function(data, actions) {
return actions.order.capture().then(function(details) {
// Show a success message to the buyer
alert('Transaction completed by ' + details.payer.name.given_name + '!');
});
}
}).render('#paypal-button-container');
</script>
//将PayPal按钮渲染到#PayPal按钮容器中
贝宝,按钮({
风格:{
尺寸:'响应',
形状:'药丸',
标签:“签出”,
},
//设置事务
createOrder:函数(数据、操作){
return actions.order.create({
购买单位:[{
金额:{
值:“8.99”
}
}]
});
},
//完成交易
onApprove:功能(数据、操作){
返回actions.order.capture().then(函数(详细信息){
//向买家显示成功消息
警报(“+details.payer.name.given_name+”!”完成的交易);
});
}
}).render(“#贝宝按钮容器”);
在客户机上实现数量字段。您必须细分金额字段,然后在采购单位中添加“项目总数”和“项目”字段
供参考:
createOrder: function(data, actions) {
console.log(data);
console.log(actions);
return actions.order.create({
purchase_units: [{
amount: {
value: (<HTMLInputElement>document.getElementById("number1")).value,
breakdown: {
item_total:{
"currency_code": "EUR",
value: (<HTMLInputElement>document.getElementById("number1")).value,
},
tax_total: {
"currency_code": "EUR",
"value": "00.00"
},
}
},
items: [
{
"name": "",
"description": ".......",
"sku": "sku01",
"unit_amount": {
"currency_code": "EUR",
"value": "20.00"
},
"quantity": (<HTMLInputElement>document.getElementById("number")).value,
}]
}],
createOrder:函数(数据、操作){
控制台日志(数据);
控制台日志(操作);
return actions.order.create({
购买单位:[{
金额:{
value:(document.getElementById(“number1”)).value,
细分:{
项目u总计:{
“货币代码”:“欧元”,
value:(document.getElementById(“number1”)).value,
},
税款总额:{
“货币代码”:“欧元”,
“值”:“00.00”
},
}
},
项目:[
{
“名称”:“,
“说明”:“…”,
“sku”:“sku01”,
“单位金额”:{
“货币代码”:“欧元”,
“值”:“20.00”
},
“数量”:(document.getElementById(“number”)).value,
}]
}],
我已经这样做了,但没有开账单。
我将最终价格“金额”作为价格乘以数量,并在我的数据库中保存账单的所有细节。
这是我使用的javascript代码:
amount: {
value: "<?= $_SESSION['price'] * $_SESSION['quantity'] ?>" ,
currency_code: 'EUR'
},
在这两种代码中,应在呈现按钮之前设置值,这意味着在加载页面之前
amount: {
value: document.getElementById("quantity").value * document.getElementById("price").value ,
currency_code: 'EUR'
},