Upgrade to PRO for Only $50/Year—Limited-Time Offer! 🔥
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
120
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
110
スタートアップでどのようにAutifyを活用しているか
webuilder240
0
280
WebComponentsで フレームワークを1ページに共存させる
webuilder240
0
800
Other Decks in Technology
See All in Technology
Introduction to Sansan, inc / Sansan Global Development Center, Inc.
sansan33
PRO
0
2.9k
Microsoft Agent 365 を 30 分でなんとなく理解する
skmkzyk
1
340
Security Diaries of an Open Source IAM
ahus1
0
120
知っていると得する!Movable Type 9 の新機能を徹底解説
masakah
0
210
eBPFとwaruiBPF
sat
PRO
4
1.9k
ML PM Talk #1 - ML PMの分類に関する考察
lycorptech_jp
PRO
1
550
Data Hubグループ 紹介資料
sansan33
PRO
0
2.3k
世界最速級 memcached 互換サーバー作った
yasukata
0
170
MS Ignite 2025で発表されたFoundry IQをRecap
satodayo
3
240
Databricksによるエージェント構築
taka_aki
1
120
Contract One Engineering Unit 紹介資料
sansan33
PRO
0
9.9k
AI (LLM) を活用する上で必須級のMCPをAmazon Q Developerで学ぼう / 20251127 Ikuma Yamashita
shift_evolve
PRO
2
110
Featured
See All Featured
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
36
6.2k
Fantastic passwords and where to find them - at NoRuKo
philnash
52
3.5k
Building Adaptive Systems
keathley
44
2.9k
[RailsConf 2023] Rails as a piece of cake
palkan
58
6.1k
Six Lessons from altMBA
skipperchong
29
4.1k
Code Review Best Practice
trishagee
73
19k
The World Runs on Bad Software
bkeepers
PRO
72
12k
Building Flexible Design Systems
yeseniaperezcruz
329
39k
Site-Speed That Sticks
csswizardry
13
990
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
46
2.6k
Raft: Consensus for Rubyists
vanstee
140
7.2k
Documentation Writing (for coders)
carmenintech
76
5.2k
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Ͱܾࡁ͠ͳ͍Α͏ʹௐ͢Δɻ
͝ਗ਼ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠ɻ ࠙ձͰ͓͠·͠ΐ͏ʂ