我一直认为通过IPN消息发送的txn_id是唯一的。 PayPal的指南似乎支持这个想法 - https://cms.paypal.com/us/cgi-bin/?cmd=_render-content&content_ID=developer/e_howto_admin_IPNIntro
避免重复的IPN消息。检查您是否已经处理了在IPN消息中返回的交易ID标识的交易。您可能需要将由IPN消息返回的交易ID存储在文件或数据库中,以便您可以检查重复项。如果PayPal发送的交易ID是重复的,则不应再次处理它。
然而,我发现PayPal的eCheck付款IPN会以相同的交易ID两次发送。一次是在初始付款时,payment_status为“Pending”,另一次是在实际处理eCheck时,payment_status为“Completed”。
我想存储这两个交易,但仍希望避免存储重复项。 IPN中还有一个名为ipn_track_id的字段,对于两个交易来说是不同的,但我找不到它的文档,除了这个含糊的描述:
内部使用;仅供MTS和DTS使用
还有其他人正在使用ipn_track_id来唯一标识IPN消息吗?
然而,我发现PayPal的eCheck付款IPN会以相同的交易ID两次发送。一次是在初始付款时,payment_status为“Pending”,另一次是在实际处理eCheck时,payment_status为“Completed”。
我想存储这两个交易,但仍希望避免存储重复项。 IPN中还有一个名为ipn_track_id的字段,对于两个交易来说是不同的,但我找不到它的文档,除了这个含糊的描述:
内部使用;仅供MTS和DTS使用
还有其他人正在使用ipn_track_id来唯一标识IPN消息吗?