【问题标题】:Paypal not calling IPN script at all on my web serverPaypal 根本没有在我的网络服务器上调用 IPN 脚本
【发布时间】:2012-07-11 18:30:19
【问题描述】:

我正在尝试在网站上使用 Paypal IPN。

  • 付款成功并标记为“已完成”。
  • 返回网址有效。
  • 已发送电子邮件通知付款完成

但似乎 paypal 不与 IPN 脚本对话。与 Wireshark 核对时,发送付款时没有与我的网站通信。

  1. 可能是因为此通信嵌入在 SSL 通信中,而不是在不安全的 HTTP 中?

  2. 我的服务器能否拒绝处理来自 Paypal 的 IPN 请求?

我认为它可以开箱即用,但没有。它似乎没有到达我的服务器,并且 Paypal 没有返回类似“您的服务器拒绝接收 IPN 信息”之类的信息。所以 Paypal 只是不调用 IPN 脚本。

我 99% 确定我的请求是正确的,但这是我制作的按钮:

<form action="<%=paypalurl%>" method="post" target="_blank">
<input type="hidden" name="cmd" value="_xclick">
<input type="hidden" name="business" value="<%=appsettings.paypalemail%>">
<input type="hidden" name="item_name" value="<%=appsettings.paypalitem%>">
<input type="hidden" name="item_number" value="<%=appsettings.paypalid%>">
<input type="hidden" name="amount" value="<%=appsettings.paypalamount%>">
<input type="hidden" name="currency_code" value="<%=appsettings.paypalcurrency%>">
<input type="hidden" name="custom" value="<%=userid%>">
<input type="hidden" name="notify_url" value="http://www.mysite.com/ipnscript.aspx">
<input type="hidden" name="return" value="http://www.mysite.com/ppreturnurl.aspx">
<input type="hidden" name="cancel_return" value="http://www.mysite.com/ppcancelurl.aspx">
<input type="hidden" name="bn" value="PP-BuyNowBF">
<input type="image" src="https://www.paypal.com/en_US/i/btn/btn_paynowCC_LG.gif"  border="0" name="submit" alt="Make payments with PayPal - it's fast, free and secure!">
<img alt="" border="0" src="https://www.paypal.com/en_US/i/scr/pixel.gif" width="1" height="1">
</form>

【问题讨论】:

    标签: paypal-ipn


    【解决方案1】:

    截至 2013 年 6 月 20 日,如果您有企业帐户,启用 IPN 消息:

    (登录 PayPal)> 个人资料 > 我的销售工具 > 获得付款和管理我的风险 / 即时付款通知 / 更新 > 选择 IPN 设置 > (o) 接收 IPN 消息(启用)> 保存

    *注意:如果您在付款表单/按钮代码中提供“notify_url”字段,则可以将“通知 URL”留空。

    【讨论】:

    • 对于沙盒,我不能将“通知 URL”留空。我收到一个错误:“您必须输入格式正确的 URL...”...然后,如果我在配置文件和我的 API 中输入通知 URL,带有事务 ID 的 IPN 会转到我指定的 URL个人资料...这不是我想要的。
    【解决方案2】:

    您是否确定已启用 IPN?

    帐户 -> 我的个人资料 -> 即时付款通知首选项

    其次,我会检查 IPN 历史记录

    帐户 -> 历史记录 -> IPN 历史记录

    这将允许您查看状态并在需要时重新发送。

    • 我假设您首先使用沙盒进行测试。

    【讨论】:

    • 一般来说,另一个简单的检查是确保您的 IPN 通知 URL 是正确的,特别是如果它是动态生成的。始终使用日志记录来准确跟踪 IPN 交易代码中遇到的逻辑,并且 PayPal 建议始终记录您的交易。
    猜你喜欢
    • 1970-01-01
    • 2015-12-02
    • 2012-05-24
    • 2011-01-31
    • 2010-10-28
    • 2014-08-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多