【问题标题】:PayPal IPN Notifications Failing but not setPayPal IPN 通知失败但未设置
【发布时间】:2015-04-10 14:47:52
【问题描述】:

我正在使用 .net API 并成功接收付款。然而,最近 2 天早上我收到了一封电子邮件:

请检查您处理 PayPal 即时付款的服务器 通知 (IPN)。即时付款通知发送到 以下 URL 失败:

http://localhost/NotifyMe

如果您不认识此 URL,您可能正在使用服务提供商 代表您使用 IPN。请联系您的服务提供商 有了以上信息。如果此问题继续存在,IPN 可能 已为您的帐户禁用。

感谢您及时关注此问题。

    PaymentDetailsType paymentDetail = new PaymentDetailsType();
                paymentDetail.PaymentAction = (PaymentActionCodeType)EnumUtils.GetValue("Sale", typeof(PaymentActionCodeType));
                //paymentDetail.NotifyURL = "http://localhost/NotifyMe";
paymentDetail.OrderTotal = new BasicAmountType((CurrencyCodeType)EnumUtils.GetValue(Currency, typeof(CurrencyCodeType)), entry.Fee.ToString());
                List<PaymentDetailsType> paymentDetails = new List<PaymentDetailsType>();

在那个代码中,我曾经设置了通知 url,但我把它拿出来了。是几天前才缓存的邮件吗?据我所知,我不需要 IPN,因为我只进行 Express Checkout 呼叫。

【问题讨论】:

  • 您是否获得了用于定期付款交易的 IPN?
  • 不,这只是一次性快递交易。
  • 能否提供交易ID?

标签: c# paypal paypal-ipn


【解决方案1】:

是几天前刚刚缓存的邮件吗?

当 IPN 呼叫仍然失败时,电子邮件将继续发送,并将继续这样做,直到服务达到最大重试次数(目前设置为每天重试 16 次,最多 4 天)。

要在您的帐户上禁用 IPN,您可以执行以下操作:

  1. 登录您的 PayPal 帐户
  2. 点击您的个人资料图标,然后点击个人资料和设置
  3. 点击页面左侧的我的销售工具
  4. 在页面中间的获得报酬和管理我的风险部分,点击更新(或编辑)链接标题为即时付款通知的行
  5. 按照说明进行操作,并确保您已选择不接收 IPN 消息(已禁用)
  6. 点击保存以保存您的设置

这将确保为您的帐户禁用 IPN。但是,在 IPN 服务达到最大重试次数之前,您可能仍会收到电子邮件。

【讨论】:

  • 奇怪的是,当我在我的帐户中转到此设置时,它已经设置为“已禁用”。当它达到重试计数时会发生什么?它只是放弃还是会禁用我的 api 凭据?
  • @Adrian,一旦达到重试计数就应该放弃。关于在帐户上禁用 IPN 的说明适用于服务被滥用的情况。您的案例非常典型,显然是一个测试 URL,不小心进入了您的实时通话。如果您在禁用 IPN 时遇到问题,您可以随时联系 PayPal Merchant Technical Support 寻求帮助以解决问题。
猜你喜欢
  • 2015-06-08
  • 2016-06-10
  • 2012-02-23
  • 2014-02-05
  • 1970-01-01
  • 2013-08-17
  • 2016-08-17
  • 2012-06-24
  • 2016-10-15
相关资源
最近更新 更多