PayPal checkout.js - 获取付款 ID 和付款人 ID
Posted
技术标签:
【中文标题】PayPal checkout.js - 获取付款 ID 和付款人 ID【英文标题】:PayPal checkout.js - Get paymentID & payerID 【发布时间】:2018-12-12 16:25:38 【问题描述】:我在我的网站上使用 PayPal Express Chechkout 进行单笔付款。一切正常,除了我无法从 PayPal 获取 paymentID 和 payerID。如果事务成功,我需要这些变量在我的数据库中进行更改。
目前我正在使用以下代码。 Sandbox 和 Live Modus 中的交易工作正常,付款成功后的重定向也是如此。我的问题是,我无法检索 paymentID 和 payerID。
<script src='https://www.paypalobjects.com/api/checkout.js'></script>
<div id='paypal-button'></div>
<script>\n";
paypal.Button.render(
// Configure environment
print "env: 'sandbox',
client:
sandbox: 'SANDBOX-KEY',
production: 'PRODUCTION-KEY'
,
// Customize button (optional)\n";
locale: 'de_DE',
style:
size: 'small',
color: 'gold',
shape: 'pill',
,
// Set up a payment
payment: function (data, actions)
return actions.payment.create(
transactions: [
amount:
total: '".$price."',
currency: 'EUR'
]
);
,
// Execute the payment:
// 1. Add an onAuthorize callback
onAuthorize: function(data, actions)
return actions.payment.execute( paymentID: data.paymentID, payerID: data.payerID )
then(function(res) window.location.replace ('MY-URL/index.php?func=billing&pp_success=1&paymentID=$paymentID') )
catch(function(err) window.location.replace ('MY-URL/index.php?func=billing&pp_error=1') );
,
, '#paypal-button');
</script>
谁能告诉我,我需要如何更改我的代码才能从交易中获取 paymentId 和 payerID?
【问题讨论】:
【参考方案1】:PayPal Checkout API
...
actions.payment.execute()
:() => Promise<PaymentDetails>
调用 PayPal REST API 的助手函数,执行 交易,并返回一个包含Payment details object 的承诺以及交易详情、买家详情等。
...
例子:
...
actions.payment.execute( ... )
.then(function(res) ... res.id /* $paymentID */ ... ) ...
...
【讨论】:
以上是关于PayPal checkout.js - 获取付款 ID 和付款人 ID的主要内容,如果未能解决你的问题,请参考以下文章
PayPal Express Checkout.js - 发送自定义参数
无法让 Paypal 在上下文中 checkout.js v4 与 REST API 一起使用
Paypal Express Checkout.js - 填充产品详细信息