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
ApplePay対応サービスを最速で作る
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
Mamoru Amano
March 13, 2018
Programming
110
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
ApplePay対応サービスを最速で作る
http://eventregist.com/e/JPStripes_Tokyo6
の発表スライドです。
Mamoru Amano
March 13, 2018
More Decks by Mamoru Amano
See All by Mamoru Amano
新規サービス立ち上げ時の仮説検証とチームビルディング
mamoru0217
5
990
フロントエンドの エラー周りで最近知ったこと
mamoru0217
0
190
Wantedly - 管理画面チラ見せ♡ナイト #3 発表資料
mamoru0217
5
11k
Other Decks in Programming
See All in Programming
変わらないものが、変わるものを決める — 意図駆動開発 × イベントソーシング × イミュータブル | What Doesn't Change Decides What Can — IDD × Event Sourcing × Immutability
tomohisa
0
1.1k
PHP Application における Kubernetes 内 gRPC 通信
ganchiku
0
580
20260722_microCMSで考える、AI時代のコンテンツ運用設計
yosh1
0
270
「人を評価する AI」の設計と実装
ryoyanara
0
120
PHPだって関数型したい 〜できること、できないこと〜 / fp-in-php
jsoizo
1
270
AWS DevOps AgentのAzure接続機能を検証して見えた活用法/Use Cases Verified for the AWS DevOps Agent's Azure Connectivity Feature
masakiokuda
1
210
torikago - Ruby::Boxで照らすモジュラモノリスの実行境界
se4weed
1
330
ルールを書いて終わらせないハーネスエンジニアリング
yug1224
4
1.8k
AI時代のPHPer生存戦略 ~「言語、もうなんでもよくない?」に本気で向き合う~
vivion
0
220
壊れたパーサから始める関数型設計と構成的なパーサ #fp_matsuri
raiga0310
2
440
FDEが実現するAI駆動経営の現在地
gonta
2
250
音楽のための関数型プログラミング言語mimiumにおける多段階計算の活用
tomoyanonymous
1
380
Featured
See All Featured
How to Ace a Technical Interview
jacobian
281
24k
We Are The Robots
honzajavorek
0
290
Thoughts on Productivity
jonyablonski
76
5.3k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
128
56k
Leveraging Curiosity to Care for An Aging Population
cassininazir
1
450
Designing for Timeless Needs
cassininazir
1
430
We Have a Design System, Now What?
morganepeng
55
8.2k
Evolving SEO for Evolving Search Engines
ryanjones
0
250
Lessons Learnt from Crawling 1000+ Websites
charlesmeaden
PRO
1
1.5k
A Tale of Four Properties
chriscoyier
163
24k
Building AI with AI
inesmontani
PRO
1
1.1k
Gemini Prompt Engineering: Practical Techniques for Tangible AI Outcomes
mfonobong
2
470
Transcript
+1@4USJQFT5PLZP7PM ఱѮ.BNPSV"NBOP "QQMF1BZରԠαʔϏεΛ ࠷Ͱ࡞ΔͨΊʹͲ͏͢Ε͍͍͔
ϓϩϑΟʔϧ w 8FCΤϯδχΞʢ3BJMT3FBDUʣ!גࣜձࣾΞΧπΩ w ৽نαʔϏε։ൃ w UXJUUFS!NVUBDIJJ
ಥવͰ͕͢
+0:.0 wIUUQTKPZNPIFSPLVBQQDPN w݅ʹϚον͓ͨ͠Ͱ͔͚ϓϥϯΛ ͭఏҊ͢ΔαʔϏε w"QQMF1BZରԠΫϨδοτܾࡁ
ѹత.71
৽نαʔϏε։ൃ w ͜ͷιϦϡʔγϣϯʹ͓ۚΛͬͯ͘ΕΔ͔ʁ w ࣄલʹݕূ͍ͯ͠Δ͕ɺݱ࣮Θ͔Βͳ͍ɻ.71ʹ࣮ࡍʹ͓ۚΛͬ ͯΒ͑Δ͔Ͳ͏͔͕େࣄɻ w ελʔτΞοϓʢ͡Όͳ͍͚ͲʣʹͱͬͯҰ൪وॏͳࢿݯ࣌ؒ w ૉૣ͘ɾָʹ࣮͍ͨ͠
4USJQFͷ͍Ͳ͜Ζʂ
࣭ "QQMF1BZରԠαʔϏεΛ ࠷Ͱ࡞ΔͨΊʹͲ͏͢Ε ͍͍͔
ճ 4USJQFΛ͏
"QQMF1BZ •Touch ID / Face ID Ͱ؆୯ʹܾࡁ͕ߦ͑Δɻ •ϝʔϧΞυϨεͷೖྗͱ͔ෆཁ •Ϙλϯ͕ஔ͍ͯ͋Δͱخ͍͠ɻͦͷαʔϏε͕͖ʹͳΔɻ
1BZNFOU3FRVFTU#VUUPO var stripe = Stripe(gon.stripe_public_key); var paymentRequest = stripe.paymentRequest({ country:
'JP', currency: 'jpy', total: { label: ‘JOYMO ͝ར༻ྉۚ’, amount: 300 } }); var elements = stripe.elements(); var prButton = elements.create('paymentRequestButton', { paymentRequest: paymentRequest, }); paymentRequest.canMakePayment().then(function(result) { if (result) { prButton.mount('#payment-request-button'); } else { document.querySelector(‘.payment-request-button-wrapper') .innerText = ‘͝ར༻ͷͰApple PayΛ͝ར༻͍ͨͩ͘͜ͱग़དྷ·ͤΜɻ'; } }); a͜ΕͰग़Δʂ
1BZNFOU3FRVFTU#VUUPO paymentRequest.on('token', function(e) { var tokenInput = document.getElementById('stripeToken') tokenInput.value =
e.token.id form.submit() }); UPLFOΛಘͨΒϑΥʔϜΛTVCNJU͢Δɻ
"QQMF1BZ·ΘΓͷ w ϩʔΧϧڥͰಈ࡞֬ೝ͢Δ࣌OHSPLΛ͏ɻ w "QQMF1BZར༻ͷͨΊʹɺར༻͢ΔϗετΛొ͢Δඞཁ͕͋Δɻ w ϗετΛຖճొ͢͠ͷ͕গ͠໘ʜ w "QQMF1BZϘλϯ͕දࣔ͞Ε͍ͯͯɺ8FCܾࡁະରԠͰܾࡁͰ͖ͳ͍
߹͕͋Δɻ w ެࣜͷࡌ͍ͬͯΔରԠΧʔυҰཡ࣮֬ʹ͑Δ͚ͣͩͲɺͦΕҎ֎ ͷΧʔυ͕͑Δ͔Ͳ͏͔͕Θ͔ΒΜ
͍͞͝ʹ w ࣮ͪΖΜɺຊ൪ར༻৹ࠪ΄΅ϊʔλΠϜͳͷͰɺεϐʔυΛམͱ ͞ͳ͍։ൃΛ࣮ݱͰ͖ͨʂ w υΩϡϝϯτͷʢίϐϖϏϦςΟʣμογϡϘʔυͷݟ͢͞ͳ ͲɺͲ͜Λͱͬͯຊʹ։ൃऀϑϨϯυϦʔ w 4USJQF͓͏ʂ