我正在使用 Sandbox,我使用 Paypal PHP SDK 创建了一个 paypal 计划并激活了它。
我正在按照集成指南创建对此计划的订阅 (https://developer.paypal.com/docs/subscriptions/integrate/#4-create-a-subscription)。
但是当我点击黄色按钮时,控制台出现 Javascript 错误:
Error: Create Subscription Api response error:
{
"name": "RESOURCE_NOT_FOUND",
"message": "The specified resource does not exist.",
"debug_id": "23912dc1195d",
"details": [
{
"issue": "INVALID_RESOURCE_ID",
"description": "Requested resource ID was not found."
}
],
"links": [
{
"href": "https://developer.paypal.com/webapps/developer/docs/api/#INVALID_RESOURCE_ID",
"rel": "information_link",
"method": "GET"
}
]
}
我检查了该计划是否存在,并且它可以使用 Paypal PHP SDK。
这是使用的 Javascript 代码:
<script src="https://www.paypal.com/sdk/js?client-id=sandbox_paypal_client_id&vault=true"></script>
<div id="paypal-button-container"></div>
<script>
// paypal.Buttons().render('#paypal-button-container');
paypal.Buttons({
createSubscription: function(data, actions) {
return actions.subscription.create({
'plan_id': 'P-8N6112936N290211KKMN5MZI'
});
},
onApprove: function(data, actions) {
alert('You have successfully created subscription ' + data.subscriptionID);
}
}).render('#paypal-button-container');
</script>
在 paypal 开发人员仪表板中,我看到了此操作的 API 调用,但显示为橙色...
预先感谢您的帮助。
最佳答案
我也遇到了这个问题。关注 Subscriptions Integration instructions 时我的困惑是我认为 SDK 可以与 Subscription Plans 一起使用(API 端点 /billing/plans
),但在撰写本文时它还没有(至少 PHP 和 .NET 版本)- SDK 仅适用于较旧的 Billing Plans (/payments/billing-plans
) 的名称非常相似(简称 Plans)。
正如@giannisrig 所说,您必须直接调用 API 的订阅计划部分 (/billing/plans
)。我希望他们能尽快更新 SDK - 这似乎是一个重要的缺失功能。
关于 Paypal 智能支付按钮和创建订阅给我一个 RESOURCE_NOT_FOUND 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57330688/