题
我使用的网站付款标准打造循环支付订阅费。
我需要找出下一个计费日期为,所以它看起来像我可以用GetRecurringPaymentsProfileDetails NVP API与重复付款资料ID。
但是,当我把经常性支付的个人资料的ID,我得到一个失败回:
{'ack':'Failure',.... l_longmessage0: 'Subscription profiles not supported by Recurring Payment APIs.',
'l_shortmessage0': 'Subscription Profiles not supported.',....
这是否意味着预订按钮经常性支付简档不能经由GetRecurringPaymentsProfilesDetails NVP API检索?
如果是这样的话,有一些其他的API得到这个细节的用户签约信息?
解决方案
GetRecurringPaymentsProfileDetails不支持通过支付标准创建的预订简档,它仅支持通过NVP API创建定期付款的配置文件。
在撰写本文时,有没有API来获取订阅的详细信息。如果你想知道目前的状态,你必须使用一个IPN监听器来捕获和跟踪所有状态改变自己。
其他提示
您可以通过使用/v1/payments/billing-agreements/{billingid}/transactions?start_date=YYY-MM-DD$end_date=YYY-MM-DD
劫持API ...那么你中庸之道要检查,如果最后交易适合你的时间。
我得到它通过这种方式:
let options = {
method: 'post', headers: {'content-type':'application/json','Access-Control-Allow-Credentials':true},
auth:{'username':process.env.PAYPALID,'password':process.env.PAYPALPASSWORD},
url: 'https://api.paypal.com/v1/oauth2/token',
data: 'grant_type=client_credentials',
}
axios(options).then((response)=>{let paypaltoken=response.data.access_token
axios.get('https://api.paypal.com/v1/payments/billing-agreements/'+agreementid+'/transactions?start_date=2018-01-01&end_date=2019-07-07', { headers: { 'Authorization':'Bearer '+paypaltoken, 'Content-Type':'application/json', } })
.then((transaction)=>{console.log(transaction.data)})
.catch(err => {console.error(err);console.log('err: '+JSON.stringify(err)); res.send (err) })
})
.catch(err => {console.error(err);console.log('err: '+JSON.stringify(err)); res.send (err) })
那么如果你只是transaction.data,你会得到一系列的交易对象,其status
是== Completed
只有在交易就OK,就是它并没有被取消,所以只检查最后的计划控制的目的。
当status
是== Canceled
你知道约定不活跃了。
另一种方式,如果你每月接收款项做到这一点是从“NOW()”,第二个日期设定第一次约会2个月“NOW()”。如果你没有交易则状态可能是不活跃,但仔细检查:有随机可能性有可能是一些信用卡的问题。在这种情况下,我想status
可以==来delayed
或别的东西,但我没有机会来测试它,所以我不知道。这个想法从这个问题就来了和值得感谢以及西里尔ALFARO相对第二答案。
请注意,根据您的情况,您可能需要在头部,而不是其他'Access-Control-Allow-Credentials':true
或请求类似添加withCredentials: true
。