Paypal 尝试从智能按钮创建订阅时出错

Paypal 尝试从智能按钮创建订阅时出错,paypal,paypal-rest-sdk,Paypal,Paypal Rest Sdk,我正在尝试从智能支付按钮订阅paypal账单计划。 但我不断收到错误“指定的资源不存在” 订阅Api响应错误: { “名称”:“未找到资源”, “消息”:“指定的资源不存在。”, “调试id”:“82ac38ce75745”, “详情”:[ { “问题”:“无效的资源\u ID”, “说明”:“未找到请求的资源ID。” } ], “链接”:[ { “href”:“, “rel”:“信息链接”, “方法”:“获取” } ]} 错误图像: 根据第201行env:'live',看起来您是在针对一个l

我正在尝试从智能支付按钮订阅paypal账单计划。 但我不断收到错误“指定的资源不存在”

订阅Api响应错误:

{ “名称”:“未找到资源”, “消息”:“指定的资源不存在。”, “调试id”:“82ac38ce75745”, “详情”:[ { “问题”:“无效的资源\u ID”, “说明”:“未找到请求的资源ID。” } ], “链接”:[ { “href”:“, “rel”:“信息链接”, “方法”:“获取” } ]}

错误图像:


根据第201行
env:'live'
,看起来您是在针对一个live帐户开发此功能,这不是一个好的做法,例如,破坏live站点中的功能

我在使用Java时遇到了同样的问题,显然每个订阅只能使用一个计费计划,这意味着您需要为每个订阅创建一个计费计划


您可以在中找到更多信息。

我认为问题在于此<代码>“计划id”:“P-1G3183167U24246113LMNZLY”。首先,您需要检查您的帐户是否有具有此计划id的计划。如果没有,您需要先创建产品,然后创建计划,然后您可以在smart buy按钮中使用您的计划id

只需按照本页中的说明进行操作:


我遇到了同样的问题,并找到了解决方案(至少对我来说是这样)

在出现此问题时,我使用的是我在PayPal web dashboard UI中创建的实际计划(处于草稿状态)中的计划ID。我认为在使用PayPal沙盒进行测试时,这是允许的。不是

您必须遵循使用PayPalRESTAPI(通过bash+curl或其他API测试工具,如Postman)创建假测试产品和假测试计划。您不能通过任何web UI创建您的测试产品+计划,也不能针对真实世界的产品+计划进行测试,即使该产品仍处于草稿状态

通过PayPal的REST API创建假测试产品+计划后,您可以将REST API返回的计划ID插入到站点上PayPal按钮的JavaScript中


另外:请确保在脚本标记中,您使用的是来自PayPal沙盒业务帐户的客户端ID,而不是实际的PayPal帐户。

我认为这是正确的答案,但目前PayPal sandobx似乎拒绝连接,至少是来自邮递员的连接。Wierd ehough说,您不能仅仅使用paypal UI来创建测试计划。。。。
paypal.Buttons({

    createSubscription: function (data, actions) {

        return actions.subscription.create({
            'plan_id': 'P-1G3183167U24246113LMNZLY'
        });
    },

    onApprove: function (data, actions) {

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


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