贝宝智能订阅服务器端

问题描述

您好,尝试将我的PayPal智能订阅按钮javascript转换到服务器端,尤其是在PHP上。但是我一直在网上寻找,并且PayPal文档仍然找不到和来源。它类似于this PayPal demo of server-side

<div id="paypal-button-container"></div>
    <script src="https://www.paypal.com/sdk/js?client-id=Subscription_id&vault=true" data-sdk-integration-source="button-factory"></script>
    <script>
      paypal.Buttons({
          style: {
              shape: 'rect',color: 'gold',layout: 'horizontal',label: 'subscribe'
          },createSubscription: function(data,actions) {
            return actions.subscription.create({
              'plan_id': 'Plan_id'
            });
          },onApprove: function(data,actions) {
            alert(data.subscriptionID);
          }
      }).render('#paypal-button-container');
    </script>

解决方法

我不知道演示示例,但是可以通过以下API调用来完成createSubscription部分:https://developer.paypal.com/docs/api/subscriptions/v1/#subscriptions_create

如果您不希望PayPal自动激活订阅,则可以将application_context-> user_action的值更改为something other,而不是SUBSCRIBE_NOW

然后,您将需要以下API调用来激活订阅:https://developer.paypal.com/docs/api/subscriptions/v1/#subscriptions_activate

为了触发这两个API调用,您需要将命令分别从createSubscriptiononApprove提取到服务器上的两条路由(类似于您链接到的one time checkout demo