php - PayPal PHP SDK 不适用于订阅,获取 RESOURCE_NOT_FOUND

标签 php paypal paypal-sandbox

我尝试使用 PayPal 智能按钮在网站上进行付款。

我首先创建了一个计划,我得到了它的 ID,然后我通过 API 和 PHP 中的 PayPal SDK 的命令激活了它。

该计划似乎是有效的。

<script src="https://www.paypal.com/sdk/js?client-id=sb-key&vault=true&disable-funding=card"></script>
<script>
    paypal.Buttons({
        env: 'sandbox',
        createSubscription: function(data, actions) {
            return actions.subscription.create({
                'plan_id': 'P-85G86700MN...223CGEJWTI'
            });
        },
        onApprove: function(data, actions) {
            alert('You have successfully created subscription ' + data.subscriptionID);
        }
    }).render('#paypal-button-container');
</script>

当我点击 PayPal 按钮进行支付时。我收到此错误:RESOURCE_NOT_FOUND

我不知道这一切意味着什么,遇到同样问题的人也没有得到支持。

enter image description here

最佳答案

PayPal-PHP-SDK您正在使用的不应再用于任何新的集成。它不支持新的订阅 API,而是使用旧的计费计划,这与您尝试执行的操作不兼容(结果是 RESOURCE_NOT_FOUND 错误)

paypal/Checkout-PHP-SDK可用于定期付款(2022 年编辑:尽管现在也可能已弃用),但也不支持订阅 API。

所以基本上,没有用于订阅的 SDK。使用 Subscriptions API ,您需要实现直接 HTTPS REST API 调用以首先创建必要的产品 + 计划,然后创建“订阅”(类似协议(protocol)的对象)并在结帐时批准。或者,您可以先通过帐户界面更简单地创建产品+计划:sandbox login , 或 live ,它还会生成示例 JS 按钮代码,供买家点击并创建/批准订阅。

您可以先使用命令行 curl 或 postman 调用进行测试,以确认您想要执行的操作有效,然后编写必要的 PHP 函数以使用 oauth 对 PayPal 执行您自己的 HTTPS 调用 token 。

哦,还可以创建产品 + 计划并(如果需要)在每个帐户的网络界面中生成相应的按钮。

关于php - PayPal PHP SDK 不适用于订阅,获取 RESOURCE_NOT_FOUND,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60064508/

相关文章:

paypal - SetExpressCheckout 在 Netbeans 中不起作用

php - paypal IPN突然失效(无HTTP响应)

php - 获取用户所在国家 Facebook API PHP SDK

javascript - jquery 的意外结果

ios - 快速结帐按钮而不是 iPhone 中的使用 paypal 按钮付款

php - PayPal 自适应支付 - 不允许用户执行此操作

android - 在这里构建 paypal sdk 时出错

paypal - PayFlow Paypal 定期付款

php - 不使用 PHP 在网站上调用外部 PHP 脚本

php - 如何在不丢失WordPress站点的情况下删除WordPress数据库中的主表?