$30 off During Our Annual Pro Sale. View Details »
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
ecnight-webpay
Search
Kengo Hamasaki
November 17, 2014
Technology
3
1.6k
ecnight-webpay
ECにおける決済のフローで知っておきたいこと at EC Night #1
http://ec-night.doorkeeper.jp/events/16355
Kengo Hamasaki
November 17, 2014
Tweet
Share
More Decks by Kengo Hamasaki
See All by Kengo Hamasaki
Running JavaScript within Ruby
hmsk
5
1.6k
jest-matcher-vue-test-utils
hmsk
1
1.2k
Other Decks in Technology
See All in Technology
New Relic 1 年生の振り返りと Cloud Cost Intelligence について #NRUG
play_inc
0
230
AI駆動開発ライフサイクル(AI-DLC)の始め方
ryansbcho79
0
160
2025-12-18_AI駆動開発推進プロジェクト運営について / AIDD-Promotion project management
yayoi_dd
0
160
オープンソースKeycloakのMCP認可サーバの仕様の対応状況 / 20251219 OpenID BizDay #18 LT Keycloak
oidfj
0
170
_第4回__AIxIoTビジネス共創ラボ紹介資料_20251203.pdf
iotcomjpadmin
0
130
2025年のデザインシステムとAI 活用を振り返る
leveragestech
0
190
日本Rubyの会: これまでとこれから
snoozer05
PRO
6
230
"人"が頑張るAI駆動開発
yokomachi
1
130
AWSの新機能をフル活用した「re:Inventエージェント」開発秘話
minorun365
2
440
モダンデータスタックの理想と現実の間で~1.3億人Vポイントデータ基盤の現在地とこれから~
taromatsui_cccmkhd
2
260
AWS運用を効率化する!AWS Organizationsを軸にした一元管理の実践/nikkei-tech-talk-202512
nikkei_engineer_recruiting
0
170
松尾研LLM講座2025 応用編Day3「軽量化」 講義資料
aratako
4
3k
Featured
See All Featured
Measuring & Analyzing Core Web Vitals
bluesmoon
9
710
The Invisible Side of Design
smashingmag
302
51k
How to Talk to Developers About Accessibility
jct
1
85
What does AI have to do with Human Rights?
axbom
PRO
0
1.9k
A designer walks into a library…
pauljervisheath
210
24k
Neural Spatial Audio Processing for Sound Field Analysis and Control
skoyamalab
0
130
Have SEOs Ruined the Internet? - User Awareness of SEO in 2025
akashhashmi
0
190
Dominate Local Search Results - an insider guide to GBP, reviews, and Local SEO
greggifford
PRO
0
17
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
286
14k
Become a Pro
speakerdeck
PRO
31
5.7k
KATA
mclloyd
PRO
33
15k
Introduction to Domain-Driven Design and Collaborative software design
baasie
1
510
Transcript
&$ʹ͓͚ΔܾࡁͷϑϩʔͰ ͓͖͍ͬͯͨ͜ͱ EC Night #1 http://ec-night.doorkeeper.jp/events/16355 @hmsk from WebPay
Me @hmsk / Kengo Hamasaki VP Product Development at WebPay
Living in CA, USA
WebPay require 'webpay' webpay = WebPay.new('test_secret_eHn4TTgsGguBcW764a2KA8Yd') webpay.charge.create( currency: ‘jpy’, amount:
400, card: {number: ‘4242-4242-4242-4242’, exp_month: 11, exp_year: 2014, cvc: ‘123’, name: ‘KENGO HAMASAKI’} ) https://webpay.jp
=> #<WebPay::ChargeResponse id: "ch_70U72DaDGbzE492" object: "charge" livemode: false amount: 400
card: #<WebPay::CardResponse> created: 1416216426 currency: "jpy" paid: true captured: true refunded: false amount_refunded: 0 customer: nil recursion: nil shop: nil description: nil failure_message: nil expire_time: nil fees: [#<WebPay::ChargeFeeResponse>]
Talking about… wಛఆऔҾ๏ͱ$UP$ w&$ʹ͓͚Δܾࡁ w8FC1BZͱ&$ w&$αʔϏεʹ͓͚Δ"QQMF1BZར༻
Talking about… wಛఆऔҾ๏ͱ$UP$ w&$ʹ͓͚Δܾࡁ w8FC1BZͱ&$ w&$αʔϏεʹ͓͚Δ"QQMF1BZར༻
Talking about… w&$ʹ͓͚ΔܾࡁͷϑϩʔͰ͓͖ͬͯ ͍ͨ͜ͱ
&$ʹ͓͚Δ ܾࡁͷϑϩʔ
ܾࡁใΛ ೖྗ͢Δ ! ֬ఆͯ͠ ϨδʹਐΉ " ߪೖ༰Λ ֬ೝ͢Δ # ྃ͠
ܾࡁ͢Δ $
֬ఆͯ͠ ϨδʹਐΉ ܾࡁใΛ ೖྗ͢Δ ߪೖ༰Λ ֬ೝ͢Δ ߪೖΛ ྃ͢Δ ! "
# $ http://www.amazon.co.jp/gp/cart/view.html
֬ఆͯ͠ ϨδʹਐΉ ܾࡁใΛ ೖྗ͢Δ ߪೖ༰Λ ֬ೝ͢Δ ߪೖΛ ྃ͢Δ ! "
# $ https://www.amazon.co.jp/gp/buy/spc/handlers/display.html
֬ఆͯ͠ ϨδʹਐΉ ܾࡁใΛ ೖྗ͢Δ ߪೖ༰Λ ֬ೝ͢Δ ߪೖΛ ྃ͢Δ ! "
# $ https://www.amazon.co.jp/gp/buy/spc/handlers/display.html
֬ఆͯ͠ ϨδʹਐΉ ܾࡁใΛ ೖྗ͢Δ ߪೖ༰Λ ֬ೝ͢Δ ߪೖΛ ྃ͢Δ ! "
# $ %
ܾࡁใΛ ೖྗ͢Δ ! ֬ఆͯ͠ ϨδʹਐΉ " ߪೖ༰Λ ֬ೝ͢Δ # ߪೖΛ
ྃ͢Δ $
ܾࡁใΛ ೖྗ͢Δ ! ֬ఆͯ͠ ϨδʹਐΉ " ߪೖ༰Λ ֬ೝ͢Δ # ߪೖΛ
ྃ͢Δ $
ܾࡁใΛ ೖྗ͢Δ ! ߪೖ༰Λ ֬ೝ͢Δ # ߪೖΛ ྃ͢Δ $
ϑϩʔΛݟ͢ ηΩϡϦςΟΛݟ͢ ઌΛݟਾ͑Δ
ϑϩʔΛݟ͢
ܾࡁใΛ ೖྗ͢Δ ! ߪೖ༰Λ ֬ೝ͢Δ # ߪೖΛ ྃ͢Δ $ ༗ޮͳΧʔυ͕
ೖྗ͞Εͨʁ
ܾࡁใΛ ೖྗ͢Δ ! ߪೖ༰Λ ֬ೝ͢Δ # ߪೖΛ ྃ͢Δ $ Χʔυͷใʹ
w ଧͪؒҧ͍ʁ w ଞͷΧʔυʁ ༗ޮͳΧʔυ͕ ೖྗ͞Εͨʁ & '
ܾࡁใΛ ೖྗ͢Δ ! ߪೖ༰Λ ֬ೝ͢Δ # ߪೖΛ ྃ͢Δ $ Χʔυͷใʹ
w ଧͪؒҧ͍ʁ w ଞͷΧʔυʁ ༗ޮͳΧʔυ͕ ೖྗ͞Εͨʁ ࢦఆֹۚͰ ܾࡁͰ͖ͨʁ & '
ܾࡁใΛ ೖྗ͢Δ ! ߪೖ༰Λ ֬ೝ͢Δ # ߪೖΛ ྃ͢Δ $ Χʔυͷใʹ
w ଧͪؒҧ͍ʁ w ଞͷΧʔυʁ ༗ޮͳΧʔυ͕ ೖྗ͞Εͨʁ ࢦఆֹۚͰ ܾࡁͰ͖ͨʁ Χʔυͷঢ়ଶʹ % & & '
ܾࡁใΛ ೖྗ͢Δ ! ߪೖ༰Λ ֬ೝ͢Δ # ߪೖΛ ྃ͢Δ $ Χʔυͷใʹ
w ଧͪؒҧ͍ʁ w ଞͷΧʔυʁ ༗ޮͳΧʔυ͕ ೖྗ͞Εͨʁ ࢦఆֹۚͰ ܾࡁͰ͖ͨʁ Χʔυͷঢ়ଶʹ % & & ' w ϑΥʔϜͷೖྗ͕ਏ͍ʜ w Χʔυखݩʹͳͯ͘ਏ͍ʜ (
ܾࡁใΛ ೖྗ͢Δ ! ߪೖ༰Λ ֬ೝ͢Δ # ߪೖΛ ྃ͢Δ $ Χʔυͷใʹ
w ଧͪؒҧ͍ʁ w ଞͷΧʔυʁ ༗ޮͳΧʔυ͕ ೖྗ͞Εͨʁ ࢦఆֹۚͰ ܾࡁͰ͖ͨʁ Χʔυͷঢ়ଶʹ % & & ' w ϑΥʔϜͷೖྗ͕ਏ͍ʜ w Χʔυखݩʹͳͯ͘ਏ͍ʜ w ϖʔδભҠଟͯ͘ਏ͍ʜ w Χʔυձࣾʹిਏ͍ʜ w ଞͷΧʔυͳͯ͘ਏ͍ʜ ( (
ܾࡁͷΈΛ͏
Ծച্ wΧʔυͷ༩৴ΛࢦఆֹۚͰ֬อ͢Δ wʮ͜ͷֹۚͰܾࡁͰ͖·͔͢ʁʯ w͋ͱͰຊܾࡁʢ࣮ച্ʣ w͋ͱͰഁغ
ܾࡁใΛ ೖྗ͢Δ ! ߪೖ༰Λ ֬ೝ͢Δ # ߪೖΛ ྃ͢Δ $ Χʔυͷใʹ
w ଧͪؒҧ͍ʁ w ଞͷΧʔυʁ ༗ޮͳΧʔυ͕ ೖྗ͞Εͨʁ ࢦఆֹۚͰ ܾࡁͰ͖ͨʁ Χʔυͷঢ়ଶʹ % & & ' w ϑΥʔϜͷೖྗ͕ਏ͍ʜ w Χʔυखݩʹͳͯ͘ਏ͍ʜ w ϖʔδભҠଟͯ͘ਏ͍ʜ w Χʔυձࣾʹిਏ͍ʜ w ଞͷΧʔυͳͯ͘ਏ͍ʜ ( (
ܾࡁใΛ ೖྗ͢Δ ! ߪೖ༰Λ ֬ೝ͢Δ # ߪೖΛ ྃ͢Δ $ Χʔυͷใ
͘͠ঢ়ଶʹ w ଧͪؒҧ͍ʁ w ଞͷΧʔυʁ ͜ͷΧʔυͰ 999ԁԾച্ ࣮ച্Խ͢Δ Χʔυͷঢ়ଶʹ % & & ' w ϑΥʔϜͷೖྗ͕ਏ͍ʜ w Χʔυखݩʹͳͯ͘ਏ͍ʜ w ϖʔδભҠଟͯ͘ਏ͍ʜ w Χʔυձࣾʹిਏ͍ʜ w ଞͷΧʔυͳͯ͘ਏ͍ʜ ( (
ܾࡁใΛ ೖྗ͢Δ ! ߪೖ༰Λ ֬ೝ͢Δ # ߪೖΛ ྃ͢Δ $ Χʔυͷใ
͘͠ঢ়ଶʹ w ଧͪؒҧ͍ʁ w ଞͷΧʔυʁ ͜ͷΧʔυͰ 999ԁԾച্ & ' w ϑΥʔϜͷೖྗ͕ਏ͍ʜ w Χʔυखݩʹͳͯ͘ਏ͍ʜ ( ࣮ച্Խ͢Δ
Ծച্ wΧʔυใֹۚ֬ఆͰઌʹܾࡁՄೳੑ Λ֬ೝ͢Δ wߪೖ͕֬ఆͱͳͬͨΒ࣮ച্Խ͢Δ wͨ͠Β͋ͱͰഁغ͢Δ
WebPay require 'webpay' webpay = WebPay.new('test_secret_eHn4TTgsGguBcW764a2KA8Yd') webpay.charge.create( currency: ‘jpy’, amount:
400, + capture: false, card: {number: ‘4242-4242-4242-4242’, exp_month: 11, exp_year: 2014, cvc: ‘123’, name: ‘KENGO HAMASAKI’} )
ܾࡁใΛ ೖྗ͢Δ ! ߪೖ༰Λ ֬ೝ͢Δ # ߪೖΛ ྃ͢Δ $ Χʔυͷใ
͘͠ঢ়ଶʹ w ଧͪؒҧ͍ʁ w ଞͷΧʔυʁ ͜ͷΧʔυͰ 999ԁԾച্ & ' w ϑΥʔϜͷೖྗ͕ਏ͍ʜ w Χʔυखݩʹͳͯ͘ਏ͍ʜ ( ࣮ച্Խ͢Δ
ܾࡁใΛ ೖྗ͢Δ ! ߪೖ༰Λ ֬ೝ͢Δ # ߪೖΛ ྃ͢Δ $ Χʔυͷใ
͘͠ঢ়ଶʹ w ଧͪؒҧ͍ʁ w ଞͷΧʔυʁ ͜ͷΧʔυͰ 999ԁԾച্ & ' w ϑΥʔϜͷೖྗ͕ਏ͍ʜ w Χʔυखݩʹͳͯ͘ਏ͍ʜ ( ࣮ച্Խ͢Δ
ΔՄೳੑΛݮΒ͢
ܾࡁใͷೖྗ w&$͞Μͷͷݟͤॴ wྫ͑ʜ wաڈͷߪೖ࣌ʹอଘͯ͋͠Δ wଞͷը໘Ͱطʹొ͓ͤͯ͘͞ wDBSEJPͳͲೖྗΞγετ
https://www.card.io/
ܾࡁใΛ ೖྗ͢Δ ! ߪೖ༰Λ ֬ೝ͢Δ # ߪೖΛ ྃ͢Δ $ Χʔυͷใ
͘͠ঢ়ଶʹ w ଧͪؒҧ͍ʁ w ଞͷΧʔυʁ ͜ͷΧʔυͰ 999ԁԾച্ & ' w ϑΥʔϜͷೖྗ͕ਏ͍ w Χʔυखݩʹͳͯ͘ਏ͍ ( ࣮ച্Խ͢Δ
ηΩϡϦςΟΛݟ͢
ܾࡁใΛ ೖྗ͢Δ ! ߪೖ༰Λ ֬ೝ͢Δ # ߪೖΛ ྃ͢Δ $
ܾࡁใΛ ೖྗ͢Δ ! ߪೖ༰Λ ֬ೝ͢Δ # ߪೖΛ ྃ͢Δ $ )
ܾࡁձࣾ * όοΫΤϯυ ! !
ܾࡁใΛ ೖྗ͢Δ ! ߪೖ༰Λ ֬ೝ͢Δ # ߪೖΛ ྃ͢Δ $ )
ܾࡁձࣾ * όοΫΤϯυ ! ! * όοΫΤϯυ !
ܾࡁใΛ ೖྗ͢Δ ! ߪೖ༰Λ ֬ೝ͢Δ # ߪೖΛ ྃ͢Δ $ )
ܾࡁձࣾ * όοΫΤϯυ ! ! * όοΫΤϯυ !
ସτʔΫϯ wΧʔυใΛସ͢Δจࣈྻ wΫϥΠΞϯταΠυͱܾࡁձࣾͰ௨৴ w࠶ར༻ՄೳʹͳΔͷ͋Δ
ܾࡁใΛ ೖྗ͢Δ ! ߪೖ༰Λ ֬ೝ͢Δ # ߪೖΛ ྃ͢Δ $ )
ܾࡁձࣾ * όοΫΤϯυ ! ! * όοΫΤϯυ !
ܾࡁใΛ ೖྗ͢Δ ! ߪೖ༰Λ ֬ೝ͢Δ # ߪೖΛ ྃ͢Δ $ )
ܾࡁձࣾ * όοΫΤϯυ ! * όοΫΤϯυ + + + +
ସτʔΫϯ wόοΫΤϯυͰͷอଘɺॲཧɺૹΛ ճආͰ͖Δ wܾࡁձࣾηΩϡϦςΟج४ͷ४ڌͰ ୲อ
WebPay <script type="text/javascript" src="https://js.webpay.jp/v1/"></script> WebPay.setPublishableKey("test_public_gVvaHW5nseyIfjtaO6bN36vr"); WebPay.createToken( convert_card_parameters($(card_form)), , webpayResponseHandler);
WebPay require 'webpay' webpay = WebPay.new('test_secret_eHn4TTgsGguBcW764a2KA8Yd') webpay.charge.create( currency: ‘jpy’, amount:
400, card: + tok_u7fWx6xObdff - {number: ‘4242-4242-4242-4242’, - exp_month: 11, - exp_year: 2014, - cvc: ‘123’, - name: ‘KENGO HAMASAKI’} )
ઌΛݟਾ͑Δ
http://www.apple.com/apple-pay/
"QQMF1BZ w1BTTCPPLʹ݁ͼ͚ͭͨΧʔυΛར༻ wܾࡁ·Ͱ࠷ͷϑϩʔ wସτʔΫϯ4FDVSF &MFNFOU5PVDI *%ʹΑΔηΩϡϦςΟ wਅՁzର໘Ͱͳ͘Σϒͷܾࡁʹ ͑ͯɺطଘͷܾࡁήʔτΣΠͰରԠ Ͱ͖Δz͜ͱ
https://stripe.com/apple-pay
ܾࡁใΛ ೖྗ͢Δ ! ߪೖ༰Λ ֬ೝ͢Δ # ߪೖΛ ྃ͢Δ $ Χʔυͷใʹ
w ଧͪؒҧ͍ʁ w ଞͷΧʔυʁ ༗ޮͳΧʔυ͕ ೖྗ͞Εͨʁ ࢦఆֹۚͰ ܾࡁͰ͖ͨʁ Χʔυͷঢ়ଶʹ % & & ' w ϑΥʔϜͷೖྗ͕ਏ͍ʜ w Χʔυखݩʹͳͯ͘ਏ͍ʜ w ϖʔδભҠଟͯ͘ਏ͍ʜ w Χʔυձࣾʹిਏ͍ʜ w ଞͷΧʔυͳͯ͘ਏ͍ʜ ( (
ߪೖ༰Λ֬ೝͭͭ͠ ΧʔυΛબ͢Δ ߪೖΛ ྃ͢Δ $ Χʔυͷঢ়ଶʹ w ଞͷΧʔυʁ &
ܾࡁใΛ ೖྗ͢Δ ! ߪೖ༰Λ ֬ೝ͢Δ # ߪೖΛ ྃ͢Δ $ )
ܾࡁձࣾ * όοΫΤϯυ ! ! * όοΫΤϯυ !
ߪೖ༰Λ֬ೝͭͭ͠ ΧʔυΛબ͢Δ ߪೖΛ ྃ͢Δ $ ) ܾࡁձࣾ * όοΫΤϯυ -
-
ߪೖ༰Λ֬ೝͭͭ͠ ΧʔυΛબ͢Δ ߪೖΛ ྃ͢Δ $ ) ܾࡁձࣾ * όοΫΤϯυ -
- Χʔυϒϥϯυ Χʔυൃߦऀ - - ! +
Apple Pay on WebPay wઈࢍٕज़ݕূத wಈ࡞͢Δͱ͜Ζ·Ͱ֬ೝ wࠃͰ͑ΔΑ͏ʹ͢Δಈ͖͕ඞཁ w&$αʔϏεӡӦऀͷօ͞Μʹಧ͚ΒΕ ΔΑ͏ؤுΓ·͢
https://rebuild.fm/65
Conclusion wԾച্Λ׆༻ͯ͠ϑϩʔΛ࠷దԽ͠Α͏ wΧʔυใͷܦ࿏Λؾʹ͠Α͏ w"QQMF1BZૣ͍͍ͨ͘
Conclusion w8FC1BZ&$αΠτͷܾࡁपΓͷվળ Λ͓ख͍͠·͢