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
AWSでローコードにはじめる サブスクリプション運用の効率化/aws-startup-tech...
Search
Hidetaka Okamoto (Stripe)
November 17, 2022
Technology
0
120
AWSでローコードにはじめる サブスクリプション運用の効率化/aws-startup-tech-meetup-fukuoka-2
Hidetaka Okamoto (Stripe)
November 17, 2022
Tweet
Share
More Decks by Hidetaka Okamoto (Stripe)
See All by Hidetaka Okamoto (Stripe)
Stripeではじめる Revenue Operations / jp_stripes_okinawa_8
stripehideokamoto
0
210
収益を高めるための 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
110
サブスクリプション決済入門 Stripeでの実装方法と、要件定義時のポイント/okta-stripe-202301
stripehideokamoto
0
160
ノーコード・ローコードツールで サブスク運用を効率化する方法 / JP_Stripes_Osaka_202301
stripehideokamoto
0
71
ビジネスユーザを巻込む Stripeダッシュボード活用法 / jp_stripes_deepdive-202212
stripehideokamoto
0
230
サブスクリプション決済入門 Stripeでの実装方法と、要件定義時のポイント/jp_stripes_okayama_vol3
stripehideokamoto
9
5.6k
Other Decks in Technology
See All in Technology
私なりのAIのご紹介 [2024年版]
qt_luigi
1
120
オプトインカメラ:UWB測位を応用したオプトイン型のカメラ計測
matthewlujp
0
170
[Ruby] Develop a Morse Code Learning Gem & Beep from Strings
oguressive
1
150
re:Invent をおうちで楽しんでみた ~CloudWatch のオブザーバビリティ機能がスゴい!/ Enjoyed AWS re:Invent from Home and CloudWatch Observability Feature is Amazing!
yuj1osm
0
120
Storage Browser for Amazon S3
miu_crescent
1
130
祝!Iceberg祭開幕!re:Invent 2024データレイク関連アップデート10分総ざらい
kniino
2
250
継続的にアウトカムを生み出し ビジネスにつなげる、 戦略と運営に対するタイミーのQUEST(探求)
zigorou
0
520
アップデート紹介:AWS Data Transfer Terminal
stknohg
PRO
0
180
Turing × atmaCup #18 - 1st Place Solution
hakubishin3
0
470
新機能VPCリソースエンドポイント機能検証から得られた考察
duelist2020jp
0
210
UI State設計とテスト方針
rmakiyama
2
390
サイバー攻撃を想定したセキュリティガイドライン 策定とASM及びCNAPPの活用方法
syoshie
3
1.2k
Featured
See All Featured
Rails Girls Zürich Keynote
gr2m
94
13k
Building Applications with DynamoDB
mza
91
6.1k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
17
2.3k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
44
6.9k
Visualization
eitanlees
146
15k
Documentation Writing (for coders)
carmenintech
66
4.5k
Speed Design
sergeychernyshev
25
670
Keith and Marios Guide to Fast Websites
keithpitt
410
22k
Raft: Consensus for Rubyists
vanstee
137
6.7k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
507
140k
VelocityConf: Rendering Performance Case Studies
addyosmani
326
24k
[RailsConf 2023] Rails as a piece of cake
palkan
53
5k
Transcript
AWSでローコードにはじめる サブスクリプション運用の効率化 AWS Startup Tech Meetup 福岡 #2 ~ いくぜ!サーバーレス!
~ @hidetaka_dev Npv 2022 1 #AWSStartup
今日のトピック • サブスクリプションサービスは、 「契約してから」が本番 • Amazon EventBridge + AWS Step
Functions & AWS Lambdaで ローコードにサブスクリプションの運用WFを構築しよう • 変化に素早く対応するために、 AWSのローコード・Serverlessツールを活用しよう 2 AWS Startup Tech Meetup 福岡 #2 ~ いくぜ!サーバーレス! ~ #AWSStartup
岡本 秀高 ( @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 AWS Startup Tech Meetup 福岡 #2 ~ いくぜ!サーバーレス! ~ #AWSStartup
今日のトピック • サブスクリプションサービスは、 「契約してから」が本番 • Amazon EventBridge + AWS Step
Functions & AWS Lambdaで ローコードにサブスクリプションの運用WFを構築しよう • 変化に素早く対応するために、 AWSのローコード・Serverlessツールを活用しよう 4 AWS Startup Tech Meetup 福岡 #2 ~ いくぜ!サーバーレス! ~ #AWSStartup
サブスクリプションは、「契約してからが本番」 • サブスクリプションは、「契約し続けてもらう」必要がある ◦ 使わないサブスクサービスは、解約される ▪ 競合他社への乗り換え: 「もっと安いor便利なサービスにしよう」 ▪ 需要の消失:
「子どもが成長したので、もう使わない」 ◦ 「完全に解約」したいのか、「今だけお休み」したいのか ▪ 長期出張のため、食品の定期注文を解約したい ▪ 今期は見たい番組や作品がないから解約したい 5 AWS Startup Tech Meetup 福岡 #2 ~ いくぜ!サーバーレス! ~ #AWSStartup
解約・休会以外にも、サブスクには状態変化が多数ある • サブスクリプション = 長期的な顧客との関係構築 • さまざまなイベントや状態変化が発生する ◦ カードの更新忘れや銀行振込の入金忘れ ◦
上位プランユーザーによるプランのダウングレード ◦ ユーザーのミスによる高額な従量課金請求書の発行 • 「契約や顧客の状態」が変わったことの検知と、 それに対応するフローの自動化が社内の運用コストや顧客体験を改善する 6 AWS Startup Tech Meetup 福岡 #2 ~ いくぜ!サーバーレス! ~ #AWSStartup
ただし・・・ • 緊急性の高い問題(二重決済、不正請求対応など)以外は、 コア機能の開発にリソースを優先したい • 休会や解約、顧客・契約情報の更新などは、 頑張れば人力である程度サポートできる • 「重要だけども、緊急性の高くない非コア要件」を どのようにシステム化、効率化していくか?
7 AWS Startup Tech Meetup 福岡 #2 ~ いくぜ!サーバーレス! ~ #AWSStartup
Amazon SNSやAWS Chatbotでまずは社内通知から • SNSを利用した社内通知 ◦ Chatbot併用でSlackにも • まずは「何かが起きた」ことを 素早く検知できる仕組みを作る
◦ 顧客が問い合わせて来る前に 調査や対応を済ませたい ◦ 人力でのサポートは継続 ただし初動が早くなる • EventBridgeのルールなどで 要対応イベントかを事前トリアージ ◦ 「オオカミ少年」化を回避する 8 AWS Startup Tech Meetup 福岡 #2 ~ いくぜ!サーバーレス! ~ #AWSStartup
AWS Step Functionsで、WFをローコードに • ドラッグ&ドロップで AWS上にワークフローを構築可能 • AWS APIの呼び出しやWF手動実行も GUIから設定・操作できる
• 設定をJSONなどで出力できるので、 「手軽に試して、手堅く運用」が可能 ◦ ローコードにWFを試作 ◦ テスト環境で評価 ◦ CDKやCFNでコード化 ◦ Go Live ! 9 AWS Startup Tech Meetup 福岡 #2 ~ いくぜ!サーバーレス! ~ #AWSStartup
ユーザー・契約の「状態」をシステムで把握する • 個々の契約や顧客の状態を人力で把握するのは難しい ◦ システム化・仕組み化して、素早く効率的に変化を検知する ◦ ローコードでWFの試作・評価サイクルを素早く回す • Q:「作ったWF」と「状態変化」をどう紐づけるか? ◦
手動実行(GUI / API / CLI / etc..) ◦ Webhook API ◦ AWSのイベント駆動型サービスを利用する ▪ SQS, SNS, EventBridge 10 AWS Startup Tech Meetup 福岡 #2 ~ いくぜ!サーバーレス! ~ #AWSStartup
今日のトピック • サブスクリプションサービスは、 「契約してから」が本番 • Amazon EventBridge + AWS Step
Functions & AWS Lambdaで ローコードにサブスクリプションの運用WFを構築しよう • 変化に素早く対応するために、 AWSのローコード・Serverlessツールを活用しよう 11 AWS Startup Tech Meetup 福岡 #2 ~ いくぜ!サーバーレス! ~ #AWSStartup
EventBridgeで、「状態の変化」とWFを紐づける • 「発生したイベント」と 「実行したいWF」の 関係性(ルール)を作る • AWS内のイベントや、 連携SaaSのイベント、 AWS SDKによる手動通知に対応
• StripeやTwilioなどは、 クイックスタートで Webhookエンドポイントを用意 12 AWS Startup Tech Meetup 福岡 #2 ~ いくぜ!サーバーレス! ~ https://aws.amazon.com/jp/about-aws/whats-new/ 2022/08/amazon-eventbridge-supports-receiving- events-github-stripe-twilio-using-webhooks/
クイックスタート利用の場合 Sourceでstripe.comを指定 detail-typeで Stripeのリソース名を指定 detailで、JSON構造に対応した 条件を書くと、絞り込み 右の例: 「5000円以上の請求書」に 関する全てのイベント 13
AWS Startup Tech Meetup 福岡 #2 ~ いくぜ!サーバーレス! ~ EventBridgeでのStripeイベントのフィルター例
Webhook活用例1: フリートライアルのフォローアップ • Stripeの「customer.subscription.trial_will_end」イベントを利用 ◦ 3日前または手動でトライアルを終了させた場合に発火 • Step FunctionsからSESで顧客に追加のフォローアップメール送信 ◦
自動解約の場合、リソースやアカウント削除などの注意喚起 • Pinpointを使えば、LINEやSMSへの追加送信も可能 ◦ ユーザー層によっては、メールよりもLINEやSMSが有効な場合も ◦ LINE Message APIでは、プランアップグレードのCTA誘導なども可能 14 AWS Startup Tech Meetup 福岡 #2 ~ いくぜ!サーバーレス! ~ #AWSStartup
Webhook活用例2: 長期利用顧客のアップグレード提案 • customer.subscription.updatedイベントを利用 ◦ サブスクリプションの開始日と現在を比較 ◦ 「12ヶ月以上契約の月額プランユーザー」などでフィルタ • SESやPinpointで、顧客に年額プランなどの長期プランを自動提案
• DynamoDBに累計支払額や契約数などを保存することで、 DynamoDB Stream経由で優良顧客の発見も可能 15 AWS Startup Tech Meetup 福岡 #2 ~ いくぜ!サーバーレス! ~ #AWSStartup
Tips: Stripe APIを呼び出すProxy Lambda 16 AWS Startup Tech Meetup 福岡
#2 ~ いくぜ!サーバーレス! ~ https://gist.github.com/hideokamoto-stripe/b1ed354a65f386db8218330252287b7d #AWSStartup
AWSリソースを活用して、サブスクの運用を効率化 • Event Bridge + Step Functionsで、 コードを書かずにワークフローを作ることができる • Event
Bridge -> SNS -> Chatbotで、 社内Slackやメーリスに状態変化を通知するだけでも有用 • Step Functions Workflow Studioを使って、 さまざまな運用効率化施策をローコードで実現させてみよう ◦ 本番稼働させる際は、ぜひCDKやCFNでコード管理を 17 AWS Startup Tech Meetup 福岡 #2 ~ いくぜ!サーバーレス! ~ #AWSStartup
今日のトピック • サブスクリプションサービスは、 「契約してから」が本番 • Amazon EventBridge + AWS Step
Functions & AWS Lambdaで ローコードにサブスクリプションの運用WFを構築しよう • 変化に素早く対応するために、 AWSのローコード・Serverlessツールを活用しよう 18 AWS Startup Tech Meetup 福岡 #2 ~ いくぜ!サーバーレス! ~ #AWSStartup
「ビジネスのコア機能」じゃないからこそ、ローコード • 開発リソースはコア機能の開発や改善に使いたい • クリティカルではない決済・サブスク周りの施策は 「あればいいね」「できたら便利そう」になりやすい ◦ Workflow Studioなら、 テスト環境で実際に動くものを用意・デモしやすい
◦ 想定外のエラーや障害を起こさないために、 稼働しているDBや既存リソースの設定はなるべく触らない • テスト環境で手早く試して、早く小さく失敗する 19 AWS Startup Tech Meetup 福岡 #2 ~ いくぜ!サーバーレス! ~ #AWSStartup
うまく行った改善は、Next SaaSの種 • 自社でニーズのある改善は、他所でもニーズがあるかもしれない • 疎結合なシステム構成を維持することで、 作ったシステムをas a service化する •
SaaS化する際にも、AWSは無限に使い倒そう ◦ AWS Amplify (Cognito, Amplify SDK, Amplify Studio, etc..) ◦ AppSync, API Gateway, Lambda, DynamoDB, ◦ AppRunner, Fargate, ECS, etc 20 AWS Startup Tech Meetup 福岡 #2 ~ いくぜ!サーバーレス! ~ #AWSStartup
Stripe Appsの例: kintoneとStripeで顧客データ連携 21 AWS Startup Tech Meetup 福岡 #2
~ いくぜ!サーバーレス! ~ #AWSStartup
サブスクリプションシステムからDXをはじめよう • 決済系SaaSを活用して、サブスクリプションの組み込みを効率的に ◦ 効率化した分、 「契約し続けてもらうための施策」を決済方面からもトライしよう • Webhookを活用して、「顧客や契約の状態変化」へ システムや社員がスムーズな対応ができる環境を目指そう •
成功した施策や企画を抽象化して、 Stripe Appsなどで新しいas a Service化を目指そう 22 AWS Startup Tech Meetup 福岡 #2 ~ いくぜ!サーバーレス! ~ #AWSStartup