Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
サブスクリプション決済入門 Stripeでの実装方法と、要件定義時のポイント/okta-stripe-202301
Search
Hidetaka Okamoto (Stripe)
January 25, 2023
Technology
0
98
サブスクリプション決済入門 Stripeでの実装方法と、要件定義時のポイント/okta-stripe-202301
Stripe x Okta 共催セミナー 2023/01 での講演資料です。
Hidetaka Okamoto (Stripe)
January 25, 2023
Tweet
Share
More Decks by Hidetaka Okamoto (Stripe)
See All by Hidetaka Okamoto (Stripe)
Stripeではじめる Revenue Operations / jp_stripes_okinawa_8
stripehideokamoto
0
180
収益を高めるための Stripeダッシュボード活用術 / jp_stripes_online_7
stripehideokamoto
0
180
No-code SaaS and Full Site Editing / wcasia2023
stripehideokamoto
0
210
コア機能開発に集中するための Stripe Checkout活用法 / jp_stripes_deep_dive_202301
stripehideokamoto
0
280
State of Checkout 2022から見た オンライン決済フローの最適化/jp-stripes-miyzaki-202301
stripehideokamoto
0
82
ノーコード・ローコードツールで サブスク運用を効率化する方法 / JP_Stripes_Osaka_202301
stripehideokamoto
0
44
ビジネスユーザを巻込む Stripeダッシュボード活用法 / jp_stripes_deepdive-202212
stripehideokamoto
0
170
AWSでローコードにはじめる サブスクリプション運用の効率化/aws-startup-tech-meetup-fukuoka-2
stripehideokamoto
0
100
サブスクリプション決済入門 Stripeでの実装方法と、要件定義時のポイント/jp_stripes_okayama_vol3
stripehideokamoto
9
5.1k
Other Decks in Technology
See All in Technology
[新卒向け研修資料] テスト文字列に「うんこ」と入れるな(2024年版)
infiniteloop_inc
5
18k
.NET Profiler in 2024.
kkamegawa
2
2.1k
チームでロジカルシンキングに改めて向き合っている話 〜学習環境と実践⽅法〜
sansantech
PRO
3
3.3k
Next.js に疲れた私は Vue3 に癒やされた
akagire
0
140
データベース02: データベースの概念
trycycle
0
190
Android Target SDK 35 (Android 15) 対応の概要
akkie76
0
160
プロンプトエンジニアリングでがんばらない-Agentic Workflow へ-近藤憲児
kenjikondobai
6
1.2k
高専で制御を、大学でセンシングを学び、次は脳みそ
satoshirobatofujimoto
0
120
LLM開発・活用の舞台裏@2024.04.25
yushin_n
3
1.3k
コードファーストの考え方。 Amplify Gen2から学ぶAWS次世代のWeb開発体験
yoshiitaka
2
480
EM完全に理解した と思ったけど、 やっぱり何も分からなかった話 / EM Night Fukuoka #1
hirutas
0
300
Python と Snowflake はズッ友だょ!~ Snowflake の Python 関連機能をふりかえる ~
__allllllllez__
2
150
Featured
See All Featured
Building Applications with DynamoDB
mza
88
5.6k
Imperfection Machines: The Place of Print at Facebook
scottboms
261
12k
Documentation Writing (for coders)
carmenintech
60
4k
Building Flexible Design Systems
yeseniaperezcruz
320
37k
KATA
mclloyd
16
12k
Scaling GitHub
holman
457
140k
ParisWeb 2013: Learning to Love: Crash Course in Emotional UX Design
dotmariusz
104
6.6k
Keith and Marios Guide to Fast Websites
keithpitt
408
22k
Optimizing for Happiness
mojombo
370
69k
Six Lessons from altMBA
skipperchong
22
3k
Creatively Recalculating Your Daily Design Routine
revolveconf
211
11k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
22
1.6k
Transcript
サブスクリプション決済入門 Stripeでの実装方法と、要件定義時のポイント Stripe x Okta 共催セミナー 2023/01 @hidetaka_dev Jan 2023
1
今日のトピック • Stripeでサブスクリプションを始める3つの方法 • サブスクリプションの契約後に想定すべき 3つの運用イベントとStripeでの対応方法 • なぜStripeの組み込みは、 Webhookを利用した「イベント駆動型」になるのか 2
Stripe x Okta 共催セミナー 2023/01
岡本 秀高 ( @hidetaka_dev ) • Stripe Developer Advocate (ex-developer
in Digitalcube) • JavaScript / TypeScript developer ◦ AWS Lambda / CDK ◦ Next.js / React ◦ WordPress / Alexa / etc • AWS Samurai 2017 / AWS Community Day APAC 2017 • QiitaでStripeに関する Dev blogを週2/3本で更新中 ◦ https://qiita.com/hideoka moto ◦ 年間120記事ペース 3 Stripe x Okta 共催セミナー 2023/01
今日のトピック • Stripeでサブスクリプションを始める3つの方法 • サブスクリプションの契約後に想定すべき 3つの運用イベントとStripeでの対応方法 • なぜStripeの組み込みは、 Webhookを利用した「イベント駆動型」になるのか 4
Stripe x Okta 共催セミナー 2023/01
さまざまな場面で、サブスクリプション契約は発生する • StripeやOkta Customer Identity Cloud(旧Auth0)などのWebサービス • 食料品などの定期購入・宅配サービス • インターネット回線やテナントなどの利用契約
• 保守運用費用やコンサルティングなどの専門サービス • etc.. -> サービスの提供体系によって、サブスクリプションの始め方が変化する 5 Stripe x Okta 共催セミナー 2023/01
Stripeで実現できるサブスクリプションの始め方 • 1: 事前に用意した料金に対して、顧客が申し込みを行う ◦ Stripe Billing + Stripe Payment
Links / Checkout / Elements • 2: ユーザーごとに料金体系を動的に作成し、顧客が申し込みを行う ◦ Stripe Billing + Stripe Checkout / Elements • 3: 個別の料金体系を作成し、請求書を顧客に送付する ◦ Stripe Billing + Stripe Invoicing 6 Stripe x Okta 共催セミナー 2023/01
Stripe Billingでサブスクリプション運用を簡単にする • 請求処理や再請求処理、 プラン変更の日割計算など • 従量課金や パッケージ価格にも対応 • クレジットカード・銀行振込など複
数決済に対応 • 利用料: 決済額の0.5% 7 Stripe x Okta 共催セミナー 2023/01
Stripe Invoicingで請求書発行などの請求業務を効率化 • オンライン / PDFの 請求書を発行・送付 ◦ API組み込みにも対応 •
クレジットカード・銀行振込など複 数決済に対応 • 銀行振込は1時間単位での 自動消し込みをサポート • 利用料: 決済額の0.4% 8 Stripe x Okta 共催セミナー 2023/01
Stripe Payment Linksでノーコードな申し込みページ • buy.stripe.comで 申し込み用URLを作成 • URLを共有するだけで 決済やサブスク申し込みの 導線を作ることができる
• アップセルや クロスセルにも対応 • 利用料: 無料 9 Stripe x Okta 共催セミナー 2023/01
Stripe Checkoutでローコードで決済フォームを実装 • リダイレクト型決済フロー • 数行のコードで、 安全かつ高機能な 決済フォームが実現 • アップセルや
クロスセルにも対応 • 利用料: 無料 *カスタムドメインは月10USD 10 Stripe x Okta 共催セミナー 2023/01
Stripe Elementsでデザインに馴染む高機能決済フォーム • 埋め込み型決済フォーム • 複数の決済方法をサポート • CSS変数やテーマ機能で 見た目のカスタマイズが可能 •
利用料: 無料 11 Stripe x Okta 共催セミナー 2023/01
ビジネス体系に応じた製品の使い分け • 顧客向けのダッシュボードやUIがまだない ◦ Invoicingで請求書を発行 ◦ Payment Linksで申し込みURLを作成 • ダッシュボードなどの開発工数を低く抑えたい
◦ Checkoutや料金表で、Stripeが用意する決済画面を利用する • ブランドにあったデザインで組み込みを行いたい より複雑な条件や追加の入力フォームをフローに組み込みたい ◦ Elementsを利用し、JavaScriptで決済フォームを埋め込み 12 Stripe x Okta 共催セミナー 2023/01
埋め込み型の料金表 • Stripeに登録した料金データで 料金表を作成できる • HTML / JSのスニペットを 埋め込みだけで実現 •
機能表やラベルの カスタマイズなども可能 • 利用料: 無料 13 Stripe x Okta 共催セミナー 2023/01 <script async src="https://js.stripe.com/v3/pricing-table.js" ></script> <stripe-pricing-table pricing-table-id="prctbl_xxxxx" publishable-key="pk_test_xxxxx" ></stripe-pricing-table>
今日のトピック • Stripeでサブスクリプションを始める3つの方法 • サブスクリプションの契約後に想定すべき 3つの運用イベントとStripeでの対応方法 • なぜStripeの組み込みは、 Webhookを利用した「イベント駆動型」になるのか 14
Stripe x Okta 共催セミナー 2023/01
サブスクリプションは、「契約してからが本番」 • サブスクリプションは、「契約し続けてもらう」必要がある ◦ 使わないサブスクサービスは、解約される ▪ 競合他社への乗り換え: 「もっと安いor便利なサービスにしよう」 ▪ 需要の消失:
「子どもが成長したので、もう使わない」 • 機能への不満だけでなく、 サポートや契約体系などへの不満も解約理由になりうる 15 Stripe x Okta 共催セミナー 2023/01
サブスクリプションで発生しやすいサポートタスク • 契約内容の確認と変更 ◦ プランの変更や解約・請求履歴の確認 ◦ 請求書等の送付先住所・メールアドレスの変更 • 決済に関連する事象 ◦
カードの有効期限切れや銀行振込の入金忘れ ◦ 不正決済の申し立て(チャージバック請求)対応 • 営業やマーケティングなどとの連携 ◦ 優良顧客の特定、会計データのエクスポート 16 Stripe x Okta 共催セミナー 2023/01
Stripeで運用タスクを効率化する • 契約内容の確認と変更 ◦ Customer Portalでリダイレクト型請求マイページを実装 • 決済に関連する事象 ◦ 支払い失敗などの通知メールの自動送信
◦ 3DS2への対応やRadarを利用した不正検知システムの提供 • 営業やマーケティングなどとの連携 ◦ ダッシュボードやAPIの検索機能、レポート機能 17 Stripe x Okta 共催セミナー 2023/01
Stripe Customer Portalで請求マイページ • リダイレクト型 顧客請求マイページ • 顧客情報・決済情報 請求履歴・プラン変更など •
ノーコード / APIで 組み込みが可能 • 利用料: 無料 18 Stripe x Okta 共催セミナー 2023/01
失敗した支払いのフォローアップ • 決済の再試行を3回実施 • 失敗した場合に、 メールを送信して情報更新 • 有料オプションを利用して、 スマートリトライなど 追加機能も
Billing Scale (0.8%) 19 Stripe x Okta 共催セミナー 2023/01
3Dセキュア2への対応や不正利用対策 • 3Dセキュア2に対応 ◦ 組み込み作業はほぼ不要 • レポートを元に リクエストの閾値を調整可能 • Radarを利用して、
カスタムの認証ルールなども 設定が可能になる 20 Stripe x Okta 共催セミナー 2023/01
ダッシュボードのフィルタ機能で、見たい情報を抽出 • 各情報一覧にある「フィルタ機能」 ◦ Billing, Payment, Customer, etc • 作成日や決済ステータスで、
情報をフィルタリング ◦ 例:直近X日に作成された、 未払いのサブスクリプション • フィルタ条件は、 URLのクエリ文字列として追加される ◦ /payments?status[0]=canceled&st atus[1]=blocked • 「よく見る条件」をブックマーク 社内Wikiやポータルで共有しよう 21 Stripe x Okta 共催セミナー 2023/01
今日のトピック • Stripeでサブスクリプションを始める3つの方法 • サブスクリプションの契約後に想定すべき 3つの運用イベントとStripeでの対応方法 • なぜStripeの組み込みは、 Webhookを利用した「イベント駆動型」になるのか 22
Stripe x Okta 共催セミナー 2023/01
サブスクリプションの「状態変化」をWebhookで検知 • サブスクリプションでは、さまざまな出来事が発生する ◦ プランを変更した・解約した ◦ 今月の決済で、LTVが1000万円を突破した ◦ 銀行振込の入金額が不足していた •
運用タスクは、顧客や契約の「状態」が変化したときに発生する ◦ Stripeの中で状態が変化が発生したことを、 外に伝える仕組みがStripe Webhook 23 Stripe x Okta 共催セミナー 2023/01
Webhookで、運用業務を自動化する • Webhookを利用して、「XXの時、YYを行う」ワークフローが組める ◦ 未払いが発生した時、ユーザーに提供する機能を制限する ◦ トライアル期間終了間際に、フォローアップメールを送付する ◦ 年間の決済額が一定額を超えた時、特別割引を適用する •
「連携するためのシステム」はノーコードでも構築可能 ◦ Zapierなどのノーコードサービスを利用する ◦ Webhook APIを開発して、システムと連携する ▪ AWS / GCP / Azureなどのワークフローサービスで ローコードに開発することも可能 24 Stripe x Okta 共催セミナー 2023/01
StripeとOkta Customer Identity Cloud(CIC)を連携する • Stripeのサブスクが状態変化したとき、Okta CICのユーザーを操作する • 連携の例: ◦
サブスクリプションを解約したら、ユーザーを削除する ◦ プランが変わった時、ユーザーの権限を変更する • バッチ処理での連携も ◦ Okta CICのOrganizations参加人数に応じた 従量課金の請求をStripeで作成 25 Stripe x Okta 共催セミナー 2023/01
まとめ • Stripeを利用して、さまざまなサブスクリプション契約を提供できる ◦ 請求書 / URL / システム組み込み ◦
従量課金, パッケージ価格 / 月額, 年額, 四半期 • サブスクリプションでは、「運用・サポート」タスクを要件に含めよう ◦ 未払い対応 / 状況確認 / カスタマーサクセス • Webhookを利用して、Okta CICなどと契約状態の変化を共有しよう ◦ ノーコードサービス / クラウドサービス / API開発 26 Stripe x Okta 共催セミナー 2023/01