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 Connect を使ったサービス構築の裏側
Search
Takayuki
April 20, 2020
Programming
630
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Stripe Connect を使ったサービス構築の裏側
Stripe Connect を使ったサービス構築の裏側
Takayuki
April 20, 2020
More Decks by Takayuki
See All by Takayuki
Build an MCP Server in Laravel to Enable “AI-Operated” Recruiting Tools(English)
bumptakayuki
0
41
Laravel Applications with DDD x Clean Architecture x Vibe Coding
bumptakayuki
1
130
Laravel × Clean Architecture
bumptakayuki
1
570
エンジニアのキャリア論
bumptakayuki
1
300
地方カンファレンス主催のススメ
bumptakayuki
1
270
Laravelで敢えて試す脆弱性のある書き方
bumptakayuki
2
1.4k
地方でのPHPエンジニア採用って実際どうなの?
bumptakayuki
0
810
沖縄観光、名物を一挙紹介!
bumptakayuki
2
810
Laravel ShiftでLaravelのバージョンアップしてみた話
bumptakayuki
1
3.5k
Other Decks in Programming
See All in Programming
SREは、MCPとSRE Agentをこう使え!
kazumax55
0
150
【やさしく解説 設計編・中級 #1】一つの車に、運転手は一人 ~ある倉庫システムの事例から~
panda728
PRO
0
180
Apache Hive: そしてCloud Native Lakehouseへ
okumin
1
130
AI がコードを書く時代における新卒エンジニアの仕事風景 (2026) / New Graduate Engineers in the Era of AI Coding (2026)
sushichan044
0
220
どこまでゆるくて許されるのか
tk3fftk
0
490
コーディングルールの鮮度を保ちたい for SRE NEXT 2026 / keep-fresh-go-internal-conventions-sre-next-2026
handlename
0
140
yield再入門 #phpcon
o0h
PRO
0
380
そのテスト、説明できますか?~LWテスト戦略FW~のご紹介
nakahara
0
210
OSINT for SRE: 学術論文とポストモーテムから探る システム障害の共通パターン / SRE NEXT 2026
tomoyk
1
3.7k
AI駆動開発を妨げる技術的負債の解消アプローチ / ai-refactoring-approach
minodriven
17
9.1k
Performance Engineering for Everyone
elenatanasoiu
0
270
AI時代の仕事技芸論〜ソフトウェア開発で「遊ぶように働く」職人的熟達のすすめ(スクフェス仙台 2026バージョン)
kuranuki
0
640
Featured
See All Featured
Data-driven link building: lessons from a $708K investment (BrightonSEO talk)
szymonslowik
1
1.2k
Fantastic passwords and where to find them - at NoRuKo
philnash
52
3.8k
Bootstrapping a Software Product
garrettdimon
PRO
307
120k
Why Our Code Smells
bkeepers
PRO
340
58k
How to build a perfect <img>
jonoalderson
1
5.8k
Believing is Seeing
oripsolob
1
170
The Pragmatic Product Professional
lauravandoore
37
7.4k
Tips & Tricks on How to Get Your First Job In Tech
honzajavorek
1
590
Navigating the moral maze — ethical principles for Al-driven product design
skipperchong
2
420
A Tale of Four Properties
chriscoyier
163
24k
Prompt Engineering for Job Search
mfonobong
0
380
The AI Revolution Will Not Be Monopolized: How open-source beats economies of scale, even for LLMs
inesmontani
PRO
3
3.6k
Transcript
Stripe Connect ΛͬͨαʔϏε ߏஙͷཪଆ
1 ձࣾհɾࣗݾհ 2 Stripeಋೖʹࢸͬͨഎܠ Agenda 3 Stripe ConnectΛಋೖ͢ΔϝϦοτ 4 ࣮ํ๏ɾಋೖͯ͠Έͯؾ͍ͮͨ͜ͱ
1 ձࣾհɾࣗݾհ
4 ࣗݾհ ◆໊લ ླ ೭(Suzuki Takayuki) ※ಉಉ໊ଟͯ͘ࠔͬͯ·͢ɻɻɻ ◆ࣗݾհ ɾ1990ɺਆಸݝੜ·Εɻ ɾࣾձਓʹͳ͔ͬͯΒɺϓϩάϥϛϯάΛ࢝ΊΔɻ
ɾ2015ʹϑϧεϐʔυʹೖࣾ͠ɺ2017ʹಠཱɻ ɾϑϦʔϥϯεͰϦϞʔτϫʔΫΛͬͨޙʹԭೄͰى ۀ ◆झຯ ίεϓϨɺԻָϥΠϒɺϚϥιϯେձʹग़Δɺٿ؍ઓ JP_StripesԭೄΛӡӦͯ͠·͢ʂ BDD(Ϗʔνۦಈ։ൃ)
Copyright Re:Build.inc All Rights Reserved. ࣗݾհ
Copyright Re:Build.inc All Rights Reserved. 1.ձࣾհ ◆ձ໊ࣾ גࣜձࣾRe:Build ◆ॅॴ ԭೄݝಹࢢٱໜ2-2-2
λΠϜεϏϧ ◆ࣄۀ༰ ɾࣗࣾWEBαʔϏεͷاըɾ։ൃɻ ɾडୗ։ൃ ◆ࣾһ 7໊ ◆ΤϯδχΞͷಇ͖ํ ϦϞʔτϫʔΫՄೳͳࣗ༝ͳಇ͖ํΛਪͯ͠·͢ʂ
2 Stripeಋೖʹࢸͬͨഎܠ
8 ࣗࣾWebαʔϏεͷ։ൃ ɾαʔϏε໊ Tadoru ɾγεςϜ֓ཁ Ϋϥυιʔγϯά ΫϨδοτܾࡁ ͳͲ ɾ͍ͬͯΔٕज़ ݴޠ
: PHP,JavaScript ϑϨʔϜϫʔΫ: laravel5,Nuxt.jsͳͲ
Re:Build اۀͷ୲ऀ͕ ΤʔδΣϯτΛબͿ ΤʔδΣϯτ͕ࣗͷܨ ͕Γͷ͋ΔΤϯδχΞ· ͨνʔϜʹΛ͔͚Δ ࣄͷۭ͖͕͋Δϫʔ Χʔ͕͍Εɺ໘Λߦ ͏ ΤʔδΣϯτ
ࣄલʹ৹੍ࠪ ΤϯδχΞνʔϜ ΤϯδχΞ ϫʔΧʔ ΤʔδΣϯτ اۀ ϏδωεϞσϧ ࠾༻ใु
1 0 ཁ݅ ɾܾࡁΛϓϥοτϑΥʔϜ্Ͱߦ͏ɻ ɾۜߦৼࠐ໘ͳͷͰɺϓϥοτ ϑΥʔϜ্Ͱ͓ۚͷΓऔΓΛ݁ͤ͞ ͍ͨɻ
3 Stripe ConnectΛಋೖ͢ΔϝϦοτ
1 2 Stripe Connectͱ ɾCustomerʢސ٬ʣ: ߪೖऀͰ͋Γ͓ۚΛࢧ͏ํɻӈͷਤ Ͱɻ ɾPlatformʢϓϥοτϑΥʔϜʣ: ͦͷ໊ͷ௨ΓϓϥοτϑΥʔϜΛఏڙ ͢Δํɻӈͷਤͷ੨ɻ
ɾConnected accounts: ϓϥοτϑΥʔϜΛར༻ͯ͠αʔϏε Λఏڙ͠ɺೖۚΛड͚ΔํʢࢠΞΧ ϯτͱݺΕ·͢ʣɻӈͷਤͷϐϯ Ϋɻ ࢀߟɿhttps://qiita.com/y_toku/items/7bfa42793801dfc5415d
1 3 Stripe Connectͱ ΤʔδΣϯτ Tadoru اۀ
1 4 ܾࡁର اۀ ʢCustomerʣ ΤʔδΣϯτ ʢࢠΞΧϯτʣ ʢϓϥοτϑΥʔϜʣ հखྉ Ϛονϯά࣌ͷใु
BtoCϞσϧ
1 5 ϝϦοτ ॊೈͳΧελϚΠζػೳ Connect ͷڧΈ API ɻϓϥοτ ϑΥʔϜͷ࠷దͳΤΫεϖϦΤϯεΛσ βΠϯͰ͖·͢ɻϢʔβొϑϩʔͷΧ
ελϚΠζɺೖۚαΠΫϧͷઃఆɺෳ ࡶͳࢿۚҠಈͷΧελϚΠζॲཧɺ౷߹ ͞ΕͨܦཧϨϙʔςΟϯάػೳɻ ਝʹಋೖͰ͖Δ ϓϥοτϑΥʔϜͷͨΊͷܾࡁΠϯϑ ϥετϥΫνϟߏஙͰɺ͢Ͱʹ͞ Εͨ UI ཁૉΛऔΓೖΕͯɺϩʔϯνΛ εϐʔυΞοϓɺΦϖϨʔγϣϯΛγϯ ϓϧʹͰ͖·͢ɻ άϩʔόϧల։͍͢͠ ੈք 25ΧࠃҎ্ͷചΓखࢧ͍Մ ೳɻϚʔέοτ͝ͱͷݱࢠձࣾ ۜߦ࿈ܞඞཁ͋Γ·ͤΜɻෳࡶͳ ॲཧ Connect ͕Ҿ͖ड͚·͢ɻ 1 2 3 https://stripe.com/connect
4 ࣮ํ๏ɾಋೖͯ͠Έͯؾ͍ͮͨ͜ͱ
ϑϩϯτΤϯυ αʔόαΠυ શମߏ Gitlab CI ϥΠϒϥϦͳͲ Firebase ϥΠϒϥϦͳͲ
શମͷΞʔΩςΫνϟ(̐ͭͷυϝΠϯผ) ϑϩϯτΤϯυ αʔόαΠυ blade MPAߏ ϑϩϯτΤϯυ αʔόαΠυ SPAߏ αʔόαΠυ ϑϩϯτΤϯυ
αʔόαΠυ blade MPAߏ ϫʔΧʔը໘ ΤʔδΣϯτը໘ اۀը໘ SPAߏ ϑϩϯτΤϯυ ӡӦը໘ MPA SPA
1 9 ͔͔ͬͨ ɾλυϥʔը໘(Laravel) - 5͘Β͍ ɾاۀཧը໘(Nuxt.js) - 3͘Β͍
ɾεέδϡʔϧײ ߹ܭ2िؒऑ͘Β͍
2 0 اۀଆͷ࣮༰ ɾ࣮ͨ͠ػೳ - ΫϨδοτΧʔυͷొ - ܾࡁͷ࣮ߦ ɾͬͨϥΠϒϥϦ https://stripe.com/docs/stripe-js/reference
2 1 اۀଆͷ࣮༰
2 2 اۀଆͷ࣮༰
2 3 اۀଆͷ࣮༰
2 4 اۀଆͷ࣮༰
2 5 اۀଆͷ࣮༰
2 6 اۀଆͷ࣮༰
2 7 ΤʔδΣϯτଆͷ࣮༰ ɾ࣮ͨ͠ػೳ - ΞΧϯτใ ※2~3ͷ৹͕ࠪ͋Δ - ޱ࠲ใͷొ ɾͬͨϥΠϒϥϦ
https://github.com/stripe/stripe-php
2 8 ΤʔδΣϯτଆͷ࣮༰
2 9 ৹ࠪͷΠϝʔδ ޱ࠲ใূ໌ॻͷొ ̎ʙ̏Ͱ݁Ռ͕͘Δ
3 0 ΤʔδΣϯτଆͷ࣮༰
3 1 ཧը໘ͷݟ͑ํ
3 2 ࣮Ͱେมͩͬͨ͜ͱ ɾStripeͷࢠΞΧϯτΛ࡞Δࡍʹೖྗ߲͕ଟ͍ ɾຊਓ֬ೝνΣοΫͷεςʔλε֬ೝΛ͢Δඞཁ͕͋Δ - APIΛݺɺঝೝࡁΈ͔৹ࠪத͕Θ͔Δ - webhookͰSlackϝʔϧʹඈ͢Մೳ
3 3 ಋೖͯ͠Έͯؾ͍ͮͨ͜ͱ ϫʔΧʔͱͯ͠ ϩάΠϯ λυϥʔਃ (1िؒఔͰࣄہ ΑΓ৹ࠪ݁ՌΛϝʔ ϧ௨) ৼΓࠐΈޱ࠲ొ
ൃاۀʹ૬ஊ͞ ΕͨҊ݅Λ ϫʔΧʔʹհ STEP1 STEP2 STEP3 STEP4 01 02 03 04 ΤʔδΣϯτͷొϑϩʔ͕͕ͯ͘ଟ͔ͬͨɻɻɻ
3 4 ಋೖͯ͠Έͯؾ͍ͮͨ͜ͱ ΤʔδΣϯτ ޱ࠲ใΛొ͢Δ·Ͱ Ұ෦͚ͩػೳ༻੍ݶΛ͢Δͷ͕ॲ ཧ͕ෳࡶʹͳΓେมͩͬͨ
3 5 ಋೖͯ͠Έͯؾ͍ͮͨ͜ͱ ɾϢʔβͷ్தͰͷ͕ଟ͔ͬͨͷͰɺޙ͔Βޱ࠲ొͯ͠ग़ۚਃ͢Δܗʹ ͢Εྑ͔ͬͨɻ ɾग़ۚਃͷ࣌ϢʔβϞνϕʔγϣϯ্͕͕ΔͷͰɺೖྗͯ͘͠Εͦ͏ ΤʔδΣϯτ ʢࢠΞΧϯτʣ ग़ۚਃ ཧܗ
اۀ ʢCustomerʣ Stripeܾࡁ ૹۚ ΤʔδΣϯτ ʢࢠΞΧϯτʣ հྉΛTadoru ଆͰҰ࣌తʹड ͚औΔ
3 6 ·ͱΊ ɾϓϥοτϑΥʔϜͰखྉΛऔΔϏδωεϞσϧʹ͍͍ͯ Δ ɾϢʔβͷϞνϕʔγϣϯʹΑͬͯɺޱ࠲ใΛొͤ͞Δ λΠϛϯάಋઢؾΛ͚ͭͳ͍ͱϢʔβ͕ΞΫςΟϒʹͳΓ ʹ͍͘ɻ
3 7 ࢀߟจݙ https://qiita.com/y_toku/items/7bfa42793801dfc5415d https://stripe.com/connect