我正在测试一个简单的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>
无法确定错误或缺失的内容。有人有想法吗?
由于 再见
答案 0 :(得分:4)
我希望你没有在LOCALHOST上测试paypal。那不行,你需要在网上测试它,在网络服务器上,你可以使用localhost进行编码,但必须将它上传到SERVER才能完全测试它。
这是一个可能有助于配置paypal的链接 - How to Set Up PayPal Integration with PHP & MySQL
答案 1 :(得分:3)
您是否验证了沙箱帐户的电子邮件?
This link听起来与你的问题类似,并为他解决了这个问题。
答案 2 :(得分:2)
您需要修改PayPal沙盒商业帐户中的即时付款通知(IPN)设置。
可以在此处找到完整的教程 - 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 沙盒遇到峰值并且无法传递消息。