Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
ecnight-webpay
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
Kengo Hamasaki
November 17, 2014
Technology
1.6k
3
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
ecnight-webpay
ECにおける決済のフローで知っておきたいこと at EC Night #1
http://ec-night.doorkeeper.jp/events/16355
Kengo Hamasaki
November 17, 2014
More Decks by Kengo Hamasaki
See All by Kengo Hamasaki
Running JavaScript within Ruby
hmsk
5
3.9k
jest-matcher-vue-test-utils
hmsk
1
1.3k
Other Decks in Technology
See All in Technology
Post AI時代のリファクタリング実践記 / Refactoring in the post AI era
kaminashi
1
250
ウォンテッドリーの最近のプロダクトと技術の紹介
stomk
0
100
Rust で関数型ドメインモデリング
takonda
0
140
実践!Cloud Run ハンズオン!! / Cloud Run handson
y0hgi
2
280
Claude の新機能を、 出た日に触って社内に届けるまで
rfdnxbro
1
180
Active Record Connection Adaptersにおける長年の課題に再び取り組む
yahonda
0
170
Classmethod Company Deck
satoshi7
1
700
Benchmarking Disaggregated Serving on vLLM + Dynamo with a Real Coding-Agent Workload
nttcom
1
190
"優秀な誰か"の下位互換にならないために
yut0naga1_fa
1
1.8k
会社説明資料
persolserverworks
0
9.8k
20261017福岡devIO 「AIは"良いダッシュボード"を作れるか?
jtakeda
0
170
Conditional PED-ANOVA: Hyperparameter Importance in Hierarchical & Dynamic Search Spaces
pfn
PRO
0
140
Featured
See All Featured
Java REST API Framework Comparison - PWX 2021
mraible
34
9.8k
From Legacy to Launchpad: Building Startup-Ready Communities
dugsong
0
360
Amusing Abliteration
ianozsvald
1
350
The Mindset for Success: Future Career Progression
greggifford
PRO
0
540
Joys of Absence: A Defence of Solitary Play
codingconduct
1
550
Tips & Tricks on How to Get Your First Job In Tech
honzajavorek
1
800
Building Experiences: Design Systems, User Experience, and Full Site Editing
marktimemedia
1
630
Site-Speed That Sticks
csswizardry
13
1.6k
Embracing the Ebb and Flow
colly
88
5.2k
What Being in a Rock Band Can Teach Us About Real World SEO
427marketing
0
1.1k
Chasing Engaging Ingredients in Design
codingconduct
0
360
Impact Scores and Hybrid Strategies: The future of link building
tamaranovitovic
0
460
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&$αΠτͷܾࡁपΓͷվળ Λ͓ख͍͠·͢