我正在学习使用Paypal的新API版本,我对此有些疑问。
注意:我已经在https://www.sandbox.paypal.com上进行过尝试,并且可以正常工作, 我尚未在Live上进行测试。
我需要将其他个性化数据发送到Paypal,一旦用户付款,我将返回服务器上的URL,然后检索我发送的数据。
Paypal使用 fetch()来指定URL和一个称为标头的Json对象,在那里我添加了需要恢复的名为 user_ID 的附加值。
我正在使用PHP函数 getallheaders()来检索我指定的 user_ID 。
我的问题是:
非常感谢您的帮助。
<!DOCTYPE html>
<head>
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
</head>
<body>
<input type="text" id="price" value="100.00">
<input type="hidden" id="user_id" value="15">
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=HERE_CLIENT_ID¤cy=USD"></script>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{
amount: {
value: document.getElementById("price").value
}
}]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(details) {
alert('Transaction completed by ' + details.payer.name.given_name);
// Call your server to save the transaction
return fetch('https://my-domain.com/payment-from-paypal.php', {
method: 'post',
headers: {
'content-type': 'application/json'
},
body: JSON.stringify({
orderID: data.orderID,
user_ID: document.getElementById("user_id").value
})
});
});
}
}).render('#paypal-button-container');
</script>
</body>