Paypal IPN返回空字符串而不是“VERIFIED”或“INVALID”

时间:2011-02-06 14:42:23

标签: transactions paypal payment paypal-ipn

在真实(非沙盒)环境中,Paypal IPN发送带有payment_status =已完成的POST数据。但是当我试图从Paypal获得交易确认(使用CURL)时,我收到一个空字符串(不是“已验证”或“无效”)。

CURL不会返回任何错误。为了在真实环境中进行确认,我使用https://www.paypal.com/cgi-bin/webscr(这是肯定的)。而且在Sandbox中一切正常。

错误出现在2个月前。我注意到paypal改变了网站的一些设计。也许确认过程也发生了变化。但我没有在文档中找到任何更新。

有没有人遇到过类似的问题?

2 个答案:

答案 0 :(得分:2)

如果您收到空的回复,请重试。如果所有重试都失败,则发出500内部服务器错误,PayPal IPN服务器将在稍后重试。此外,只要收到空响应,您可能希望记录完整的服务器响应(包括标题)。

答案 1 :(得分:0)

游戏后期,但万一有人要求。

我已经对此进行了几个小时的故障排除,正如我的情况所发生的那样,PayPal要求您使用Sandbox进行IPN测试的完整URL。

例如,使用此网址“https://www.sandbox.paypal.com/cgi-bin/webscr”而不是“https://sandbox.paypal.com/cgi-bin/webscr”。您需要包含www或PayPal会抛出一个空字符串。它不会返回INVALID,也不会验证 - 它只会让你变空。

无论如何它对我有用。一旦我改变了这一切,一切都运行良好。