简单一句话:
支付通道一般都有两种通知应用程序支付结果,一个叫PDT,一个叫IPN,
有些名称不一定叫这个,但是一般来说,原理是一致的,我们这里采用的是Paypal 的叫法
PDT 就是所谓的客户端通过网页返回付款数据
IPN 就是服务器之间的数据通知,一般来说IPN 有重复通知的,如果没有通知到,可能回发出多次通知
而且一般来说 IPN 速度要快过 PDT,这就是为什么有些支付后,显示订单已经被处理过的情况,其实我们认为,好的程序设计只要采用IPN通知来处理付款后的逻辑,这样比较安全,而网页返回部分逻辑可以用,仅仅查看本系统内的订单支付状态,根据订单支付状态来告知客户是否已经支付成功,就不必去处理更改订单状态的逻辑部分。当然,万一IPN通知出现了延迟,那么可以告知客户过一会再看,不必多次支付,免得对一个订单多次支付。