我正在尋找一種方法來設置過期訂閱的「過期」日期。當前的業務規則允許用戶仍然可以訪問系統,直到結算週期結束。Braintree - 未來訂閱取消
因爲在這段時間內,用戶可能仍然會購買插件,Braintree的分期可以幫助我們收取這個待處理的到期訂閱。以下是我的一些想法:
1)將結算週期的數量從INFINITE設置爲0或-1?我沒有在這方面找到太多的文檔,我想知道我是否會在下一個計費週期執行此操作,訂閱將「過期」? (我會對它進行測試,但我想我會把它放在這裏)
編輯:結算週期的數量必須大於0,但設置值爲1似乎設置過期日期在循環結束時到期可能解決我的問題。 (我猜Braintree假定當前的結算週期被計爲1)。
2)如果用戶決定繼續訂閱,我可以將結算週期改回INFINITE,訂閱繼續,就好像沒有任何東西發生了。
3)當用戶升級到不同的包時,會發生同樣的情況。將在當前訂閱結算週期結束後開始新的訂閱,未來日期將開始。
4)或者我必須把它們全部放在家裏,並有我自己的CRON/Jobs來處理這些情況?
請讓我知道您的想法或建議更好的解決方案。
答:我通過設置
number_of_billing_cycles
由jellenberger提到等於current_billing_cycle
解決了這個問題。這爲當前訂閱設置了到期日,從而允許我仍然收取相同的訂閱費用。
所有經常性結算當前都不會過期,因此要過期立即重複結算,會設置'number_of_billing_cycle = current_billing_cycle'確保它成爲最終結算週期? – user6776148