15

我正在使用贝宝沙盒进行一些测试付款,直到今天它们都很好。我没有收到来自贝宝的 IPN,当我查看 IPN 通知历史记录时,所有消息都显示为Queued

如果我重新发送状态为已发送的 IPN,我会收到罚款但没有新的通过。

我检查了服务器上的错误日志,没有收到任何编码错误。

我做错了什么还是这只是 PayPals 的积压?

4

5 回答 5

10

我有同样的问题 - 原帖后 2 年。

我想知道这是否与使用沙箱有关 - 以及它是否也发生在普通帐户中。

我可以通过要求损坏的沙箱服务商帐户重新发送消息来使用模拟器和事件获取 IPN 消息 - 所有工作都可以找到。只是来自损坏的沙盒服务商帐户的新消息无休止地排队。

鉴于有证据表明这与 PayPal 积压无关,我非常确定。
我的第一个消息是 25 小时前排队的(从它开始我收到大量消息作为重新发送的 IPN 消息 + 模拟器消息)。

补充:3天后,早上醒来发现我的IPN中所有排队的消息突然都被送达了。似乎他们有一些非常缓慢的过程(也许是人性化的?)可以解决问题(识别卡住的队列并让它们再次运行)。一旦队列被卡住,所有后续的新消息都会获得 QUEUE 状态,直到好的 PaylPal 进程让它们运行。

如上所述,似乎所有投诉都与沙盒账户有关——这可能意味着非沙盒账户的处理速度要快得多,或者问题只是不会发生在真实账户中。

于 2016-04-09T16:00:52.907 回答
7

对于遇到此错误的任何人,我今天早上再次开始收到我的 IPN 消息。所以一定是贝宝的问题。

于 2013-09-16T08:09:51.683 回答
7

我将发布我的解决方法,因为 2.5 年后我和其他人仍然无法使用 PayPal 的沙箱:

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

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

于 2016-05-16T01:21:41.353 回答
2

马克一整天都遇到同样的问题。我知道 IPN 正在访问我的网站,因为我能够让 Paypal 重新发送一个较早的 IPN OK,手动发送一个测试 IPN 也可以正常工作。

也许今天早些时候他们的问题之后会有大量的积压工作要发送出去。

约翰

于 2013-09-15T19:16:27.633 回答
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沙盒IPN慢

即:从测试购买到收到第一个 IPN 花了将近 10 个小时。

以下是一些提示。


正常的购买流程(无论是生产还是沙盒)是这样的:

  1. 您在自己的网站上执行购买。
  2. 钱将被发送到您的商家帐户。
  3. IPN 被发送到您的站点。

在生产中:步骤 2 和 3 通常在步骤 1 的几分钟内发生。

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

当然,这一切都很烦人,并且违背了测试环境的目的。

要测试事情在您的最终工作正常,并且它只是“旧的”贝宝非常缓慢:

  • 密切关注您的错误日志。在您的测试订单期间没有错误?
  • 密切关注沙盒商家账户,了解资金何时到账。
  • 密切关注您的活动日志,看看您是否收到有关预期 URL 的任何通知。(使用ngrok进行本地开发使这更加容易。)
  • 密切关注沙盒的 IPN 历史页面,了解 IPN 的状态。尤其是:
    • 检查最新的交付尝试日期/时间字段。只要是空的,就不能怪自己的IPN脚本。

资料来源:这是基于我多年来在生产中使用 PayPal 并每年使用 PayPal Sandbox 进行几次测试。测试时,总是很难判断我是不是搞砸了(没有通知),还是只是沙盒速度慢。我最终把事情超时了……事实证明,通知延迟 5H+ 是很常见的,甚至更多。


底线

  • 转移到一个新的更好的支付网关,例如:Stripe,测试环境确实实时运行。
  • 如果您坚持使用 PayPal,模拟 IPN(通过提交您自己的假 IPN 或旧数据)可能会比使用沙盒更方便,至少在时间紧迫的情况下是这样。
于 2017-12-19T16:27:34.447 回答