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
DevTalks Bucharest 2015 - A Credit Card Walks i...
Search
Cristiano Betta
June 11, 2015
Technology
0
610
DevTalks Bucharest 2015 - A Credit Card Walks into a Bar...
My talk from DevTalks Bucharest 2015
Cristiano Betta
June 11, 2015
Tweet
Share
More Decks by Cristiano Betta
See All by Cristiano Betta
Docs as Engineering - DevRelCon London 2019
cbetta
0
150
DevRelCon London 2019 - Developer Experience Workshop
cbetta
0
140
DevRelCon London 2019 - Developer Experience Workshop
cbetta
0
340
The 7 Deadly Sins of Developer Experience (DevRelCon Tokyo)
cbetta
0
4.1k
The State of Encryption
cbetta
0
380
Developer Experience Workshop
cbetta
1
590
The 7 Deadly Sins of Developer Onboarding
cbetta
0
190
A brick by brick guide to developer experience
cbetta
2
650
Hackathons Workshop
cbetta
0
310
Other Decks in Technology
See All in Technology
Azure SynapseからAzure Databricksへ 移行してわかった新時代のコスト問題!?
databricksjapan
0
130
BtoBプロダクト開発の深層
16bitidol
0
190
Modern_Data_Stack最新動向クイズ_買収_AI_激動の2025年_.pdf
sagara
0
200
Exadata Database Service on Dedicated Infrastructure(ExaDB-D) UI スクリーン・キャプチャ集
oracle4engineer
PRO
2
5.4k
KAGのLT会 #8 - 東京リージョンでGAしたAmazon Q in QuickSightを使って、報告用の資料を作ってみた
0air
0
200
「AI駆動PO」を考えてみる - 作る速さから価値のスループットへ:検査・適応で未来を開発 / AI-driven product owner. scrummat2025
yosuke_nagai
4
560
【新卒研修資料】LLM・生成AI研修 / Large Language Model・Generative AI
brainpadpr
23
16k
BirdCLEF+2025 Noir 5位解法紹介
myso
0
190
多野優介
tanoyusuke
1
390
動画データのポテンシャルを引き出す! Databricks と AI活用への奮闘記(現在進行形)
databricksjapan
0
140
ZOZOのAI活用実践〜社内基盤からサービス応用まで〜
zozotech
PRO
0
160
自作LLM Native GORM Pluginで実現する AI Agentバックテスト基盤構築
po3rin
2
240
Featured
See All Featured
GitHub's CSS Performance
jonrohan
1032
460k
Producing Creativity
orderedlist
PRO
347
40k
Faster Mobile Websites
deanohume
310
31k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
9
960
Become a Pro
speakerdeck
PRO
29
5.5k
How STYLIGHT went responsive
nonsquared
100
5.8k
VelocityConf: Rendering Performance Case Studies
addyosmani
332
24k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
46
7.6k
Six Lessons from altMBA
skipperchong
28
4k
A designer walks into a library…
pauljervisheath
209
24k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
34
6.1k
Rails Girls Zürich Keynote
gr2m
95
14k
Transcript
@cbetta @braintree_dev A Credit Card Walks into a Bar... by
Cristiano Betta 1 Developer Advocate @braintree_dev A talk on credit cards in eCommerce
@cbetta @braintree_dev A Credit Card Form Walks into a Bar...
A talk on credit cards in eCommerce
@cbetta @braintree_dev A Credit Card Form Walks into a Bar...
A talk on credit cards in eCommerce A series of bad jokes Developer Advocate @braintree_dev by Cristiano Betta
@cbetta @braintree_dev
@cbetta @braintree_dev
@cbetta @braintree_dev A Credit Card Walks into a Bar...
@cbetta @braintree_dev he says to the bartender, “I’ve been having
a hard time meeting people” the bartender says: “Wait, aren’t you supposed to be good at generating...”
@cbetta @braintree_dev “interest”
@cbetta @braintree_dev THANK YOU!
@cbetta @braintree_dev I <3 U Bucharest
@cbetta @braintree_dev A Credit Card Walks into a Bar_
@cbetta @braintree_dev I have a Cat
@cbetta @braintree_dev Who has a “special” condition
@cbetta @braintree_dev 14
@cbetta @braintree_dev But he thinks he is the king of
the house
@cbetta @braintree_dev
@cbetta @braintree_dev Actually he has a kidney condition
@cbetta @braintree_dev People always want to see more photos and
videos
@cbetta @braintree_dev especially kids
@cbetta @braintree_dev so...
@cbetta @braintree_dev I wrote an application that...
@cbetta @braintree_dev charges people money to see his face
@cbetta @braintree_dev
@cbetta @braintree_dev
@cbetta @braintree_dev
@cbetta @braintree_dev
@cbetta @braintree_dev I know what you are thinking...
@cbetta @braintree_dev I am an a**hole
@cbetta @braintree_dev I am actually raising money for his kidney
surgery
@cbetta @braintree_dev I promise!
@cbetta @braintree_dev
@cbetta @braintree_dev A Credit Card Form Walks into a Bar...
@cbetta @braintree_dev the bartender says, “Why do you keep coming
in here day after day ?” The credit card form looks at him miserably says “I’m just looking for some..."
@cbetta @braintree_dev “validation”
@cbetta @braintree_dev
@cbetta @braintree_dev
@cbetta @braintree_dev Things people should not do when building a
Credit Card Form
@cbetta @braintree_dev Things I think you should not do when
building a Credit Card Form
@cbetta @braintree_dev
@cbetta @braintree_dev baymard.com/lists/cart-abandonment-rate
@cbetta @braintree_dev 1.
@cbetta @braintree_dev Add a CAPTCHA
@cbetta @braintree_dev CAPTCHA Completely Automated Public Turing test to tell
Computers and Humans Apart
@cbetta @braintree_dev
@cbetta @braintree_dev
@cbetta @braintree_dev
@cbetta @braintree_dev
@cbetta @braintree_dev
@cbetta @braintree_dev
@cbetta @braintree_dev CAPTCHA Completely Automated Public Turing test to tell
Computers and Humans Apart
@cbetta @braintree_dev CAPTCHA Completely Automated Process That Causes Headaches and
Anger
@cbetta @braintree_dev 2.
@cbetta @braintree_dev Ask users to register
@cbetta @braintree_dev Ask users to register ...before purchasing
@cbetta @braintree_dev
@cbetta @braintree_dev
@cbetta @braintree_dev
@cbetta @braintree_dev
@cbetta @braintree_dev
@cbetta @braintree_dev
@cbetta @braintree_dev
@cbetta @braintree_dev
@cbetta @braintree_dev
@cbetta @braintree_dev A Credit Card Form Walks into a Bar...
@cbetta @braintree_dev the bartender says, “I haven’t seen you in
a while!” The credit card form looks at him and says “Yeah, I had to go to jail. I was...”
@cbetta @braintree_dev “Charged with bad humour"
@cbetta @braintree_dev 3.
@cbetta @braintree_dev Ask me for the credit card type?
@cbetta @braintree_dev
@cbetta @braintree_dev
@cbetta @braintree_dev
@cbetta @braintree_dev * totally copied from Wikipedia
@cbetta @braintree_dev
@cbetta @braintree_dev
@cbetta @braintree_dev
@cbetta @braintree_dev
@cbetta @braintree_dev
@cbetta @braintree_dev jquerycreditcardvalidator.com
@cbetta @braintree_dev
@cbetta @braintree_dev creditcardjs.com
@cbetta @braintree_dev
@cbetta @braintree_dev I <3 Braintree
@cbetta @braintree_dev obviously...
@cbetta @braintree_dev
@cbetta @braintree_dev
@cbetta @braintree_dev
@cbetta @braintree_dev github.com/braintree/card-validator
@cbetta @braintree_dev
@cbetta @braintree_dev 4.
@cbetta @braintree_dev C.V.Who?
@cbetta @braintree_dev
@cbetta @braintree_dev
@cbetta @braintree_dev
@cbetta @braintree_dev
@cbetta @braintree_dev
@cbetta @braintree_dev
@cbetta @braintree_dev jessepollak.github.io/card
@cbetta @braintree_dev
@cbetta @braintree_dev
@cbetta @braintree_dev
@cbetta @braintree_dev kenkeiter.com/skeuocard
@cbetta @braintree_dev
@cbetta @braintree_dev
@cbetta @braintree_dev
@cbetta @braintree_dev
@cbetta @braintree_dev
@cbetta @braintree_dev
@cbetta @braintree_dev Hosted Fields
@cbetta @braintree_dev braintreepayments.com/features/hosted-fields
@cbetta @braintree_dev
@cbetta @braintree_dev 5.
@cbetta @braintree_dev You don’t format dates as they are on
my card
@cbetta @braintree_dev
@cbetta @braintree_dev
@cbetta @braintree_dev
@cbetta @braintree_dev 6.
@cbetta @braintree_dev 6.
@cbetta @braintree_dev A Credit Card Form Walks into a Bar...
@cbetta @braintree_dev he tries to pick up someone at the
bar, They turn him down. The credit card form looks at the bartender and says “Well, this is awkward normally I’m the one who..."
@cbetta @braintree_dev “Declines”
@cbetta @braintree_dev 6.
@cbetta @braintree_dev You don’t validate my card number inline
@cbetta @braintree_dev Luhn Algorithm
@cbetta @braintree_dev 4217 6511 1111 1119
@cbetta @braintree_dev 4217 6511 1111 1119 9111 1111 1156 7124
@cbetta @braintree_dev 4217 6511 1111 1119 9111 1111 1156 7124
9212 1212 1213 7228
@cbetta @braintree_dev 14 + 6 + 11 + 19 =
50 4217 6511 1111 1119 9111 1111 1156 7124 9212 1212 1253 7228
@cbetta @braintree_dev 50 % 10 == 0 ? 4217 6511
1111 1119 14 + 6 + 11 + 19 = 50 9111 1111 1156 7124 9212 1212 1253 7228
@cbetta @braintree_dev
@cbetta @braintree_dev
@cbetta @braintree_dev
@cbetta @braintree_dev
@cbetta @braintree_dev
@cbetta @braintree_dev
@cbetta @braintree_dev
@cbetta @braintree_dev
@cbetta @braintree_dev 7.
@cbetta @braintree_dev 7.
@cbetta @braintree_dev 6b.
@cbetta @braintree_dev You don’t know your limits!
@cbetta @braintree_dev Card! Number of Digits! AMEX! 15! Visa! 13
or 16! MasterCard! 16! Discover! 16!
@cbetta @braintree_dev
@cbetta @braintree_dev
@cbetta @braintree_dev
@cbetta @braintree_dev
@cbetta @braintree_dev
@cbetta @braintree_dev
@cbetta @braintree_dev 7.
@cbetta @braintree_dev You don’t remember me
@cbetta @braintree_dev
@cbetta @braintree_dev
@cbetta @braintree_dev
@cbetta @braintree_dev
@cbetta @braintree_dev
@cbetta @braintree_dev
@cbetta @braintree_dev 8.
@cbetta @braintree_dev You remember too much
@cbetta @braintree_dev And then you lose my details!
@cbetta @braintree_dev 2014 Home Depot 56M JP Morgan Chase 76M
Staples 1.6M
@cbetta @braintree_dev Tokenization
@cbetta @braintree_dev
@cbetta @braintree_dev
@cbetta @braintree_dev One more joke?
@cbetta @braintree_dev A Credit Card Form Walks into a Bar...
@cbetta @braintree_dev the bartender says, “You are new to this
joint aren’t you?” The credit card form looks at him and says “Yeah, I just..."
@cbetta @braintree_dev “Discovered it”
@cbetta @braintree_dev
@cbetta @braintree_dev 9.
@cbetta @braintree_dev You have a “reset” button
@cbetta @braintree_dev
@cbetta @braintree_dev
@cbetta @braintree_dev 10.
@cbetta @braintree_dev Where was I again?
@cbetta @braintree_dev
@cbetta @braintree_dev
@cbetta @braintree_dev That’s all folks!
@cbetta @braintree_dev Encore?
@cbetta @braintree_dev An American Express Walks into a Bar in
Moscow...
@cbetta @braintree_dev the bartender says, “Sorry mate, You aren’t allowed
in here without a...”
@cbetta @braintree_dev “VISA”
@cbetta @braintree_dev
@cbetta @braintree_dev baddonationforms.tumblr.com
@cbetta @braintree_dev THANK YOU!
@cbetta @braintree_dev Cristiano Betta Developer Advocate Braintree_PayPal.
[email protected]
slideshare.net/cbetta braintreepayments.com
@braintree_dev @cbetta