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
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
Hidetaka Okamoto (Stripe)
November 17, 2022
Technology
0
180
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
310
収益を高めるための Stripeダッシュボード活用術 / jp_stripes_online_7
stripehideokamoto
0
390
No-code SaaS and Full Site Editing / wcasia2023
stripehideokamoto
0
270
コア機能開発に集中するための Stripe Checkout活用法 / jp_stripes_deep_dive_202301
stripehideokamoto
0
520
State of Checkout 2022から見た オンライン決済フローの最適化/jp-stripes-miyzaki-202301
stripehideokamoto
0
210
サブスクリプション決済入門 Stripeでの実装方法と、要件定義時のポイント/okta-stripe-202301
stripehideokamoto
0
210
ノーコード・ローコードツールで サブスク運用を効率化する方法 / JP_Stripes_Osaka_202301
stripehideokamoto
0
150
ビジネスユーザを巻込む Stripeダッシュボード活用法 / jp_stripes_deepdive-202212
stripehideokamoto
0
340
サブスクリプション決済入門 Stripeでの実装方法と、要件定義時のポイント/jp_stripes_okayama_vol3
stripehideokamoto
9
5.9k
Other Decks in Technology
See All in Technology
NewSQL_ ストレージ分離と分散合意を用いたスケーラブルアーキテクチャ
hacomono
PRO
4
410
バクラク最古参プロダクトで重ねた技術投資を振り返る
ypresto
0
190
Zeal of the Convert: Taming Shai-Hulud with AI
ramimac
0
150
スケールアップ企業でQA組織が機能し続けるための組織設計と仕組み〜ボトムアップとトップダウンを両輪としたアプローチ〜
tarappo
1
220
フロントエンド刷新 4年間の軌跡
yotahada3
0
510
進化するBits AI SREと私と組織
nulabinc
PRO
1
260
エンジニアリングマネージャーの仕事
yuheinakasaka
0
120
VPCエンドポイント意外とお金かかるなぁ。せや、共有したろ!
tommy0124
1
710
LINEヤフーにおけるAIOpsの現在地
lycorptech_jp
PRO
1
390
visionOS 開発向けの MCP / Skills をつくり続けることで XR の探究と学習を最大化
karad
1
1k
20260321_エンベディングってなに?RAGってなに?エンベディングの説明とGemini Embedding 2 の紹介
tsho
0
120
2026年もソフトウェアサプライチェーンのリスクに立ち向かうために / Product Security Square #3
flatt_security
1
690
Featured
See All Featured
Discover your Explorer Soul
emna__ayadi
2
1.1k
Neural Spatial Audio Processing for Sound Field Analysis and Control
skoyamalab
0
220
Evolving SEO for Evolving Search Engines
ryanjones
0
160
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
Lightning Talk: Beautiful Slides for Beginners
inesmontani
PRO
1
490
Google's AI Overviews - The New Search
badams
0
940
Information Architects: The Missing Link in Design Systems
soysaucechin
0
830
Reality Check: Gamification 10 Years Later
codingconduct
0
2.1k
Self-Hosted WebAssembly Runtime for Runtime-Neutral Checkpoint/Restore in Edge–Cloud Continuum
chikuwait
0
400
Hiding What from Whom? A Critical Review of the History of Programming languages for Music
tomoyanonymous
2
560
Designing Experiences People Love
moore
143
24k
Heart Work Chapter 1 - Part 1
lfama
PRO
5
35k
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