2016-01-06 16 views
1

我正在使用Laravel和Stripe。我的應用中有5種不同的訂閱計劃。每個計劃都有其自己的一套方案,比如如何使用Stripe處理不同的計劃選項?

基本計劃 - 最大活動 - 20 - 最大的郵件 - 100

臨計劃 - 最大活動 - 40級 - 最大的郵件 - 200

如何在我的數據庫中表示這些選項?

我使用Laravel的收銀員,它很好地處理訂閱表,它存儲訂閱名稱,條紋計劃ID等

但我想以後當用戶要建立廣告活動進行檢查,如果他能做到這也就是說,他沒有按照他的計劃達到活動限制。

聽起來像我需要另一個表,如plan_options我會存儲所有這些。我關心的是如何將它連接到這個訂閱表?手動?在用戶訂閱之後,我是否必須找到一個他選擇的subscirption名稱,在plan_options表中找到並使用id連接它們?這是否是正確的方法?

+0

您可以在名爲'plan_id'的訂閱表中擁有'plan_options'表和一個新字段。在訪問或任何時候用戶嘗試添加廣告系列 - 將其當前的廣告系列數量與計劃的選項(最多)進行比較。 –

回答

1

您可以將plan_options保存到訂閱計劃元數據到條帶中。這樣,一切都停留在一個地方,並且不需要同步。

enter image description here

您可以使用API​​如下訪問元數據。

示例請求:

\Stripe\Stripe::setApiKey("sk_test_ascfadfaeadsfadsfasdfasdfV"); 

\Stripe\Plan::retrieve("pro"); 

示例響應:

Stripe\Plan JSON: { 
    "id": "pro", 
    "object": "plan", 
    "amount": 1000, 
    "created": 1453123864, 
    "currency": "usd", 
    "interval": "month", 
    "interval_count": 1, 
    "livemode": false, 
    "metadata": { 
    "campaigns_limit": "40", 
    "emails_limit": "200" 
    }, 
    "name": "Pro Plan", 
    "statement_descriptor": null, 
    "trial_period_days": 30 
} 

有了許多訂閱計劃,集中信息會消除許多複雜。

PS:響應在JSON中有字符串而不是數字/整數。

相關問題