从IPN获得的哪些信息应该保存在本地数据库中?
$_POST['txn_id']字段是确保您从PayPal重新检查所有交易信息所需的唯一字段吗?还是最好插入从IPN/PDT回发获得的所有信息?
基本上,我在试图找出我需要存储的wich信息,以防出现事务问题和/或用户投诉。

最佳答案

不,txn_id还不够。根据paypal在其Introducing IPN页面上提供的文档
确认IPN不是重复的。为此,请保存
中每个IPN消息的事务ID和最后付款状态
数据库并验证这些字段的当前IPN值是否为
不在此数据库中。注意:不能依赖事务ID
单独筛选重复项,如本场景所示:1)PayPal
向您发送一个IPN,通知您一笔待付款。2)稍后支付宝
给您发送第二个IPN,告诉您付款已完成。
但是,两个ipn都包含相同的事务id;因此,如果
如果只使用事务id来标识ipn,您将处理
“已完成付款”IPN作为副本。
根据这一点,您至少需要记录交易ID和上次付款状态。如果您收到的付款与您认为应该收到的付款不符,那么存储您可能需要针对PayPal进行审计的信息也是一个好主意。

关于database - 我应该在本地数据库中存储从 Paypal 交易中获得的哪种数据?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/19404358/

10-13 08:39