为暂停的订阅正确的贝宝 IPN 变量
Posted
技术标签:
【中文标题】为暂停的订阅正确的贝宝 IPN 变量【英文标题】:Correct paypal IPN variable for suspended subscriptions 【发布时间】:2012-10-03 17:07:58 【问题描述】:如果按月付费的订阅者的信用卡过期,而贝宝在尝试获取资金时失败了 3 次,那么他们将被贝宝“暂停”。我正在尝试更新我的 php 脚本,以便在这种情况下在数据库中发生正确的更改。我研究了 paypal 文档,但无法找到关于在用户帐户被暂停后我应该使用什么 IPN 变量的明确答案。
有谁知道以下哪个是正确的变量和值?
if ($payment_status == "suspended" || $txn_type == "suspended" || $txn_type == "subscr_failed" || $profile_status == "suspended")
谢谢!
【问题讨论】:
【参考方案1】:我得到了 $txn_type == "recurring_payment_suspended_due_to_max_failed_payment",另请注意,您将使用 $recurring_payment_id 而不是 $subscr_id。至少当我在 Paypal 沙盒中模拟失败的付款时会发生这种情况。
【讨论】:
是的,Paypal 文档有点儿笑话。我一直在给他们的一位支持人员打电话,他告诉我,在两次付款失败后,订阅将被取消。当然不是。在 3 次失败后,订阅被暂停并查看我的日志,我发现“recurring_payment_suspended_due_to_max_failed_payment”状态是唯一的指示。 应该解雇设计“recurring_payment_suspended_due_to_max_failed_payment”IPN 的人。它与所有其他 IPN 完全不同,从这个可笑的 txn_type 开始,然后它缺少业务参数,以及重命名的 recurring_payment_id。我的意思是这个开发者在想什么? 已经调用事务类型recurring_payment_suspended_due_to_max_failed_payment
是一个很好的指标,表明这里出了问题?以上是关于为暂停的订阅正确的贝宝 IPN 变量的主要内容,如果未能解决你的问题,请参考以下文章