到目前为止,我有这个工作流程:
>向Paypal发送请求:AdaptivePayments / Pay
>这会创建一个Pay请求,并返回一个有效3小时的payKey(source)
>现在,我等到Paypal通过IPN向我发送请求.什么时候,我会得到pay_key
>使用此pay_key,我将调用AdaptivePayments / PaymentDetails以了解付款状态.
但我想知道,如果超过3个小时我该怎么办? (比如退款吗?)
那么肯定的方法是什么?
谢谢你的帮助!
解决方法
而不是在调用AdaptivePayments / Pay时使用payKey,而其他解决方案是使用trackingId.
这是如何做 :
第一步,创建一个AdaptivePayments / Pay并指定一个trackingId(必须是唯一的):
{ "actionType":"PAY","currencyCode":"USD","receiverList":{"receiver":[{"amount":"1.00","email":"seller_1288085303_biz@gmail.com"}]},"returnUrl":"http://apigee.com/console/-1/handlePaypalReturn","cancelUrl":"http://apigee.com/console/-1/handlePaypalCancel?","trackingId":"abcde-12345-unique-of-course","ipnNotificationUrl":"http://apigee.com/console/-1/ipn","requestEnvelope":{"errorLanguage":"en_US","detailLevel":"ReturnAll"} }
作为回应,您将拥有您将重定向买家的payKey,以便进行付款.
然后,对于此付款的整个演变,您将收到您的IPN网址(此处为“http://apigee.com/console/-1/ipn”)的通知.
如果您在此地址收到(POST)请求,请检查PayPal的有效性,您将在参数中获得trackingId.检查此trackingId是否存在,然后使用该trackingId询问AdaptivePayments / PaymentDetails:
{ "trackingId":"{put here}","detailLevel":"ReturnAll"} }
并且您将获得完整的详细状态以作为回报.
现在,您完成更新数据库,致电买家等工作:)
什么对我有帮助:
> Pay API Operation
> PaymentDetails API Operation
> IPN Variable Reference
> Apigee Paypal console
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。