Paypal IPN 未触发?

标签 paypal paypal-ipn paypal-sandbox payment

我有一个关于 Paypal IPN 的问题,我想知道 IPN 什么时候激活并将它的消息发送到我的网站。

我的网站目前有一个购买按钮。当客户购买服务时,他被引导至 Paypal 。一旦他支付了服务费,就什么也没有发生。为了让我收到 IPN 通知,用户必须单击“返回商家网站”或任何链接,然后我会收到 IPN 通知。

这正常吗,每个人都这样吗? 因为现在,大多数人在完成付款后,只是关闭网站,我不会收到任何通知。

感谢您的帮助!

最佳答案

你的问题遗漏了很多信息,所以我会为你逐一分析:

  • 如果您还没有沙箱帐户,请阅读此处了解如何设置沙箱帐户:https://developer.paypal.com/docs/classic/lifecycle/sb_create-accounts/

  • 请记住,您的沙盒帐户在各个方面都与您的实时 paypal 帐户完全分开。所有设置都需要根据需要进行检查和自定义。

  • 在您的沙盒帐户上设置您的 IPN URL:https://www.sandbox.paypal.com/uk/cgi-bin/webscr?cmd=_profile-ipn-notify

  • 设置完成后,您需要下载代码(PHP 或其他)并将其设置为监听器(在上面的沙盒配置文件链接中引用)。您可以在此处找到 IPN 代码示例:https://github.com/paypal/ipn-code-samples

  • 设置完成后,您需要将监听器设置为使用沙盒模式,然后登录到您的真实账户,然后从此处运行 IPN 模拟器:https://developer.paypal.com/developer/ipnSimulator/

  • Paypal 将向您的 IPN 监听器发送消息,您需要对这些消息进行一些处理,通常将它们输出到某种日志文件中。如有任何问题,您可以在此处阅读 Paypals 反馈和 IPN 数据/交付信息 https://www.sandbox.paypal.com/uk/cgi-bin/webscr?cmd=_display-ipns-history&nav=0.3.4 [从 Paypal 菜单上的 History->ipnHistory 找到] 它应该列出它们。您可以重新发送任何失败的、排队的或未送达的消息。

  • Paypal 是一个用于编码的非常有据可查和非常结构化的系统。我恨它。 Use Stripe .

  • 我喜欢要点。

  • Paypal 声称他们将在 5 天内尝试并重新发送失败/排队的 IPN 16 次。我还没有看到这个,你需要手动重新发送它们(至少,沙盒)

  • 请记住,在您的支付系统上线之前,您对沙盒账户所做的所有设置和更改也需要对您的真实账户进行!

解决方案

My return_URL is the location of my IPN.php file which take care of the data sent and received. My problem is that the IPN is only firing when I click the "Return to merchant website" and not when the payment is actually completed

通过阅读您的评论,您所做的是将您的 IPN 页面设置为您从 paypal 页面返回,这不是 IPN 应该工作的方式,IPN 页面永远不应该客户访问,仅通过 Paypal。

通读我的答案(第 2、3、4 点)并按照我上面的描述设置你的 IPN 网络链接,你的 return_url 值应该是一个基本页面对客户说“交易完成”。如上所述,IPN 页面是在您的 Paypal 帐户(沙盒和实时)上定义的。

这将解决您的问题。

关于Paypal IPN 未触发?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37292841/

相关文章:

php - Paypal 沙盒 : DoExpressCheckoutPayment 10001 Internal Error

asp.net - Paypal 订阅下一个到期日付款解决方案?

php - Paypal : Get a response of "txn_type= recurring payment " instead of "txn_type= recurring_payment_profile_created" for the first Time

paypal - Authorize.Net 上的 IPN(即时付款通知)就像 Paypal 一样

ios - 新的 PayPal iOS SDK(1.0.5) - 无法连接到沙箱

swift - PayPal SDK 请求访问 token 返回代码 401(未授权)

php - 如何使用 PHP Wordpress 将沙箱 Paypal 返回值插入 MySQL 表?

软件产品的 PayPal 开发者帐户

php - Paypal 运输和每月定期计费

paypal - 如何在paypal标准中自动捕获授权的PayPal付款?