【问题标题】:How to set an IPN URL for PayPal Recurring Payments using ExpressCheckout?如何使用 ExpressCheckout 为 PayPal 定期付款设置 IPN URL?
【发布时间】:2013-05-05 04:59:53
【问题描述】:

根据 PayPal 文档,在使用 ExpressCheckout 时,无法获得定期付款的即时付款通知 (IPN)。

我是这样得出这个结论的:

  1. SetExpressCheckout documenation NOTIFYURL 他们说:

    通知 URL 仅适用于 DoExpressCheckoutPayment。在SetExpressCheckoutGetExpressCheckoutDetails 中设置时忽略此值。

  2. 我没有使用 ExpressCheckout 的一次性付款。我只是在创建一个经常性的个人资料。所以我跳过了DoExpressCheckoutPayment 调用,就像在Recurring Payments integration guide 中指定的那样。实际上,如果我调用 DoExpressCheckoutPayment 将无效,因为我已将金额设置为 0

  3. 根据1.NOTIFYURL(准确地说是PAYMENTREQUEST_0_NOTIFYURL)将被忽略,除非调用DoExpressCheckoutPayment。但是我尝试在SetExpressCheckoutPayment 调用中设置它。

  4. 使用 IPN 模拟器,我成功接收到 IPN 通知。

  5. 使用 CreateRecurringPaymentsProfile 成功创建新的定期付款配置文件时,我没有收到 IPN 通知。

  6. 我没有找到与定期付款相关的 API 调用,我可以使用它来设置 NOTIFYURL

如何使用 ExpressCheckout 为定期付款设置 IPN URL,无需初始付款、INITAMT 或其他需要 DoExpressCheckoutPayment 的方法?

【问题讨论】:

  • 您是否尝试过使用初始付款并将其设置为0?
  • @jayarjo 我没有。但是我认为这行不通。 PayPal 不太可能允许交易金额为零。即使他们这样做,在客户的银行对账单中也会显得很奇怪。然而,这是一个黑客。我真的希望 PayPal API 能够原生支持它。

标签: paypal paypal-ipn recurring-billing express-checkout


【解决方案1】:

您可以在您的 PayPal 帐户中的个人资料下设置 IPN URL。

【讨论】:

  • 我想为每个不同的配置文件使用不同的 IPN。不能通过 API 设置吗?谢谢!
  • 不用于定期付款。
  • @PP_MTS_Chad 以及 PayPals 为多个项目建议的解决方案是什么?我必须为每个人使用单独的 PayPal 帐户吗?还是我必须创建一个集中的 IPN 呼叫中心,然后按项目整理传入的通知?..
  • 这是无耻的回答
  • 如果IPN地址只能从PayPal账户定义,如何支持测试环境?
【解决方案2】:

如果您想为每笔交易设置不同的 IPN 网址,只需将“&NOTIFYURL=yoursite.com/ipnhandle”添加到您的 NVP 字符串即可。

【讨论】:

  • 如果您更彻底地阅读了 PayPal 文档和我的问题,您就会知道定期付款是不可能的。
  • 如果您使用 Express Checkout,您可以这样做。
  • 我正在使用 ExpressCheckout,但我没有使用 DoExpressCheckoutPayment API 操作。请再次阅读我的问题。我知道如何以及在哪里使用NOTIFYURL。问题是 PayPal 不支持我的用例。您可以在接受的答案下查看 cmets 以了解更多详细信息。
  • 如果这不适用于您的情况,那么您的 paypal 帐户中设置的 IPN url 每次都会向您发送通知..您可以根据交易类型 (txn_type) 过滤通知。
  • 谢谢!这与我所做的以及接受的答案非常相似。我真的希望 PayPal 扩展他们的 API 并在未来支持这一点。
猜你喜欢
  • 2013-06-30
  • 2011-05-01
  • 2018-09-16
  • 2015-05-01
  • 2014-01-23
  • 2012-11-07
  • 2014-09-15
  • 2016-09-23
  • 2013-04-20
相关资源
最近更新 更多