Paypal IPN:未调用notify_url

时间:2012-08-27 17:58:54

标签: paypal paypal-ipn

我正在测试一个简单的PayPal支付脚本,但是它没有调用我的notify_url并且我不明白为什么。网址是可以访问的,甚至沙盒IPN测试也会得到肯定的结果。更奇怪的是,在同一个域上,我有一个其他脚本正在工作。代码不完全相同,但它使用相同的方法。

这是用于向Paypal发送paymento的表单的html:

form id="ppcheckout" action="https://www.sandbox.paypal.com/cgi-bin/webscr" method="post" name="pp">
  <input type="hidden" value="_xclick" name="cmd">
  <input id="business" type="hidden" value="xxx@gmail.com" name="business">
  <input id="currency_code" type="hidden" value="EUR" name="currency_code">
  <input type="hidden" value="http://www.mydomain.com/dir/ipn.php" name="notify_url">
  <input id="return" type="hidden" value="http://www.mydomain.com/dir/" name="return">
  <input id="cancel_return" type="hidden" value="http://www.mydomain.com/dir/" name="cancel_return">
  <input type="hidden" value="1" name="amount">
  <input type="hidden" value="Order from mysite" name="item_name">
  <input type="hidden" value="1" name="invoice">
</form>

无法确定错误或缺失的内容。有人有想法吗?

由于 再见

6 个答案:

答案 0 :(得分:4)

我希望你没有在LOCALHOST上测试paypal。那不行,你需要在网上测试它,在网络服务器上,你可以使用localhost进行编码,但必须将它上传到SERVER才能完全测试它。

这是一个可能有助于配置paypal的链接 - How to Set Up PayPal Integration with PHP & MySQL

答案 1 :(得分:3)

您是否验证了沙箱帐户的电子邮件?

This link听起来与你的问题类似,并为他解决了这个问题。

答案 2 :(得分:2)

您需要修改PayPal沙盒商业帐户中的即时付款通知(IPN)设置。

  1. 登录Sandbox业务帐户。
  2. 转到个人资料页面,然后点击即时付款通知偏好设置链接。
  3. 设置通知网址并启用 IPN消息
  4. 可以在此处找到完整的教程 - PayPal IPN / Notify URL is not working on Sandbox Account

答案 3 :(得分:0)

我也很难让沙箱工作。我会尝试在paypal上测试它并确认沙箱没有做一些傻瓜

答案 4 :(得分:0)

我有同样的问题,当paypal回复到notify_url时,我的登录检查会产生问题。我在notify_url中将用户会话ID作为查询字符串传递,并且每件事都适合我。本地主机上的Paypal无效。

使用以下链接,您可以下载paypal IPN类

http://www.micahcarrick.com/php-paypal-ipn-integration-class.html

答案 5 :(得分:0)

检查排队的 IPN 消息。

Hover over your profile Icon -> 
Account Settings -> 
(on Left) Notifications -> 
Instant Payment Notifications (Click Update) -> 
Search for IPN History

现在检查消息是否已排队或失败等。很可能是 paypal 沙盒遇到峰值并且无法传递消息。

This is a direct link to IPN History