PayPal IPN 收到数据,但回发无效

PayPal IPN receives data, but postback is invalid

在 TLS 1.2 沙箱更新之前一切正常。

但我已确认我的服务器使用的是 TLS 1.2。 PayPal 的 TLS test 成功。 而且我的IPN脚本可以正确接收到PayPal的握手和数据。

但是发送postback数据时总是失效,没有其他错误信息。 这是在使用 IPN 模拟器的沙箱中。

使用与 PayPal's example IPN listener for PHP 完全相同的代码。

我已经尝试了我能找到的所有 IPN 故障排除,包括:

  1. 将购买日期设置为 NULL
  2. 设置curl_setopt($ch, CURLOPT_SSLVERSION, 6);
  3. 在 paypal 的设置中将 IPN 数据设置为 UTF-8
  4. 正在向 https://ipnpb.sandbox.paypal.com/cgi-bin/webscr
  5. 发送回传
  6. 使用 cmd=_notify-validate 和 file_get_contents('php://input')
  7. 发送数据

有什么想法吗?

联系了 PayPal,他们说他们的 IPN 模拟器不工作!

这是我最后一次假设像 PayPal 这样的大公司的主要开发工具不会被破坏和未报告。经常和他们一起发生。

"The IPN simulator is currently returning a "verify_sign=undefined”响应。我们已告知我们的工程团队,他们将着手修复此工具。 如果您的 IPN 脚本没问题,那么触发 IPN 的测试付款也会确认。 对于造成的混乱和 IPN 模拟器无法正常运行,我们深表歉意。如果您愿意,我可以在模拟器上更新之前让您的票一直打开,我可以在修复后通知您。"