我尝试将Subscriptions API集成到我的网站。 首先,我不确定是否应该使用此API或计费协议API,我想要的只是每月向我的客户收取固定金额的费用...
我正在使用贝宝(PayPal)建议的最新集成步骤: https://developer.paypal.com/docs/limited-release/subscriptions
反正
我已经创建了产品,计划和订阅, 最后我得到了一个ID(I-2PR5ANJT6J4C)
我尝试在PayPal按钮中使用此ID:
<script src="https://www.paypal.com/sdk/js?client-id=sb¤cy=ILS"></script>
<script>paypal.Buttons({
style: {
shape: 'pill'
},
env: 'sandbox', // Or 'production'
// Set up the payment:
// 1. Add a payment callback
createOrder: function(data, actions) {
// 2. Make a request to your server
return new Promise(function(resolve) {
return resolve('I-2PR5ANJT6J4C');
})
},
// Execute the payment:
// 1. Add an onAuthorize callback
onAuthorize: function(data, actions) {
// 2. Make a request to your server
return actions.request.post('/my-api/execute-payment/', {
paymentID: data.paymentID,
payerID: data.payerID
})
.then(function(res) {
// 3. Show the buyer a confirmation message.
});
}
}).render('#paypal-button-container');</script>
我得到了这个错误:
Uncaught Error: I-2PR5ANJT6J4C does not match pattern for order-id, ec-token or cart-id
还有其他人遇到这个问题吗?如何将订阅ID传递给按钮才能正常工作?
谢谢, 阿萨夫
答案 0 :(得分:0)
这个问题有点老了,但是如果您或其他人仍在寻找答案,只需使用createSubscription
而不是createOrder
:
createSubscription: function(data, actions) {
// 2. Make a request to your server
return new Promise(function(resolve) {
return resolve('I-2PR5ANJT6J4C');
})
}