我正在使用 PayPal 沙箱来执行订阅按钮,然后当我收到订阅或订阅取消的 IPN 响应时,从未设置 $_POST['txn_id']。
所以我不知道如何识别交易以只接受唯一的交易
谢谢!
编辑:例如,我在 POST 中为 subscr_cancel 提供的所有信息是:amount1、amount3、address_status、subscr_date、payer_id、address_street、mc_amount1、mc_amount3、charset、address_zip、first_name、reattempt、address_country_code、address_name、otify_version 订阅号 风俗 付款人状态 商业 地址_国家 地址_城市 验证_签名 付款人邮箱 btn_id 姓 地址状态 收件人邮箱 再次发生的 交易类型 项目名 mc_currency 居住的国家 测试IPN 时期1 第三期 correlation_id
最佳答案
根据 Table 2. Summary of subscription variables :
For subscription variables, the transaction ID (txn_id) is only available for USD Payment and Multi-Currency Payment transaction types (txn_type).
正如预期的那样,PayPal 不会将 txn_id
发送到您的交易类型 subscr_cancel
的 IPN,并且将仅发送 txn_id
如果交易类型是 subscr_payment
。
有关根据您的交易将哪些变量发送到您的 IPN URL 的进一步说明,请查看 IPN and PDT Variables .
关于php - Paypal IPN $_POST ['txn_id'] 未设置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9082359/