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
160
サブスクリプション決済入門 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
220
収益を高めるための Stripeダッシュボード活用術 / jp_stripes_online_7
stripehideokamoto
0
280
No-code SaaS and Full Site Editing / wcasia2023
stripehideokamoto
0
220
コア機能開発に集中するための Stripe Checkout活用法 / jp_stripes_deep_dive_202301
stripehideokamoto
0
380
State of Checkout 2022から見た オンライン決済フローの最適化/jp-stripes-miyzaki-202301
stripehideokamoto
0
120
ノーコード・ローコードツールで サブスク運用を効率化する方法 / JP_Stripes_Osaka_202301
stripehideokamoto
0
74
ビジネスユーザを巻込む Stripeダッシュボード活用法 / jp_stripes_deepdive-202212
stripehideokamoto
0
250
AWSでローコードにはじめる サブスクリプション運用の効率化/aws-startup-tech-meetup-fukuoka-2
stripehideokamoto
0
120
サブスクリプション決済入門 Stripeでの実装方法と、要件定義時のポイント/jp_stripes_okayama_vol3
stripehideokamoto
9
5.6k
Other Decks in Technology
See All in Technology
re:Invent2024 KeynoteのAmazon Q Developer考察
yusukeshimizu
1
150
いま現場PMのあなたが、 経営と向き合うPMになるために 必要なこと、腹をくくること
hiro93n
9
7.7k
【JAWS-UG大阪 reInvent reCap LT大会 サンバが始まったら強制終了】“1分”で初めてのソロ参戦reInventを数字で振り返りながら反省する
ttelltte
0
140
Bring Your Own Container: When Containers Turn the Key to EDR Bypass/byoc-avtokyo2024
tkmru
0
860
Oracle Exadata Database Service(Dedicated Infrastructure):サービス概要のご紹介
oracle4engineer
PRO
0
12k
JAWS-UG20250116_iOSアプリエンジニアがAWSreInventに行ってきた(真面目編)
totokit4
0
140
dbtを中心にして組織のアジリティとガバナンスのトレードオンを考えてみた
gappy50
0
280
[IBM TechXchange Dojo]Watson Discoveryとwatsonx.aiでRAGを実現!座学①
siyuanzh09
0
110
Formal Development of Operating Systems in Rust
riru
1
420
Azureの開発で辛いところ
re3turn
0
240
DMMブックスへのTipKit導入
ttyi2
1
110
AWSの生成AIサービス Amazon Bedrock入門!(2025年1月版)
minorun365
PRO
7
470
Featured
See All Featured
Rails Girls Zürich Keynote
gr2m
94
13k
Optimizing for Happiness
mojombo
376
70k
Music & Morning Musume
bryan
46
6.3k
Unsuck your backbone
ammeep
669
57k
Adopting Sorbet at Scale
ufuk
74
9.2k
Thoughts on Productivity
jonyablonski
68
4.4k
Making the Leap to Tech Lead
cromwellryan
133
9k
The Art of Programming - Codeland 2020
erikaheidi
53
13k
Agile that works and the tools we love
rasmusluckow
328
21k
Statistics for Hackers
jakevdp
797
220k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
28
9.2k
Side Projects
sachag
452
42k
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