前段时间我为一个主要销售数字商品的简单网站开发了一个定制购物车。我在其上集成了ExpressCheckout,并且在DoExpressCheckout
操作之后,如果响应包含ACK
等于Success
或SuccessWithWarning
(就像当时的示例代码所示)那么我立即为用户设置了访问内容的权限。
我发现这是一个很大的错误,因为昨天交易没有出现在所有者的帐户中,但是在用户有权访问后出现在网站上。联系PayPal后,我们检查了此特定交易被拒绝。到目前为止,因为已经授予用户访问权限。
那我该怎么办?是因为SucessWithWarning
没有经过审核,还是我永远不应仅仅通过完成DoExpressCheckout
来授予用户访问权限?我是否应该在授予用户访问内容后才使用IPN接收有关交易的信息?
答案 0 :(得分:1)
是的,您需要使用IPN进行交易后处理,并且您只需要在付款状态完成后授予访问权限。
在电子支票的情况下,您将获得状态为待处理的IPN,然后一旦电子支票清除(或失败),您将获得具有更新状态的另一个IPN。
当然,这是实时发生的,因此您可以根据发送的数据自动执行流程。