贝宝订阅和智能支付按钮——添加描述/元数据

Posted

技术标签:

【中文标题】贝宝订阅和智能支付按钮——添加描述/元数据【英文标题】:PayPal Subscriptions and Smart Payment Buttons -- adding a description/metadata 【发布时间】:2020-07-22 06:30:09 【问题描述】:
            createSubscription: function(data, actions) 

              console.log($('#donation-details').val());
              return actions.subscription.create(

                'plan_id': window.VUE_DONATION_MODULE.getPlanId(),
                // I want to add meta data about the subscription
                'description': $('#donation-details').val(),
                'application_context':brand_name:$('#donation-details').val()
              );

            ,


            onApprove: function(data, actions) 


              $('#step-7').removeClass('active').fadeOut();
              $('#step-9').addClass('active').fadeIn();

            

我正在使用 PayPal 智能按钮进行订阅,并希望添加元数据。对于一次性付款,我使用“描述”字段输入此元数据。请帮我找到一种记录订阅元数据的方法;我希望它在登录 PayPal 后在商家帐户和客户帐户中显示在交易详细信息下。

【问题讨论】:

【参考方案1】:

计划有一个描述字段,您可以在创建原始计划时使用:https://developer.paypal.com/docs/api/subscriptions/v1/#plans-create-request-body

如果您需要按用户元数据作为计划描述的一部分,则必须为每个用户创建一个新计划。

如果您只需要将其他元数据与用户的订阅相关联,则必须在您自己的数据库中执行此操作。在您的站点/应用程序创建订阅 ID 对象时将其与用户相关联,因此所有其他元数据都可以由您的站点/应用程序存储,并由用户或订阅 ID 查找。

【讨论】:

非常感谢您的回复。我认为为每个用户创建计划描述是不好的。作为一种解决方案,我会将元数据与事务的映射一起存储。 你可以通过一个custom_id来创建订阅按钮,见***.com/a/66776897/1066234 ---我也遇到了这个问题。我需要添加更多数据,然后只是 custom_id。我实际上想更改客户付款时显示的“支付目的”字段(并显示在每个月的报告中)。现在,它只显示“Plan XYZ”。但在使用旧的 Paypal 订阅之前,我可以修改它,例如“计划 XYZ (misterab@c.com, 1234)”很容易。这似乎不再可能了。 据我所知,description 不能再即时修改,而是根据设置的订阅计划从贝宝预填充。

以上是关于贝宝订阅和智能支付按钮——添加描述/元数据的主要内容,如果未能解决你的问题,请参考以下文章

Paypal 智能按钮元数据 - Webhook

贝宝按钮订阅和添加到数据库

贝宝智能支付按钮动态支付金额

Stripe:在创建时将元数据添加到订阅

贝宝订阅流程

如何在 chrome 扩展中实现支付