【发布时间】:2017-03-26 03:11:42
【问题描述】:
您好,我使用 Braintree 每月订阅我的应用程序,这工作正常。对于无论出于何种原因未能按时付款的活动,我想就最佳做法提供一些建议。
我目前有一个User 模型,带有subscribed:boolean subscribeddate:date 和subscribedend:date。
当用户通过braintree完成支付时,属性会更新为subscribed:truesubscribeddate:Date.today和subscribedend:Sometime_way_in_the_future。
当用户取消订阅时,属性也会更新,subscribed:false 和 subscribedend:(a braintree attribute, billing_due_date)
这样我可以根据日期和订阅状态过滤我的应用程序中的内容。我能看到的唯一问题是,如果 Braintree 尝试在一个月内向帐户收费但失败了。 Braintree 对此有一个属性 (.days_past_due),但我的应用无法知道这是否发生。
这方面的最佳做法是什么?我是否应该每天执行一个计划任务来检查每个用户是否在 Braintree 服务器上具有 .days_past_due 属性的值?如果我有很多用户,这会不会非常慢?
我可能把这一切都搞错了,我只是想就此事提出一些建议,
谢谢。
【问题讨论】:
标签: ruby-on-rails subscription braintree rake-task