こんにちは私はBraintreeを使って私のアプリで毎月購読しています。何らかの理由で支払いが間に合わなかった場合のベストプラクティスに関するアドバイスをお願いします。Ruby on rails。月額サブスクリプションのベストプラクティス
私は現在subscribed:boolean
subscribeddate:date
とsubscribedend:date
でUser
モデルを持っています。
ユーザーがbraintreeを通じて支払いを完了すると、属性はsubscribed:true
subscribeddate:Date.today
とsubscribedend:Sometime_way_in_the_future
に更新されます。
ユーザーがサブスクリプションをキャンセルした場合、属性はあまりにも更新されます、subscribed:false
とsubscribedend:(a braintree attribute, billing_due_date)
この方法で私は、日付およびサブスクリプション・ステータスに応じて私のアプリで物事を絞り込むことができます。私が見ることができる唯一の問題は、Braintreeがアカウントを1ヶ月間請求しようとしたが失敗した場合です。 Braintreeにはこの属性(.days_past_due
)の属性がありますが、私のアプリはこれが起こっているかどうかを知る方法がありません。
このためのベストプラクティスは何ですか?すべての単一ユーザーがBraintreeサーバー上の.days_past_due
属性の値を持っているかどうかをチェックするために、毎日スケジュールされたタスクを実行する必要がありますか?私は多くのユーザーがいる場合、これは非常に遅くないだろうか? 私はこれについてすべて間違っているかもしれません、私はちょうどその問題についてアドバイスを少しお願いします。 ありがとうございました。
これを投稿した後、ウェブフックについて知ることができます。私は今それらを実装しています。ありがとう。 –