2017-08-26 55 views
2

在條紋的API文檔嘗試對客戶創建訂閱描述如下當返回值:條紋訂閱 - 創建即使第一計費嘗試失敗

新創建認購對象,如果調用成功。如果客戶沒有信用卡或嘗試收費失敗,則此呼叫會返回錯誤(除非指定的計劃是免費的或有試用期)。

由此,我假設如果第一次嘗試收費失敗(並返回錯誤),這意味着訂閱尚未創建?

我希望能夠爲尚未添加任何結算來源的客戶創建訂閱,並且只要他們添加結算來源,第一筆付款就會得到處理。有沒有辦法做到這一點?

回答

0

由此,我假設如果第一次嘗試收費失敗(並返回錯誤),這意味着訂閱尚未創建?

是的,這是正確的。

我希望能夠爲尚未添加任何結算來源的客戶創建訂閱,並且只要他們添加結算來源,第一筆付款就會得到處理。有沒有辦法做到這一點?

您可以創建一個計劃爲$ 0的訂閱,或創建一個試用trial_end創建一個'免費'的訂閱。

「只要他們添加一個結算來源,第一筆付款就會得到處理。」 - 你需要創建邏輯來自己處理這個問題。當用戶添加付款來源時,您可以更新自己的訂閱,結束試用版(trial_end=now),或將其移至付費計劃。

https://stripe.com/docs/api#update_subscription

+0

謝謝,我正在考慮類似於這個方法。問題在於,它首先否定了很多使用訂閱的便利。當需要續訂訂閱時,如果由於某種原因計費失敗,Stripe將在幾天內(或任何指定的時間表)自動重試 - 並且如果更新賬單信息將立即重試。爲什麼不能在訂閱首次創建時執行此操作?這對我來說沒有多大意義。 – abagshaw

+0

@abagshaw如果你想使用重試邏輯:一種解決方案可能是創建一個5分鐘的試用版(使用'trial_end')。無論客戶是否擁有有效的信用卡,它都將啓動。當超級短期試用期到期時,它將嘗試按照您的指示進行計費,失敗和重試。 – duck

+0

這幾乎是我在找的東西,但不幸的是我的理解是,如果客戶在5天后添加一張卡,然後第一張發票成功收取,下一個發票日期將不會向前移動5天,它會在發票首次創建之前保留一個月(或者我設定的任何間隔)。所以我將不得不手動將下一個發票日期向前衝擊,以達到目的。我已經將你的答案標記爲已接受,因爲它與我想要的一樣接近。 – abagshaw