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() : () =&gt; Promise&lt;PaymentDetails&gt;

调用 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 - 填充产品详细信息

Paypal重复/订阅集成问题[关闭]

PayPal Express Checkout.js - Checkout.js 中未定义的 indexOf

无法让 PayPal checkout.js 创建成功的交易