Paypal 订阅 IPN 下一个账单日

标签 paypal paypal-ipn paypal-subscriptions

我的网络应用程序使用 PayPal 月度订阅。当付款、用户注册/取消等时,我会收到 IPN 通知,这一切似乎都运作良好。

IPN 消息中似乎缺少的一件事是关于下一个计费日期的任何类型的指示。 https://developer.paypal.com/docs/classic/ipn/integration-guide/IPNandPDTVariables/#id091EB0901HT

起初我认为既然是按月订阅,我可以简单地在前一个日期上加一个月,但 PayPal 似乎有一种确定下一个付款日期的时髦方法 - 它并不总是 30 或 31 天或月。

下一个账单日期可从 PayPal 本身获得,但似乎不会随任何 IPN 消息一起发送。

有谁知道一种简单的方法可以根据 IPN 消息中提供的信息来解决这个问题?

最佳答案

我最近也遇到了这个问题。我不确定人们能否就“一个月”的订阅意味着什么达成一致的方案。例如,如果您在 3 月 31 日注册服务,那么下一次付款是在 4 月 30 日还是 5 月 1 日到期?您只需要选择一个并将其清楚地传达给您的用户即可。不幸的是,PayPal 无法为我们提供这种礼遇。

最后,我决定为用户提供 32 天或 367 天的服务访问权限,分别按月和按年订阅。我知道你可能会在一两天内“失败”,但我认为最好允许一些宽限期的访问,而不是冒着给用户少于付费时间的风险。

如果一切顺利,如果您还监听 subscr_eotsubscr_payment IPN(请参阅 https://stackoverflow.com/a/1195246/1852838 ).我从下次付款之日起续订上述期限,以便订阅始终与 PayPal 付款周期同步。 PayPal 将在最后一个付款期结束时向您发送 eot IPN,以便您可以在服务器端终止订阅。这意味着您决定给予他们多少“恩典”并不重要。

就提供“付款至”而言,我会简单地提供“宽限期”日期,因为您才是真正决定宽限期的人。但是,我会建议您也让他们知道,他们应该按照下一个最保守的估计为下一次付款付款。这将是最后一次付款后的 30 天或月末(如果晚于它)。

关于 Paypal 订阅 IPN 下一个账单日,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21428413/

相关文章:

magento - paypal付款后如何更新订单详情?

django - PayPal Rest API - 列出计费协议(protocol)中的交易

paypal - 如何在处理之前确保 Paypal IPN 的唯一性?

php - Paypal 无法列出协议(protocol) ID 的协议(protocol)交易

c# - 底层连接已关闭 : An unexpected error occurred on a send

需要 paypal 快速结帐送货地址吗?

paypal - 如何从 PayPal IPN 获取多个收件人的电子邮件地址?

php - Paypal 按钮不工作 - 我们很抱歉错误

paypal - 已验证的 PayPal IPN 响应仅以美元货币表示

paypal - 在 PayPal Classic API 中获取付款人信息