使用 paypal.FUNDING.CARD 按钮 update_client_config_error 的 PayPal 智能按钮(订阅)

Posted

技术标签:

【中文标题】使用 paypal.FUNDING.CARD 按钮 update_client_config_error 的 PayPal 智能按钮(订阅)【英文标题】:PayPal Smart Buttons (Subscription) using paypal.FUNDING.CARD button update_client_config_error 【发布时间】:2020-11-19 07:25:59 【问题描述】:

我正在为我的网站实现 Paypal Smart 按钮以进行订阅,代码如下:

paypal.Buttons(
    commit: false,
       createSubscription: function(data, actions) 
         return actions.subscription.create(
           plan_id: 'P-4688500211745173CL4LO52Y'
         );
       ,
       onCancel: function (data) 
       ,
       onApprove: function(data, actions) 
       
  ).render('#paypal-button-container');

我通过借记卡或信用卡订阅(paypal.FUNDING.CARD 按钮)。它返回订阅的 JSON 数据:


  billingToken: "BA-28952229JX1690450"
  facilitatorAccessToken: "A21AAF2g9HmhCrpdlvKv82KzTOL7s- 
  h7udVM63Jx6PoEQJvhRHUKZXuxdEewBWbAlh7Tta44GREGBKPqydgSaWBdTZBInLTMA"
  orderID: "91D07990YA8971453"
  subscriptionID: "I-EN0D6RAEFN8R"

但是当我需要使用基于 PayPal 文档的https://api.sandbox.paypal.com/v1/billing/subscriptions/I-EN0D6RAEFN8R/revise API 端点降级或升级当前订阅时。 https://developer.paypal.com/docs/business/subscriptions/add-capabilities/revise-subscriptions/

PayPal 窗口自动关闭,我收到错误消息:“未捕获的错误:Api: /smart/api/billagmt/subscriptions/I-EN0D6RAEFN8R/cartid 返回状态代码:500 (Corr ID: e0a949aefc835)”

这是我修改订阅的代码:

paypal.Buttons(
    commit: false,
       createSubscription: function(data, actions) 
         return actions.subscription.revise('I-EN0D6RAEFN8R', 
           plan_id: 'P-0P5665289K689682KL4MD5PQ'
         );
       ,
       onCancel: function (data) 
       ,
       onApprove: function(data, actions) 
       
  ).render('#paypal-button-container');

注意:通过 PayPal 帐户(paypal.FUNDING.PAYPAL 按钮)订阅不会出现我通过 PayPal 信用卡或借记卡订阅时遇到的错误。我也可以使用上面的修改代码升级或降级订阅计划。

有人遇到过同样的问题吗?

【问题讨论】:

【参考方案1】:

这种行为是有道理的,您需要登录 PayPal 帐户才能批准修改订阅。

当没有可登录的内容时,无法在客户端批准修订。您自己的授权服务器端 API 调用是修改/取消它所必需的。您可以让用户重新注册(新的个人资料)并取消原来的。

【讨论】:

我已经跳过了他们文档中的部分,即当您使用借记卡或信用卡订阅时修改当前订阅不需要使用贝宝智能按钮。直接调用revise API即可。还是谢谢。 有这个更新/修改电话:developer.paypal.com/docs/api/subscriptions/v1/…,但你可以更改的内容有限

以上是关于使用 paypal.FUNDING.CARD 按钮 update_client_config_error 的 PayPal 智能按钮(订阅)的主要内容,如果未能解决你的问题,请参考以下文章

如何使用Vue.js中的按钮点击事件并获取按钮属性

如何使用普通按钮而不是条形按钮项

如何使用布局将按钮放入另一个按钮

以编程方式创建按钮并使用侦听器从第一个按钮创建下一个按钮

当使用退格键或删除按钮提交按钮颜色不改变

单选按钮RadioButton使用