🌟
Rails Stripe サブスクリプション決済実装 プランの登録
概要
Stripeでのサブスクリプション決済実装をRailsで行う場合、
公式で提供されているgemを使用することになると思います。
前回はAPIを使うまでの事前準備を記事にしました。
- Rails Stripe サブスクリプション決済実装 初期設定をしてAPIを使える状態にする
https://qiita.com/ss_watanabe/items/8c5ec353a842d5d30e77
今回はサブスクリプションプランをStripeに登録する方法を紹介します。
管理ページからプラン追加
Stripe管理ページでSubscriptions > Plansよりプランの一覧が閲覧できます。
管理ページからプランを追加する場合はこの画面のNewより追加できます。
こんな感じです。
トライアル期間が365日あるが、その後は1日毎に100万円かかる悪魔的プランです。
Railsからプラン追加
アプリケーション側から先ほどのような悪魔的なプランを登録してみます。
プランを追加するにはモジュールはStripe::Plan
クラスのcreate
メソッドを使用します。
前回Stripe
モジュールを使用できる設定は完了させているので、単純にメソッドに適切な引数を設定するだけでプランは作成されます。
公式リファレンス:Create a plan
実装
def create_plan
Stripe::Plan.create(
id: 'test_plan',
name: 'Test Plan',
amount: 1000000,
currency: 'jpy',
interval: 'day',
interval_count: 1,
trial_period_days: 365,
statement_descriptor: 'sswatanabe'
metadata: {
are_you_from_chicago: "No i'm from NewYork"
}
)
end
各パラメータの意味は名前の通りです。
英語に馴染みのない僕にはstatement_descriptor
がなんのことか分からなかったのですが、
リファレンスを読んだところ、「クレジットの明細に表示される名前」らしいです。
metadata
では、好きな情報を持たせることができます。
アプリケーション側のPlan IDを登録する時などに活用できます。
確認
API側からも確認できますが、
手っ取り早くStripe管理ページでみてみましょう。
無事追加されています。
詳細も正常ですね。
所感
........アプリケーション側からプラン追加するってなかなか壮大なシステムでしか使わないよな。
参考
- Stripe API Reference
https://stripe.com/docs/api - 日本正式リリースしたStripeを使ってサブスクリプション型決済システムを実装する
http://qiita.com/tady/items/7617e62b2a5402ebd0fb
Discussion