PayPal IPN 状态 - 排队中

15

我正在使用PayPal沙盒进行一些测试支付,一切都进行得很顺利,直到今天为止。我没有收到来自PayPal的IPN通知,当我在IPN通知历史记录中检查时,所有消息都显示为排队

如果我重新发送状态为已发送的IPN,我可以正常收到,但是没有一个新的IPN能够传送过来。

我已经在服务器上检查了错误日志,没有发现任何编码错误。

我是做错了什么还是这只是PayPal的积压问题?


1
我也遇到了同样的问题,我也打算在这里问。我认为他们的服务器可能很忙或者因为IPN过载而排队等待。不太清楚,希望有人能发表更好的答案。 - Kilise
1
我想是这样。我已经等了6个小时了。 - Kilise
1
我过去两个小时一直在调试这个问题,但状态网站上并没有更新。不过,很高兴看到我不是唯一遇到这个问题的人。 - Jaryl
1
我也遇到了同样的问题。 - mclaassen
1
每次我在PayPal遇到问题时,我都会遇到一个SO线程,在那里每个人都认为“这是他们的问题”。 :) - Léon Pelletier
显示剩余2条评论
5个回答

10

我遇到了与原帖相同的问题,距离原帖已经两年了。

我想知道这是否与使用沙盒有关,并且它是否也会发生在普通账户中。

我可以使用模拟器和请求破损的沙盒便利账户重新发送消息来收到IPN消息,一切都正常。只是来自破损沙盒便利账户的新消息被无限排队。

基于证据,我非常确定这与PayPal积压无关。
我的第一条信息排队已经25小时了(自从开始以来,我收到了许多重新发送的IPN消息和模拟器消息)。

添加:三天后,早上醒来发现所有排队的IPN消息突然被处理了。似乎他们有一个非常缓慢的过程(可能是人工的)解决了这个问题(识别卡住的队列并使其重新运行)。一旦队列被卡住,所有随后的新消息都会得到“队列”状态,直到好心的PaylPal流程将它们运行起来。

如上所述,似乎所有投诉都与沙盒账户有关-这可能意味着对于非沙盒账户,该过程速度更快,或者该问题在真实账户中根本不会发生。


同样的问题。看起来这是Paypal沙盒服务器IPN处理问题。文档对于何时期望响应有免责声明。 25小时似乎指向Paypal沙盒服务器问题。唯一的避免方法似乎是使用API实际创建整个付款流程(而不是使用Paypal按钮,因为该按钮将它们带到Paypal站点,然后如果被重定向,则将它们传递回您的站点)。 - sunnyboy
我记得几年前我也遇到过类似的问题,那时是由于Paypal服务器积压导致的。很高兴听到它又开始为你工作了。Paypal的开发环境一直都不太可靠。 - Mark

7

对于遇到此错误的任何人,我今天早上开始收到我的IPN消息。因此,这一定是PayPal端的问题。


7

由于我和其他人在使用PayPal沙盒时仍然遇到问题,因此我将发布我的解决方法:

  1. 进入您的IPN设置并将其设置为“不接收IPN消息(禁用)”,
  2. 发起测试付款。交易历史记录中,该交易将显示为“已禁用”而不是“已排队”。
  3. 然后,将IPN通知设置为“接收IPN消息(已启用)”。当您查看历史记录时,您将在交易旁边看到复选框。
  4. 然后,您可以勾选复选框并重新发送。

我知道这不是一个理想的解决方案,因为它需要一些额外的步骤,但至少它将允许我们使用沙盒进行测试。


可能会慢一些,但是慢慢调试总比不调试好 :) - Eran

2

马克,我整天都遇到同样的问题。我知道IPN已经传递到我的网站,因为我能够让PayPal重新发送早期的IPN,而且手动发送测试IPN也没有问题。

也许在他们今天早些时候遇到问题之后,有大量的IPN积压需要发送。

约翰


谢谢John,看起来我遇到了同样的问题。希望明天贝宝能够修复它。 - Mark

0

PayPal沙盒环境旨在让我们能够在虚拟的测试环境中测试PayPal功能。

然而,在实际使用中:沙盒环境比生产环境慢得多,而且经常异常缓慢。

以下是一个可悲而典型的例子:

2017-12-19 10:27     Test payment OK.
2017-12-19 12:43     Test payment finally visible in the test business account, but IPN still not sent (queued, 0 retry, nothing on ngrok.)
2017-12-19 20:23     IPN finally received.

PayPal Sandbox IPN slow

例如:测试购买和收到第一个IPN之间花费了近10个小时。

以下是一些提示。


一个正常的购买流程(生产环境或沙盒环境)如下:

  1. 您在自己的网站上进行购买。
  2. 资金被发送到您的商户账户。
  3. IPN被发送到您的网站。

在生产环境中:步骤2和3通常在步骤1之后几分钟内发生。

但是,在沙盒环境中:步骤2(余额)通常仅在步骤1之后几个小时才会发生。即使步骤2发生了,步骤3(IPN)仍然不会立即发生,并且等待多个小时是很常见的。

当然,这一切都非常恼人,违背了测试环境的目的。

为了测试您的端是否正常工作,以及这只是“老好人”PayPal速度极慢的结果:

  • 注意您的错误日志。测试订单期间没有出现错误吗?
  • 关注沙盒商户账户,以了解资金到账情况。
  • 关注您的活动日志,查看是否收到有关预期 URL 的任何通知。(使用 ngrok 进行本地开发可以使此过程更加轻松。)
  • 关注沙盒 IPN 历史页面,了解 IPN 的状态。特别是:
    • 检查 最新交付尝试日期/时间 字段。只要它为空,就不能责怪您自己的 IPN 脚本。

来源:这是基于我多年在生产环境中使用 PayPal 并每年测试几次 PayPal 沙盒的经验。在测试期间,很难确定是否出现了问题(没有通知),或者只是沙盒运行缓慢。最终我选择超时……结果发现通知通常会晚 5 小时甚至更久。


底线:

  • 转移到一个新的、更好的支付网关,例如:Stripe,其中测试环境可以实时运行。
  • 如果你被困在PayPal中,模拟IPN(通过提交自己的假IPN或旧数据)可能比使用沙盒更方便,至少在时间紧迫时是这样。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接