642 Views
March 21, 24
スライド概要
Stripe Developer Advocate
JP_Stripes 広島 vol.7 - サブスクリプション・銀行振込決済入門 サブスクリプション決済入門 Stripeでの実装方法と、要件定義時のポイント @hidetaka_dev Npv 2022 1
収益 Revenue 2
JP_Stripes 広島 vol.7 - サブスクリプション・銀行振込決済入門 収益を増やす方法は2つ 売上を 増やす 費用を 減らす 3
JP_Stripes 広島 vol.7 - サブスクリプション・銀行振込決済入門 収益を増やす方法は2つ 売上を 増やす ● ● LTV(顧客生涯価値)の増加 ○ 客単価を上げる ○ 解約率を下げる 新しい収益モデルの創生 費用を 減らす ● ● ● ● 固定費用を減らす 社内リソースの効率的な運用 不正利用を予防する キャッシュフローを改善する 4
サービスのLTV 把握していますか? 5
Life Time Value 顧客が取引を終了するまでに、 平均継続期間 x 平均売上高 x 粗利率 いくら企業に支払ったか https://stripe.com/sessions 6
LTVを簡単おさらい データからLTVを計算する ● 平均継続期間: 1年 / 解約率 ○ 例: 解約率 8%の場合、平均継続期間は12.5年 ● 平均売上高(ARPU):売上高 / ユーザー数 ○ 年商 1億、1000ユーザーの場合、ARPUは10万 ● LTV計算例: ○ 12.5年 x 10万 = 62.5万円 7
Stripe ダッシュボードで 数字を手早く確認
Stripe Sigmaで SQLを使った 詳細な分析
Stripeではじめる サブスクリプション 10
Billingを利用したフロー サブスクリプションでの請求フロー(例) エンドユーザー 契約申込 サービスサイト 12
Billingを利用したフロー サブスクリプションでの請求フロー(例) エンドユーザー 契約申込 サービスサイト 契約受付 13
Billingを利用したフロー サブスクリプションでの請求フロー(例) エンドユーザー 契約申込 サービスサイト 契約受付 サービス 提供 14
Billingを利用したフロー サブスクリプションでの請求フロー(例) 銀行振込、カード、 コンビニ、etc エンドユーザー 契約申込 サービスサイト 契約受付 支払い サービス 提供 15
Billingを利用したフロー サブスクリプションでの請求フロー(例) 銀行振込、カード、 コンビニ、etc エンドユーザー 契約申込 サービス利用 サービスサイト 契約受付 サービス 提供 支払い 16
Billingを利用したフロー サブスクリプションでの請求フロー(例) 銀行振込、カード、 コンビニ、etc エンドユーザー 契約申込 サービス利用 サービスサイト 契約受付 サービス 提供 決済システム カスタマー 作成 支払い 支払い 状態管理 請求 (自動課金・請 求書送付) 請求金額計算 17
Billingを利用したフロー サブスクリプションでの請求フロー(例) 銀行振込、カード、 コンビニ、etc エンドユーザー 契約申込 サービス利用 サービスサイト 契約受付 サービス 提供 決済システム カスタマー 作成 プラン変更、解 約申請 (ポータル) 支払い 成功 課金 スケジュール 管理 請求 (自動課金・請 求書送付) 支払い ステータス 管理、消込 支払い 状態管理 失敗 プラン更新、提 供停止 API、Webhook 失敗 請求金額計算 18
Billingを利用したフロー Stripe Billing のカバー範囲 銀行振込、カード、 コンビニ、etc エンドユーザー 契約申込 サービス利用 サービスサイト 契約受付 サービス 提供 Stripe カスタマー 作成 プラン変更、解 約申請 (ポータル) 支払い 支払い 状態管理 成功 課金 スケジュール 管理 請求 (自動課金・請 求書送付) 支払い ステータス 管理、消込 失敗 プラン更新、提 供停止 API、Webhook 失敗 請求金額計算 ... Billingのカバーする範囲 19
Stripe Billing Billingの構造を理解しよう 収集・Collect 作成・Create 製品 Product 顧客 Customer 価格 Price Price Price 追加オプション・ Add-ons 割引 Discount 税率 TaxRates ... … Payment method Notification Email Webhook 契約・Subscribe 課金・Charge Subscription 請求書 Invoice PaymentIntent 20
Billing概要 Billing オブジェクト間の処理の流れ Products Customer Prices 500 円 / 月 1000 円 / 月 機能料金 会員料金 10000 円 / 年 21
Billing概要 Billing オブジェクト間の処理の流れ Products Customer Subscription Prices 500 円 / 月 機能料金 Paid: Aug. 2020 1000 円 / 月 会員料金 10000 円 / 年 22
Billing概要 Billing オブジェクト間の処理の流れ Products Customer Subscription Prices 500 円 / 月 機能料金 Paid: Aug. 2020 Invoices Paid: Aug. 2020 1000 円 / 月 会員料金 10000 円 / 年 23
Billing概要 Billing オブジェクト間の処理の流れ Products Customer Subscription Prices 500 円 / 月 機能料金 Paid: Aug. 2020 Invoices Paid: Aug. 2020 1000 円 / 月 会員料金 10000 円 / 年 Paid: July. 2020 24
サブスクリプションで 考慮・意識すべき点(一部) 25
サブスクリプションで 考慮すべき事項の例 ● 請求サイクルは何種類あるか? ● 請求日をいつにするか? ● プラン変更時、 差額をどう処理するか? ● 決済失敗の通知を どのように受け取るか? ● 再決済が成功した際、 どのように制限を解除する? https://docs.stripe.com/implementation-guides/billing/scoping-considerations
New サブスクリプションの 請求サイクル指定が簡単に ● billing_cycle_anthor_config ● day_of_monthで31を指定 ● ○ 2月: 28 or 29日 ○ 4月など: 30日 UTCタイムゾーンなので、 月初や時間の指定は時差に注意
テストクロックで 時間経過をシミュレート ● Stripe内の時間経過をテスト ● 未払いや更新、 プラン変更の差額処理など ● Webhook連携先は、 status_transitions内の タイムスタンプで時間を判定
Beta Stripe Event Destination Amazon EventBridgeにStripeのデータを送信する https://stripe.com/docs/event-destinations/eventbridge-beta
Beta サブスクリプションの価格改定用API 複雑なバッチ処理なしに、新しい料金体系に移行する https://docs.stripe.com/billing/subscriptions/sales-led-billing
LTVを増やすために Stripeでできること 31
マーケティング キャンペーンに合致する クーポンコードを作成
JP_Stripes 広島 vol.7 - サブスクリプション・銀行振込決済入門
Stripeを利用して、休会機能を組み込む
●
“Subscriptionの更新”で処理
●
契約自体は残るため、
DB側のID更新などは不要
●
請求書そのものは
継続して発行される点に注意
○
請求書を発行後、
「無効」として処理
●
再開時は、pause_collection
をnilにするだけ
●
休会期間の指定も可能
https://qiita.com/hideokamoto/items
/1a5f8549d862f7fc9d4b
Stripe::Subscription.update(
'sub_123456789',
{
pause_collection: {
behavior: 'void'
}
},
)
33
JP_Stripes 広島 vol.7 - サブスクリプション・銀行振込決済入門 New Stripeで解約アンケートと分析を行う カスタマーポータル / APIで収集 Sigma / Webhookで分析 https://stripe.com/docs/api/subscriptions/cancel#cancel_subscription-cancel lation_details https://qiita.com/hideokamoto/items/e7ae699e20436118d572 https://stripe.com/sessions 34
JP_Stripes 広島 vol.7 - サブスクリプション・銀行振込決済入門 New 売上回収フローをカスタマイズ(Billing Scale) https://stripe.com/sessions 35
サブスクリプションサービスで なにより大切なこと 36
サブスクリプションサービスで なにより大切なこと -> 開発・運用コストの最小化 37
開発時間の41%は、 バグ対応や保守・技術負債に費やされている https://youtu.be/5aqwPlMHFM8
カスタマーポータルを利用した請求管理 カスタマーポータルで、請求管理系の開発を効率化 支払い方法の登録・更新 未払い通知や請求履歴の表示と領収書DL https://stripe.com/sessions 39
スムーズな請求と回収 New 適格請求書・簡易請求書への対応 40
Stripeダッシュボードで始めるRevOps 未払い顧客リストを ブックマークか 社内Wikiにリンク https://dashboard.stripe.com/custo mers?delinquent=true&type=regist ered
Case study Figmaは、100億ドル規模の事業を5人未満の財務チームで実現 ビジネスの拡大に対応するため、財務・事業のプロセスを自動化精鋭 メンバーが Figma の事業に注力できる環境を実現 サブスクリプションの決済 請求書の自動作成・送付 決済のリアルタイムのレポート →財務部門が、付加価値の高い業務に集中できる環境を実現 Products Payments Billing Sigma Invoicing https://stripe.com/jp/customers/figma
Stripe’s solution Stripeによる「決済ソリューションの最適化」 コードによるカスタマイズなしで、 購入完了(CV)率の高い支払い方法を動的に表示する 1 利用したい支払い手段を有効化 2 顧客の国・地域やブラウザ・金額に 応じて支払い手段を動的に表示
ローコードなマイページ組み込み Stripeによる、「段階的な独自UI化」 Payment Links / ダッシュボード ノーコードで素早く開始 ・メールアドレスまたはリンク ・単発・サブスクリプション ・システム連携はWebhook カスタマーポータル メール認証式マイページ ・請求情報の表示 ・決済情報の変更 ・プラン変更・解約など 44
ローコードなマイページ組み込み Stripeによる、「段階的な独自UI化」 Payment Links / ダッシュボード Checkout / 料金表 ノーコードで素早く開始 段階的な「埋め込み化」 ・メールアドレスまたはリンク ・単発・サブスクリプション ・システム連携はWebhook ・リダイレクト型申し込みページ ・APIでシステムと顧客情報を連携 ・後ろの連携は、 ノーコード時代のシステムを活用 カスタマーポータル カスタマーポータル(ディープリンク) メール認証式マイページ 段階的な「埋め込み化」 ・請求情報の表示 ・決済情報の変更 ・プラン変更・解約など ・マイページTOPを独自UIに ・必要な「操作」を、 ディープリンクにて実現 45
ローコードなマイページ組み込み Stripeによる、「段階的な独自UI化」 Payment Links / ダッシュボード Checkout / 料金表 Elements ( JS / iOS / Android ) ノーコードで素早く開始 段階的な「埋め込み化」 独自UIで「ホワイトラベル化」 ・メールアドレスまたはリンク ・単発・サブスクリプション ・システム連携はWebhook ・リダイレクト型申し込みページ ・APIでシステムと顧客情報を連携 ・後ろの連携は、 ノーコード時代のシステムを活用 ・埋め込み型決済フォーム ・より柔軟な決済シナリオ ・Appearance APIによるカスタマイズ カスタマーポータル カスタマーポータル(ディープリンク) APIを利用した独自UI メール認証式マイページ 段階的な「埋め込み化」 独自UIで「ホワイトラベル化」 ・請求情報の表示 ・決済情報の変更 ・プラン変更・解約など ・マイページTOPを独自UIに ・必要な「操作」を、 ディープリンクにて実現 ・Stripe APIをシステムに組み込み ・準備できた機能から順に ディープリンクより移行する 46
“ユーザー向けの画面も用意さ れているので、自社のロゴを入 れるだけで新たに開発する必 要がありません。1週間という "爆速" で実装することができ ました” https://stripe.com/jp/customers/oh-my-teeth
Beta Stripe Workbench ブラウザ上で、Stripeの開発に必要な情報をまとめてチェック https://workbench.stripe.dev/
Next Generation Developer Experience 直近に発生したAPIエラーの分析とデバッグ
Next Generation Developer Experience APIログやWebhook / イベント履歴もすぐに表示できる APIログ イベント・Webhook履歴 https://stripe.com/sessions 50
Next Generation Developer Experience Stripe Shell: ブラウザから、Stripe APIをそのままテスト
Next Generation Developer Experience API Explorer: テストしたAPIリクエストを 言語別にコード出力
Next Generation Developer Experience システムの「異常」をダッシュボードでお知らせ 頻発しているAPIエラーの通知 直近のAPIエラー数 https://stripe.com/sessions 53
Stripe Workbench (Preview) https://workbench.stripe.dev/workbench