php - PayPal IPN 总是返回无效

标签 php paypal paypal-sandbox paypal-ipn

我正在使用 PayPal 的 IPN 模拟器测试我的 IPN 监听器。每次我发送 IPN 时,它都会返回“INVALID”。我不知道为什么。尽我所能告诉我的原始发布数据和我发回 PayPal 进行验证的数据是相同的。唯一的区别是 URL 编码和添加的 cmd=_notify-validate

这是我的原始帖子数据:

residence_country=US&invoice=abc1234&address_city=San+Jose&first_name=John&payer_id=TESTBUYERID01&mc_fee=0.44&txn_id=923817247&receiver_email=seller%40paypalsandbox.com&custom=xyz123&payment_date=07%3A44%3A50+31+Oct+2013+PDT&address_country_code=US&address_zip=95131&item_name1=something&mc_handling=2.06&mc_handling1=1.67&tax=2.02&address_name=John+Smith&last_name=Smith&receiver_id=seller%40paypalsandbox.com&verify_sign=ADrwWMGU4CgA.e78xLpNtVihnEe2AKdWo1wY-lMkTec9.xajg4zK.uvs&address_country=United+States&payment_status=Completed&address_status=confirmed&business=seller%40paypalsandbox.com&payer_email=buyer%40paypalsandbox.com&notify_version=2.4&txn_type=cart&test_ipn=1&payer_status=verified&mc_currency=USD&mc_gross=15.34&mc_shipping=3.02&mc_shipping1=1.02&item_number1=AK-1234&address_state=CA&mc_gross1=12.34&payment_type=instant&address_street=123%2C+any+street

和我的验证数据:

cmd=_notify-validate&residence_country=US&invoice=abc1234&address_city=San%252BJose&first_name=John&payer_id=TESTBUYERID01&mc_fee=0.44&txn_id=923817247&receiver_email=seller%252540paypalsandbox.com&custom=xyz123&payment_date=07%25253A44%25253A50%252B31%252BOct%252B2013%252BPDT&address_country_code=US&address_zip=95131&item_name1=something&mc_handling=2.06&mc_handling1=1.67&tax=2.02&address_name=John%252BSmith&last_name=Smith&receiver_id=seller%252540paypalsandbox.com&verify_sign=ADrwWMGU4CgA.e78xLpNtVihnEe2AKdWo1wY-lMkTec9.xajg4zK.uvs&address_country=United%252BStates&payment_status=Completed&address_status=confirmed&business=seller%252540paypalsandbox.com&payer_email=buyer%252540paypalsandbox.com&notify_version=2.4&txn_type=cart&test_ipn=1&payer_status=verified&mc_currency=USD&mc_gross=15.34&mc_shipping=3.02&mc_shipping1=1.02&item_number1=AK-1234&address_state=CA&mc_gross1=12.34&payment_type=instant&address_street=123%25252C%252Bany%252Bstreet

我用于监听器的代码与 PayPal 在 https://github.com/paypal/ipn-code-samples 提供的示例代码几乎相同。只需进行一些小的修改即可使其在我的特定服务器环境中工作。

知道为什么这没有验证吗?

最佳答案

字符串在编码之前没有被解码 ;)

关于php - PayPal IPN 总是返回无效,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19710167/

相关文章:

php - 需要帮助在 mySQL 中存储动态列表

php - Laravel 护照阻止用户使用相同的凭据一起登录

php - 用于购物车的 Paypal IPN 处理程序

php - 付款后在 payment pro paypal (sandox) 中设置自动重定向

asp.net - 检查服务器证书 asp.net Paypal

Paypal 快速结账定期配置文件开始日期

php - 用于将答案存储在数组中并更改按钮的颜色

Paypal checkout.js。在哪些情况下选择客户端、服务器端或混合集成?

paypal - 阻止通过电子支票进行 PayPal 付款

javascript - PHP中的动态文本字段