paypal rest sdk - 取消付款仅提供令牌

时间:2016-09-18 19:15:08

标签: node.js paypal paypal-sandbox paypal-rest-sdk

所以我已经看到了关于这个主题的一些问题,但没有好的答案

通过paypal api创建PayPal付款后,客户端将被重定向到paypal以获得付款批准 付款对象也获得批准"并且"取消"网址,以便paypal可以让我的服务器知道在客户的批准过程中发生了什么行动

如果客户已取消付款,则从paypal发送的http请求如下所示: / customerCancelled?标记= EC-32W183225U612050A 当" customerCancelled"当然是我服务器中的get方法

这里应该做的paypal声明只是取消我的数据库中的付款,因为他们已经取消了他们的付款

问题出在这里 - 这个令牌是什么黑客?它不是paymentID(这是我数据库中付款的主键) 它如何帮助我识别被取消的付款对象?

直到paypal回答问题需要花费很多时间..所以如果这里的任何人都有一个有用的线索

感谢

2 个答案:

答案 0 :(得分:1)

我发现了它。当您首先输入取消URL时,您必须要求访问令牌(如果您没有存储它),然后获取付款信息​​(您可以看到here)并且响应包含购物车价值,购物车价值是与没有EC-的令牌相同,我的意思是,如果购物车价值是1234567890,您拥有的令牌是EC-1234567890。

在数据库(或其他地方)创建支付商店时,支付ID,购物车价值和最终代币。然后在取消时,您将在数据库中搜索购物车价值,并获得付款ID。

我有解释吗?

答案 1 :(得分:0)

我知道这很老了,但是我认为自此漏洞以来,Paypal .net API并没有得到很大的改善,文档也没有。

我注意到您需要的令牌位于“ approved_url”上

我将其剥离并保存,因此,如果返回取消,则可以通过该令牌查找订单。