Paypal 定期智能支付按钮

Posted

技术标签:

【中文标题】Paypal 定期智能支付按钮【英文标题】:Paypal recurring Smart Payment Button 【发布时间】:2020-03-23 04:09:00 【问题描述】:

是否可以使用 Paypal 定期付款的智能付款按钮来传递其他参数,例如发票 ID。

paypal.Buttons(

  createSubscription: function(data, actions) 

    return actions.subscription.create(

      'plan_id': 'P-2UF78835G6983425GLSM44AM'

    );

  ,


  onApprove: function(data, actions) 

    alert('You have successfully created subscription ' + data.subscriptionID);

  


).render('#paypal-button-container');

这是来自https://developer.paypal.com/docs/subscriptions/integrate/#4-create-a-subscription 的示例代码 它说:

使用 actions.subscription.create() 调用 PayPal 为您的计划创建订阅,其中包括计划 ID、订阅者详细信息、运输和其他详细信息。

但除了plan_id,我什么都不能传递。

【问题讨论】:

【参考方案1】:

您可以按照on this page 的说明添加 custom_id 字段

在这种情况下,您的代码如下所示

return actions.subscription.create(
   'custom_id': 'my-custom-code-for-integration',
   'plan_id': 'P-2UF78835G6983425GLSM44AM'
 );

【讨论】:

【参考方案2】:

底层API是/v1/billing/subscriptions

这是参考:https://developer.paypal.com/docs/api/subscriptions/v1/#subscriptions_create

它似乎没有 invoice_id 字段 - 因此,您的问题的答案是不,这是不可能的。


您将在结果响应中获得唯一的 PayPal 订阅配置文件 ID,例如"id": "I-BW452GLLEP1G" -- 所以,您可以将配置文件 ID 存储在您自己的发票记录中。

【讨论】:

以上是关于Paypal 定期智能支付按钮的主要内容,如果未能解决你的问题,请参考以下文章

paypal智能支付按钮显示问题

PayPal 智能支付按钮:如何更改语言

PayPal Checkout 与智能支付按钮的集成

使用旧状态的 PayPal 智能支付按钮

PayPal智能支付按钮与服务器端REST API集成

使用智能支付按钮(React + Redux)的 PayPal 结帐创建订单问题