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-str...
Search
Hidetaka Okamoto (Stripe)
January 25, 2023
Technology
0
200
サブスクリプション決済入門 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
280
収益を高めるための Stripeダッシュボード活用術 / jp_stripes_online_7
stripehideokamoto
0
360
No-code SaaS and Full Site Editing / wcasia2023
stripehideokamoto
0
250
コア機能開発に集中するための Stripe Checkout活用法 / jp_stripes_deep_dive_202301
stripehideokamoto
0
480
State of Checkout 2022から見た オンライン決済フローの最適化/jp-stripes-miyzaki-202301
stripehideokamoto
0
190
ノーコード・ローコードツールで サブスク運用を効率化する方法 / JP_Stripes_Osaka_202301
stripehideokamoto
0
120
ビジネスユーザを巻込む Stripeダッシュボード活用法 / jp_stripes_deepdive-202212
stripehideokamoto
0
320
AWSでローコードにはじめる サブスクリプション運用の効率化/aws-startup-tech-meetup-fukuoka-2
stripehideokamoto
0
160
サブスクリプション決済入門 Stripeでの実装方法と、要件定義時のポイント/jp_stripes_okayama_vol3
stripehideokamoto
9
5.9k
Other Decks in Technology
See All in Technology
改竄して学ぶコンテナサプライチェーンセキュリティ ~コンテナイメージの完全性を目指して~/tampering-container-supplychain-security
mochizuki875
1
170
大規模モノレポの秩序管理 失速しない多言語化フロントエンドの運用 / JSConf JP 2025
shoota
0
110
プログラミング言語を書く前に日本語を書く── AI 時代に求められる「言葉で考える」力/登壇資料(井田 献一朗)
hacobu
PRO
0
160
旧から新へ: 大規模ウェブクローラの Perl から Go への移行 / YAPC::Fukuoka 2025
motemen
3
900
AIエージェントによるエンタープライズ向けスライド検索!
shibuiwilliam
1
440
Proxmox × HCP Terraformで始めるお家プライベートクラウド
lamaglama39
1
210
Redux → Recoil → Zustand → useSyncExternalStore: 状態管理の10年とReact本来の姿
zozotech
PRO
16
8.1k
仕様駆動 x Codex で 超効率開発
ismk
2
1.5k
嗚呼、当時の本番環境の状態で AI Agentを再評価したいなぁ...
po3rin
0
420
Spring Boot利用を前提としたJavaライブラリ開発方法の提案
kokihoshihara
PRO
2
220
Black Hat USA 2025 Recap ~ クラウドセキュリティ編 ~
kyohmizu
0
540
[mercari GEARS 2025] Keynote
mercari
PRO
1
260
Featured
See All Featured
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
35
3.2k
Build The Right Thing And Hit Your Dates
maggiecrowley
38
2.9k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
12
1.3k
Making Projects Easy
brettharned
120
6.5k
Bash Introduction
62gerente
615
210k
It's Worth the Effort
3n
187
28k
Documentation Writing (for coders)
carmenintech
76
5.1k
The Pragmatic Product Professional
lauravandoore
36
7k
StorybookのUI Testing Handbookを読んだ
zakiyama
31
6.3k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
33
1.8k
Git: the NoSQL Database
bkeepers
PRO
432
66k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
11
930
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