PayPal IPN 模拟器工作正常,但 IPN 不响应沙盒支付

     2023-02-22     286

关键词:

【中文标题】PayPal IPN 模拟器工作正常,但 IPN 不响应沙盒支付【英文标题】:PayPal IPN simulator works fine but IPN not responding to sandbox payments 【发布时间】:2018-08-14 21:18:59 【问题描述】:

如果我从这里https://developer.paypal.com/developer/ipnSimulator/ 发送 IPN,它可以正常工作。

如果我使用 PayPal 沙盒帐户和 PayPal 标准按钮直接从我的网站付款,IPN 侦听器不会接收任何内容。这是我网站上的 PayPal 按钮(请注意,它确实链接到 PayPal 的沙箱,并且正确指定了 notify_url):

                <form action="https://www.sandbox.paypal.com/cgi-bin/webscr" method="post">
                    <input type="hidden" name="cmd" value="_xclick">
                    <input type="hidden" name="no_shipping" value="1">
                    <input type="hidden" name="no_note" value="1">
                    <input type="hidden" name="currency_code" value="USD">
                    <input type="hidden" name="button_subtype" value="services">

                    <input type="hidden" name="business" value="payments@www.com">
                    <input type="hidden" name="item_number" value="21-2360-4" id="itemNumber">
                    <input type="hidden" name="item_name" value="Listing Fee">
                    <input type="hidden" name="return" value="https://www.com/Market">
                    <input type="hidden" name="cancel_return" value="https://www.com/Seller">
                    <input type="hidden" name="amount" value="10" id="amount">

                    <input type="hidden" name="notify_url" value="https://www.com/IPN">
                    <p><button type="submit" id="sellButton">Pay fee and list</button></p>
                </form>

这是我的 IPN 侦听器代码,它适用于从 PayPal IPN 模拟器页面制作的 IPN,但不适用于使用上述表单进行的沙箱付款(请注意,它也在侦听 PayPal 的沙箱):

if($_SERVER['REQUEST_METHOD'] != 'POST')
    exit();


$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, 'https://ipnpb.sandbox.paypal.com/cgi-bin/webscr');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, "cmd=_notify-validate&" . http_build_query($_POST));
$response = curl_exec($ch);
curl_close($ch);

if($response == "VERIFIED")
     // Successful purchase code.

任何关于它为什么不接收 IPN 的线索将不胜感激。

【问题讨论】:

对不起,看错了。 【参考方案1】:

修改信息 登录收款人 Paypal 账户并设置 IPN

步骤 个人资料 -> 个人资料和设置 -> 我的销售工具 -> 即时付款通知 -> 更新

点击“选择IPN设置”

将“通知 URL”字段设置为 HTML 表单中“notify_url”上的内容。

选择“接收 IPN 消息”

保存

注意:如果您查看 IPN 历史记录,它可能会显示为 Queued。这似乎是沙盒故障,或者可能是它处理了许多请求并且队列很长。您可以尝试以较小的价值(例如 1 美元)进行实时支付。 见这里:Paypal IPN Status - Queued

现在无关紧要--- 这应该是一个评论,但我没有制作 cmets 的许可。 你有&lt;button name="submit"&gt;Purchase with PayPal&lt;/button&gt; 那应该是&lt;button type="submit"&gt;Purchase with PayPal&lt;/button&gt; 请在&lt;form&gt;&lt;/form&gt; 标签内提供完整的 Paypal html 代码。

【讨论】:

我已经更改了按钮类型并添加了完整代码。 希望我修改后的答案有帮助 我已经在收件人帐户上启用了 IPN,尽管这不是一个长期的解决方案,因为它不会总是使用相同的电子邮件接收付款。贝宝还说指定 notify_url 将起作用。第二段很有用,尽管根本没有弹出通知 - 甚至没有“排队”。

PayPal IPN 沙盒不工作,但模拟器可以

】PayPalIPN沙盒不工作,但模拟器可以【英文标题】:PayPalIPNSandboxnotworkingbutsimulatordoes【发布时间】:2013-12-0600:58:39【问题描述】:更新#1:我找到了问题,当我使用模拟器时,$res变量的字符串应该是“已验证”,因为它是从标题... 查看详情

PayPal IPN 错误和自定义端口 IPN URL

...有一个自定义端口。这个url工作正常,但paypal总是在它的模拟器上给我错误,而不是在付款时调用我的IPN。什么会导致这个问题?【问题讨论】:IPNURL为:someip:someport/somepat 查看详情

PayPal 没有向听众发送 IPN

...东西。似乎SandboxPayPal没有将IPN发送给听众。当我使用IPN模拟器进行测试时,它工作正常。任何提示为什么它不工作【问题讨论】:您的网站使用https吗?(或者 查看详情

Paypal IPN 使用立即购买按钮返回无效但使用 IPN 模拟器验证

】PaypalIPN使用立即购买按钮返回无效但使用IPN模拟器验证【英文标题】:PaypalIPNreturnsINVALIDwithbuynowbuttonButVERIFIEDwithIPNSimulator【发布时间】:2015-04-0923:13:08【问题描述】:我遇到了paypalIPN的问题,当我使用paypal立即购买按钮时它总... 查看详情

Paypal IPN 系统无法正常工作?

】PaypalIPN系统无法正常工作?【英文标题】:PaypalIPNSystemnotworking?【发布时间】:2014-05-3013:39:45【问题描述】:这是我的IPN代码(示例的修改版):<?php$ch=curl_init(\'https://www.sandbox.paypal.com/cgi-bin/webscr\');curl_setopt($ch,CURLOPT_HTTP_VERS... 查看详情

PayPal IPN 已验证握手但 IPN 无效

...我在使用“旧”PayPalIPN代码时遇到问题。当我使用PayPalIPN模拟器时,我收到消息IPNwassentandthehandshakewasverified.,但在我的日志中我可以看到IPN消息是Invalid我已经检查了以下内容: 查看详情

PayPal 即时付款通知 (IPN) 无法正常工作 ASP.NET C#

】PayPal即时付款通知(IPN)无法正常工作ASP.NETC#【英文标题】:PayPalInstantPaymentNotification(IPN)notworkingASP.NETC#【发布时间】:2015-02-1800:09:49【问题描述】:我正在尝试让IPN为我的网站工作,但到目前为止没有任何成功。我已将所有PayPa... 查看详情

PHP Paypal“官方”IPN 监听器无法正常工作

】PHPPaypal“官方”IPN监听器无法正常工作【英文标题】:PHPPaypal"official"IPNlistenernotworkingcorrectly【发布时间】:2016-07-1710:59:55【问题描述】:我是Paypal的新手,我正在尝试使用IPN来了解交易何时完成。我读过Paypaldocumentation... 查看详情

PayPal IPN 已停止工作

】PayPalIPN已停止工作【英文标题】:PayPalIPNhasstoppedworking【发布时间】:2014-03-0400:46:02【问题描述】:以下脚本运行了好几个小时,但突然停止运行。我没有改变任何东西。下面有什么看起来有问题的东西会阻止它正常工作吗?&... 查看详情

接收 PayPal IPN 时不获取任何参数

...我的IP+端口转发)时,我看到IPN已发送并且握手已验证。模拟器页面上的消息。所以我的听众工作正常。这是我的服务器代 查看详情

Paypal IPN 将无法正常工作

】PaypalIPN将无法正常工作【英文标题】:PaypalIPNwilljustnotworkproperly【发布时间】:2013-11-1410:40:48【问题描述】:这是我的代码://postbacktoPayPalsystemtovalidate$header.="POSTcgi-bin/webscrHTTP/1.1\\r\\n";$header.="Content-Type:application/x-www-form-u 查看详情

Paypal IPN 现在返回 INVALID - PHP 代码以前工作正常

】PaypalIPN现在返回INVALID-PHP代码以前工作正常【英文标题】:PaypalIPNnowreturnsINVALID-PHPcodepreviouslyworkingfine【发布时间】:2016-01-1401:28:46【问题描述】:我正在使用以下类来处理IPN数据:https://github.com/WadeShuler/PHP-PayPal-IPN(多年来一... 查看详情

Paypal IPN 模拟器问题

】PaypalIPN模拟器问题【英文标题】:PaypalIPNsimulatorissue【发布时间】:2015-06-2919:03:17【问题描述】:虽然很多人都问过这个问题,我也经历了很多,但无法解决我的问题。我认为它很简单,但不幸的是我被困在这里。我能够从外... 查看详情

无法在 Codeigniter 中接收 PayPal IPN 响应

】无法在Codeigniter中接收PayPalIPN响应【英文标题】:UnabletoReceivePayPalIPNResponseinCodeIgniter【发布时间】:2019-02-2721:16:27【问题描述】:我已经在这工作了3天了,但仍然无法正常工作。我想要做的是从IPN侦听器获取PayPal响应,以便我... 查看详情

cURL Paypal IPN 脚本不工作

】cURLPaypalIPN脚本不工作【英文标题】:cURLPaypalIPNscriptnotworking【发布时间】:2012-12-1520:19:24【问题描述】:我一直试图找出我的ipn脚本出了什么问题。我尝试了许多不同的方法,我也尝试了fsockopen但我没有让它工作。现在我正在... 查看详情

Paypal IPN 在 paypal 帐户中不起作用,但在沙盒中正常工作

】PaypalIPN在paypal帐户中不起作用,但在沙盒中正常工作【英文标题】:PaypalIPNisnotworkinginpaypalaccountbutitsworkingcorrectlyinsandbox【发布时间】:2012-04-0920:21:17【问题描述】:PaypalIPN在paypal帐户中不工作,但在沙盒中正常工作。请帮助... 查看详情

使用paypal沙箱ipn模拟器时调试ipn.php

】使用paypal沙箱ipn模拟器时调试ipn.php【英文标题】:Debuggingipn.phpwhenusingpaypalsandboxipnsimulator【发布时间】:2012-07-2621:00:43【问题描述】:使用paypal沙箱ipn模拟器工具时如何调试ipn.php文件?代码如下://readthepostfromPayPalsystemandadd\'c... 查看详情

收不到 PayPal IPN 回调

】收不到PayPalIPN回调【英文标题】:NotreceivingPayPalIPNcallback【发布时间】:2017-12-1502:55:24【问题描述】:这是我的付款表单和成功页面,用于获取付款并将付款数据存储到我的数据库中。付款表格工作正常,但success.php页面未从... 查看详情