我尝试使用PayPal Smart Button在网站上进行付款。
我首先创建了一个计划,获得了它的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>
当我单击“贝宝”按钮付款时。我收到此错误:RESOURCE_NOT_FOUND
我不知道这意味着什么,遇到同样问题的人也没有得到支持。
答案 0 :(得分:2)
您使用的旧PayPal-PHP-SDK不应再用于任何新的集成。它不支持新的Subscriptions API,而是对较旧的内容使用计费计划,这与您尝试执行的操作不兼容(结果为RESOURCE_NOT_FOUND错误)
应该使用新的paypal/Checkout-PHP-SDK进行常规付款,但它还不支持新的Subscriptions API。
不幸的是,没有用于订阅的PHP SDK。要使用Subscriptions API,您需要实现直接的HTTPS REST API调用以创建必要的产品,计划和协议。
您可以使用命令行curl
进行测试,或者先进行邮递员调用以确认其正常工作,然后编写必要的PHP函数以使用oauth令牌对PayPal进行自己的HTTPS调用。