我正在 PayPal 沙箱中测试自适应支付,IPN 正常返回到我的网站,但我无法显示交易 ID,我希望将其存储在我的数据库中,因为用户将能够使用它来重新下载媒体 future ,或者如果他们没有立即重定向到该网站并错过初始下载。
支付方式为链式支付。
根据 IPN 开发人员指南 (https://cms.paypal.com/cms_content/US/en_US/files/developer/IPNGuide.pdf),响应应使用 transaction[n].id
作为交易ID,我尝试过:
$_POST['transaction[0].id']
$_POST['transaction[0]['id']']
$_POST['txn_id']
全部返回NULL
。我有每个 IPN 返回的 IPN 信息电子邮件,这就是我得到的:
VERIFIED
--------------------------------------------------------------------------------
transaction Array
log_default_shipping_address_in_transactionfalse
action_type PAY
ipn_notification_url xxx
charset windows-1252
transaction_type Adaptive Payment PAY
notify_version UNVERSIONED
cancel_url xxx
verify_sign AM-T87RnkCBg1jNaY5s.rN3m7228AwQazhSReOMGBFi9VRyKsQwGyQ9f
sender_email <a href="https://stackoverflow.com/cdn-cgi/l/email-protection" class="__cf_email__" data-cfemail="13793e677660674c222027262a21252621274c637661537b7c677e727a7f3d707c7e" rel="noreferrer noopener nofollow">[email protected]</a>
fees_payer EACHRECEIVER
return_url xxx
reverse_all_parallel_payments_on_errorfalse
pay_key AP-13220443VY964171X
status COMPLETED
test_ipn 1
payment_request_date Sat Aug 25 23:49:05 PDT 2012
如何获取交易 ID? (最重要的是主要接收者 ID)
最佳答案
我写了一系列有关自适应支付 API 的文章。 second one处理从自适应支付发送到 IPN 处理程序的变量。
PayPal 发送一组奇怪的变量,但可以将它们解码为我们能够在 PHP 中轻松使用的内容。
关于php - 自适应支付 IPN 交易 ID 未出现,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12128241/