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
payjp-anti-pattern
Search
Takuya Nishio
June 19, 2018
Technology
0
100
payjp-anti-pattern
Takuya Nishio
June 19, 2018
Tweet
Share
More Decks by Takuya Nishio
See All by Takuya Nishio
8年以上RailsのWebサービスをメンテしてわかったこと
webuilder240
0
67
スタートアップでどのようにAutifyを活用しているか
webuilder240
0
240
WebComponentsで フレームワークを1ページに共存させる
webuilder240
0
520
Other Decks in Technology
See All in Technology
新機能VPCリソースエンドポイント機能検証から得られた考察
duelist2020jp
0
230
APIとはなにか
mikanichinose
0
110
[トレノケ雲の会 mod.13] 3回目のre:Inventで気づいたこと -CloudOperationsを添えて-
shintaro_fukatsu
0
110
watsonx.ai Dojo #5 ファインチューニングとInstructLAB
oniak3ibm
PRO
0
190
Oracle Cloudの生成AIサービスって実際どこまで使えるの? エンジニア目線で試してみた
minorun365
PRO
4
300
TSKaigi 2024 の登壇から広がったコミュニティ活動について
tsukuha
0
170
JVM(JavaVM)の性能分析者観点で探るInstanaの可能性
instanautsjp
0
120
事業貢献を考えるための技術改善の目標設計と改善実績 / Targeted design of technical improvements to consider business contribution and improvement performance
oomatomo
0
150
サイバー攻撃を想定したセキュリティガイドライン 策定とASM及びCNAPPの活用方法
syoshie
3
1.4k
Amazon Kendra GenAI Index 登場でどう変わる? 評価から学ぶ最適なRAG構成
naoki_0531
0
130
いまからでも遅くないコンテナ座学
nomu
0
130
Oracle Cloud Infrastructure:2024年12月度サービス・アップデート
oracle4engineer
PRO
1
270
Featured
See All Featured
Optimising Largest Contentful Paint
csswizardry
33
3k
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
3
170
Gamification - CAS2011
davidbonilla
80
5.1k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
45
2.2k
How to train your dragon (web standard)
notwaldorf
88
5.7k
Producing Creativity
orderedlist
PRO
342
39k
Raft: Consensus for Rubyists
vanstee
137
6.7k
Practical Orchestrator
shlominoach
186
10k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
330
21k
Thoughts on Productivity
jonyablonski
68
4.4k
Making the Leap to Tech Lead
cromwellryan
133
9k
A Modern Web Designer's Workflow
chriscoyier
693
190k
Transcript
ඌ (@webuilder240) 2018.6.19 Copyright © OSIRO,Ltd. All Rights Reserved.
PAY.JP Ξϯνύλʔϯ
Copyright © OSIRO,Ltd. All Rights Reserved. ຊΛܳज़จԽେࠃʹ͢Δʂ
Ͳ͜ͷͩΕʁ • Takuya Nishio (@webuilder240) • ΦγϩגࣜձࣾͰRubyΤϯδχΞ͍ͬͯ·͢ • ๏ਓԽ20171݄ʢϗϠϗϠͷελʔτΞοϓʂʂʣ •
PAY.JPαʔϏε։࢝ॳظ͔Βར༻ʢ2015/12ʣ • ఆֹ՝ۚΛϔϏʔʹ͍ͬͯ·͢ • github: webuilder240
PAY.JPΛར༻͢Δʹ͋ͨͬͯ ͷٕज़తͳΞϯνύλʔϯΛ ͍͔ͭ͘հ͠·͢ɻ
1.WebhookΛϛογϣϯΫϦ ςΟΧϧͳ༻్Ͱར༻͢Δ
1. ϛογϣϯΫϦςΟΧϧͳ༻్Ͱ༻͍͚ͯ͠ͳ͍ཧ༝ • ͦͦʮWebhookΛϛογϣϯΫϦςΟΧ ϧͳ෦Ͱར༻ਪ͠ͳ͍ʯͱPAY͞Μ͕ද ໌͍ͯ͠Δɻ • https://pay.jp/docs/webhook • ཧ༝Webhookͷଟॏૹ৴ૹ৴ະୡى͜
ΓಘΔͨΊɻ
1. ରࡦ • Event APIΛར༻ͯ͠ɺPAY.JP͔Βૹ৴ͯ͠ Β͏ͷͰͳ͘ɺར༻͢ΔΞϓϦέʔγϣϯ ͔ΒऔಘͰ͖ΔΑ͏ʹ͢Δɻ • Ͳ͏ͯ͠ར༻͢Δ߹ɺଟॏૹ৴ૹ৴ະ ୡ͕͋ͬͯͳ͍Α͏ʹ࣮͢Δɻ
2. ఆֹܾࡁͷεςʔλεΛαʔ Ϗεͷܧଓঢ়ଶͱ͢Δɻ
2. ఆֹܾࡁͷεςʔλεΛαʔϏεͷར༻ঢ়ଶͱ͍͚ͯ͠ͳ͍ཧ༝ • PAY.JPͷఆֹ՝ۚ՝ۚͷௐʹʮτϥΠΞϧʯΛઃఆ ͯ͠ௐ͢Δͷ͕ݱঢ়ͷํ๏ɻ • ՝ۚͷௐͷͨΊʹʮτϥΠΞϧʯʹ͍ͯ͠ΔͷͰ͋ͬͯɺ ݫີʹαʔϏε্ͰʮτϥΠΞϧʯͱͯ͠ѻ͍ͨ͘ͳ͍࣌ ͕͋Δɻ •
աڈʹ͍ͨ͠߹ɺఆֹ՝ۚΛআ => ఆֹ՝ۚΛ࡞ ͯ͠ɺʮτϥΠΞϧʯͰઃఆ͍ͨ͠·ͰͰ࠶࡞͢Δɻ
2. ରࡦ • αʔϏεͷར༻ঢ়گΛఆֹ՝ۚͷঢ়ଶͱผ ʹอଘ͓ͯ͘͠ • τϥΠΞϧͰௐ͢Δӡ༻͕ਏ͍ͳΒɺఆֹ ՝ۚ͏͖Ͱͳ͍ɻ • ظؒΛ؆୯ʹௐͰ͖ΔΑ͏ʹWrapperΛ༻
ҙ͓ͯ͘͠ͱศར
3. ఆֹ՝ۚͷ࣍ճࢧͷλ ΠϜκʔϯΛҙࣝ͠ͳ͍
3. ͋Δ… • ͳΜ͔ܾࡁ͓͔͘͠ͳ͍ʁʁʁ • Το…
3. ࣮ࡍͷSubscriptionߋ৽Πϕϯτ
3. ֬ೝͨ݁͠Ռ ʂʁ
3. ͳͥζϨͨͷ͔ • PAY.JPͷఆֹ՝ۚͷ࣍ճࢧ͍༧ఆUTC Λج४ʹࢉग़͍ͯ͠ΔͨΊൃੜ͍ͯ͠Δɻ • ΄ͱΜͲͷέʔεͰͳ͍͕ɺζϨΔ έʔε͕͋Δɻ • ೝ͍ࣝͯ͠Δͷ
JST 1 0:00ʙ9:59ͷؒ
3. ରࡦ • 1ͷJST 0:00 - 9:59ͷؒͰܾࡁΛආ͚Δ • 1ͷ10:00Ҏ߱Ͱܾࡁ͞ΕΔΑ͏ʹτϥΠ ΞϧΛར༻ͯ͠ௐ͢Δɻ
• ຊԿ͠ͳ͍͍ͯ͘Α͏ʹͯ͠΄͠ ͍…
·ͱΊ • WebhookΛΫϦςΟΧϧͳ෦Ͱར༻͠ͳ͍Ͱ ར༻ଆ͔ΒEventΛऔಘ͠Α͏ • αʔϏεͷར༻ঢ়گΛఆֹ՝ۚͷঢ়ଶͱผʹอ ଘ͓ͯ͜͠͏ • ఆֹ՝ۚͷαΠΫϧ͕ζϨͯࠔΔ߹ɺJSTͷ 0:00
ʙ 9:59Ͱܾࡁ͠ͳ͍Α͏ʹௐ͢Δɻ
͝ਗ਼ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠ɻ ࠙ձͰ͓͠·͠ΐ͏ʂ