
Skeuocard - gooddelta
http://kenkeiter.com/skeuocard/
======
jasonlotito
So…

* Didn't realize I had the name and expiration field to enter as well. I thought it was just show casing the number entry. It wasn't until I came back here to HN to read comments that I realized that there was more to the demo.

* Tab order was wrong.

* 1Password couldn't fill in the data.

* No indicator telling me what credit cards you accept.

* CVV was hidden. There were several cases where I'd finished filling out the form, but couldn't change the CVV.

* Errors are not displayed. Try 10/10 expiration, and you are basically stuck. Without additional information, there is nothing to indicate anything is wrong.

* You can tab from the date to the hidden CVV and enter information there, but you don't see it. This is easily done because the automatic progression is inconsistent, so I've had to tab twice before getting to the year, and because it automatically moves me there, I end up on the CVV. This makes things really awkward.

* Overall, this was fairly confusing. I failed at entering the CC data the first time.

I spent 10 years handling CC processing, and basically living on the payment
page. Keep the page clean, quick, and simple. You don't want to do anything
confusing. Let them enter the CC data and move on. That fancy CC form will
_NOT_ sell a single thing. It will however _stop_ people from paying. It does
_nothing_ to convert.

The more friction you place between a customer willing to pay and the actual
transaction, the less chance you have of making a sale.

~~~
coldtea
> _That fancy CC form will NOT sell a single thing. It will however stop
> people from paying._

Citation needed.

> _It does nothing to convert._

Beside the point. Any other credit card form I've seen does nothing to convert
either -- and it's not it's job: by the time I'm entering my credit card
details, I'm already "converted".

Most of the objections are dead simple to fix (tab order, 1password), and
address nothing inherently wrong with the core idea.

~~~
jasonlotito
> Citation needed.

Unfortunately, I've never published anything to any official standard. I can
only go by my experience. That experience involves transactions north of
$100M.

> Any other credit card form I've seen does nothing to convert either -- and
> it's not it's job

Perhaps I worded it poorly. However, a CC form's job is to convert a potential
customer into a paying customer. Just because you've entered your CC details
does not make you a paying customer. You'd be surprised as the number of
people who do enter information, and then never actually complete the
transaction. It it's a recordable amount.

In the end, a credit card form that creates friction _will_ cost sales. The
more friction, the less sales. The amount of problems with this setup will
stop sales from going through, even if just the bugs are fixed.

> Most of the objections are dead simple to fix

They aren't objections as much as they are a report of what is wrong. Consider
them a list of problems that need to be addressed.

> and address nothing inherently wrong with the core idea.

Correct, the idea is fine, and should be explored. Keep in mind, this isn't
the first time I've seen someone use a credit card layout as a form. The CVV
on the back is new, but than I'm going to say that's a bad idea the way it's
implemented.

Anyways, I already replied to the author of the form, and made it clear I'm
not arguing against his attempt. Hell, I applaud him. I just wanted to share
my experience because that is what's needed.

~~~
dubcanada
Being a little less "blunt" may help a bit. I generally don't start my
criticism off with "So..." followed by a list of everything that is wrong with
it and then a "THIS WON'T CONVERT" in caps.

I think more likely the reason is people with "north of $100M" in transactions
are scared to try something new on their form. When there form clearly works
fine as it is. But that doesn't mean exploring new methods is a bad idea. I
know a lot of people who are still unsure of what a CVV is. And having a
replication of their credit card so they know exactly what goes where would
work very well.

Anyways just my 2c's

~~~
jasonlotito
I was trying to be clear. Judging by the OP's response, I think I was
successful. But agreed, I could have avoided the So… part. There was really
didn't mean anything by that part. Mea culpa.

> I think more likely the reason is people with "north of $100M" in
> transactions are scared to try something new on their form. When there form
> clearly works fine as it is.

That's actually far from the truth, at least in my experience. You are
constantly looking at how to improve the experience at every level. Between
the amount of time a person spends entering in each field, to the errors they
get back, and even where the person lives. Everything is scrutinized. Not
everything matters, but you keep looking.

> I know a lot of people who are still unsure of what a CVV is.

Yep. And there are ways you can go about resolving that. Hiding the field from
the start is a bad idea. There is nothing to suggest that you couldn't also
display the back of the credit card below the front.

The most important thing you can do when designing something like this is get
real feedback and data. Just because it looks nice doesn't mean it will help.

------
aresant
Upvoting because this is so beautifully executed and I'd love to see people
test this out on their checkout process.

That said, my experience indicates that this is not going to convert well.

To mirror the author's own quote:

"Every question a user has to ask themselves during the checkout process is
another reason for them not to complete it."

What's presented here is a drastically different experience from the norm.

It doesn't behave the way you'd expect if you've ever bought anything else
online.

Beyond that it has to load images dynamically based on card type which, on a
slow or interrupted connection, will create even more confusion.

I love the concept, I love the execution, I just don't think this is going to
be a conversion driver.

But I'll test it anyways.

~~~
kenkeiter
Thank you for being willing to test it! This isn't something I'm making money
off of, nor is it something I feel the need to ram down people's throats -- I
just wanted to try something people hadn't seen before.

If it works, and people like it, great! I'm glad to have helped a little.
Please let me know if you run into any trouble (my Twitter and email are on
the site).

~~~
supermatt
Hi Ken, it looks great!

Unfortunately, for unrecognised card types it makes it impossible to proceed.
I have just tried a maestro card number (beginning 6759) and am unable to
enter any of the additional details (expiry, etc).

It may be worth adding a generic fallback for cards that are not recognised to
account for unexpected edge cases.

Keep up the good work!

~~~
kenkeiter
GREAT CATCH! Thank you. I totally missed Maestro Card as a product. I'll get
it added ASAP. The fallback is a good idea, too!

Glad you liked it :)

~~~
jhalstead
Ken, have you seen this [1] Wikipedia page?

[http://en.wikipedia.org/wiki/List_of_Issuer_Identification_N...](http://en.wikipedia.org/wiki/List_of_Issuer_Identification_Numbers)

~~~
derstang
This list of BINs/IINs is not very accurate beyond the first two digits
identifying card network.

------
pytrin
It's a cute interaction, but for credit-card forms you want to be obvious
rather than cute. Showing all the fields a user expects to fill out instills
confidence and prevents questions like "where do I input my name and card
expiry date?" "what about the security code?" "where is the billing address?"
etc. People would typically not start filling out their credit-card details
with those doubts in their minds.

One additional nitpick - it says "YourBank" at the beginning, so while I was
aware this was supposed to a credit-card form because of the title of the
submission, it can also be mistaken for a bank account number submission.

------
dualogy
[Edit: original thread title was "why isn't every CC form like this?"]

Because it's completely unneeded.

Typical web designer wet dream. Fancy-schmancy visual design fluff, robbing
screen real-estate and bandwidth for a freaking "credit card" background
image, and will it still work even 2 or 5 years from now when all web dev
standards have once again turned 180° and future browsers render stuff like
this _way-off_ or not at all? Oh it won't, but you web designer dude will
happily fix this at a charge of only 1.5 man-days? Well, _neat_!

Don't get me wrong, it's fun to spend a week or three "optimizing" an
approximate 0.000001% of your web app's UX with ideas like this. I get it.
Been there, too.

I see another issue --- with the CC now looking more real, the user also gets
closer to the "physical reality" of "I'm parting with cash". Once I see my
card's logo I'm instantly more hesitant. It's been shown that the more
"layers" away from real physical payment a transaction is, the "easier" a
customer proceeds with it.

~~~
PhasmaFelis
_I see another issue --- with the CC now looking more real, the user also gets
closer to the "physical reality" of "I'm parting with cash". Once I see my
card's logo I'm instantly more hesitant. It's been shown that the more
"layers" away from real physical payment a transaction is, the "easier" a
customer proceeds with it._

Isn't it a _good_ thing, if people are more responsible with their money?

I mean, yes, most web merchants would be much happier if all their customers
spent the diaper bill and the mortgage payment on product, but I don't think
you're supposed to say that out loud on a public forum. It's considered
gauche.

------
dictum
>Every question a user has to ask themselves during the checkout process is
another reason for them not to complete it.
([http://kenkeiter.com/2013/07/21/redesigning-credit-card-
inpu...](http://kenkeiter.com/2013/07/21/redesigning-credit-card-inputs/))

"Wait, where do I put the CVC, name and expiration date?"

~~~
FireBeyond
And for bonus points, the card issuer is known from the first digits. But
perhaps a copyright issue to display logos.

~~~
jack-r-abbit
I've seen the Visa, MC and AmEx logos on too many CC forms so far to think
that showing their logo is a no-no.

~~~
rallison
I'm assuming he means the issuing bank, not just the Visa/MC/AmEx logos, as
those ARE already displayed on the skeuocard.

~~~
jack-r-abbit
Ah... I didn't enter a real CC number so I didn't know what level of
customization it did. I assumed it was just the generic main card logos.

------
lmkg
I think this is a great concept that will need a few rounds of feedback and
some live testing before it's ready for prime time. Many commenters here are
saying the current format will lower conversion rates, and I agree with that,
but I think the problems are correctable. I would love to see conversion rates
on this thing, although that's sort of a chicken-and-egg problem.

My general attitude: it's trying too hard to look _exactly_ like a credit
card, and that makes it not enough like a normal form. Dial it back a notch or
two. Have the fillable areas look like normal form fields, don't be afraid to
explanatory or error labels on the form, and show front & back at the same
time rather than a "flip" interaction.

------
taspeotis
On my iPad the auto progression doesn't work properly and the keyboard is
hidden after each field. You have to tap all over the credit card.

I gave up after the fourth extraneous tap.

So I guess "why aren't all credit card forms like this" is because people use
iPads.

(In all seriousness, great idea but disappointing first impression.)

~~~
kenkeiter
That's really good feedback. I actually hadn't tested on iPad, believe it or
not -- I created a ticket on it!

[https://github.com/kenkeiter/skeuocard/issues/28](https://github.com/kenkeiter/skeuocard/issues/28)

~~~
jalada
Good luck. Apple purposefully disables the ability to control where the
keyboard is entering text. AFAIK there's no workaround (I’d love to know if
there is!)

~~~
taspeotis
This [1] suggests it can be done, but in circumstances that aren't applicable
here.

[1]
[http://stackoverflow.com/a/16601288/242520](http://stackoverflow.com/a/16601288/242520)

------
iloveyouocean
We implemented a form very similar to this about 7 years ago. (our form had
light red borders around all the required fields that turned green when they
had been filled, as well as some other differences). I was personally very
enthusiastic about the beautiful design and thought that users would
appreciate the skeuomorphism. Well, they didn't really care. If anyone was
delighted by the design, it was offset by having to figure out how to use a
new format of form. The form was also more difficult for us to maintain and
test against different browsers. So, in the end we went back to a standard
form type.

------
FreshCode
I dislike this UI because it adds more questions[1] than it takes away. "Why
did it tab? Why is it loading, did I accidentally submit? Why did the tab
ordering jump down, then up?" Just show me a web form and put a picture of a
VISA card somewhere static.

[1] Don't Make Me Think, Steve Krug:
[http://www.sensible.com/dmmt.html](http://www.sensible.com/dmmt.html)

------
marknutter
The part for me where it breaks down is when you have to flip the card to the
back to fill in the CVC. I also hate when fields auto-tab for me. Also, why
does it hide the expiration date and name fields initially?

~~~
jchin
Wait, the card actually flips? I completely didn't realize that the first time
around. As for the second time around, I still don't know how to flip the
card. What am I missing?

~~~
ohazi
The flip doesn't appear to be working on Linux/Chrome. It mirrors the front
side, but whatever's supposed to show up on the back never does.

~~~
ohazi
Actually this was at work, where I have a version of chrome that's 6 months to
a year old. Linux / most recent Chrome seem to work better.

------
Camillo
If you paste "4111 1111 1111 1111" (with the spaces, from the very same page)
it breaks.

~~~
kenkeiter
Thanks for the feedback, Camillo! I've got a ticket in on it, and am working
on it right now.
[https://github.com/kenkeiter/skeuocard/issues/22](https://github.com/kenkeiter/skeuocard/issues/22)

------
robflynn
I'll be sending you a pull request in a day or two. I work with dead, blind,
hard of hearing, and visually impaired folks. I see a few places where
accessibility could be improved with respect to screen readers.

Would you be open to a patch like that?

~~~
YcombRegBroken
I swear I'm not a grammar nazi, but I did just spend the past 10 minutes
thinking about ideal user interfaces for zombies and vampires. Thanks for
that...

~~~
dragonwriter
Not to be a word choice nazi, but I think you mean either "word choice nazi"
or "spelling nazi" rather than "grammar nazi", as the post you responded to
was grammatically correct but apparently used "dead" in place of "deaf".

------
awj
I like the general concept, but I think it relies on specific behavior to the
point of being confusing.

* As others have mentioned, there's no advertising of accepted cards

* None of the empty inputs look like inputs until you tab into them. They also cease looking like inputs when you tab out. Correcting data that is not objectively invalid (e.g. expiration in the future, but wrong month) is kind of unintuitive. Someone who clicks into form fields will likely be entirely stumped by this form.

* It doesn't seem to work on mobile. On my iPhone the series of inputs were positively irritating to interact with, somehow each one only took three characters instead of four, and the lack of a tab meant I had little direction on where to go when the first four digit input disappeared.

* The CVV is clumsily poorly handled. You can actually tell in that you're breaking away from skeuomorphism to get the user to that input. It might be a better idea to show the "back" next to the card when you do the initial breakout.

------
ryanobjc
I have always wanted card entry systems to know what kind of card it is -
given that it's trivial to tell from the first few digits I never understood
why not.

This is a great step up from that. The one thing I felt was not perfect was
the multiple entry boxes for the different card types. Erasing/backspacing is
not so easy. I would suggest a single entry field, and do something about
adding padding spaces automagically. This also plays in to the auto-
complete/form fillers these days. A credit card number is a single number, not
4 groups of numbers you copy and paste independently.

------
bluetidepro
I don't think the UX is good as you think for the average user. For example,
my mom (who is pretty good with a computer) would be so confused by this. I
don't think she would understand that the credit card is interactive,
especially after she maybe got past the first part of the credit card numbers.

------
georgebonnr
I agree with others - I love the concept. However, I think for customers who
are less enthusiastic and trusting in general, having a physical
representation of their card built before their eyes will make them more
acutely aware of the information that they're sharing, and be nervous that
they're sharing it (even if they have limited reason to be nervous). In short,
it will spook average customers. Maybe for a site that sold to a technology-
focused crowd it would have more success though. Just my hunch.

------
dpcan
It has the feeling of literally giving away my credit card to someone. I'm not
sure that's a good thing.

Plus, I don't know anyone anywhere anymore that's confused by a few credit
card fields.

Plus, tabbing from the number goes to the name field and not the expiration.

Then you'll still have the problem of probably having to enter a valid billing
address on separate fields.

I don't know if this really improves anything other than the aesthetic is very
pretty.

------
pascalo
I love it. Couple of suggestions:

You should use data urls or sprites for the CSS, then you don't have the the
loading image coming in with delay.

Changing stuff once you have filled out the number is hard. You have to
navigate your way back through the 4 blocks, and the auto-tab and the way it
reacts to arrow keys means that the cursor doesn't end up where I anticipate
it.

------
JoshTriplett
Interesting idea.

One bug I noticed: if you enter one of the sample numbers such that the number
splits into multiple fields, then backspace starting from the end, you'll end
up moved to the beginning of the first field with the first few digits still
filled in, rather than backspacing over them.

More generally, any time you construct your own custom input rather than using
browser input fields as designed, you end up with this kind of brokenness
because you have to reimplement browser logic.

I'd love to see an <input type="creditcard">, with an input-creditcard.js
polyfill, and native support added to browsers. On platforms that already know
your credit card number, this would allow for simple auto-fill of all relevant
information. This would also make life easier for things like Google Wallet
that construct virtual credit cards for you, and it would allow for browser
extensions that integrate with credit-card vendors to produce one-time tokens.

------
dictum
This reminds me of an habit I developed: I usually input the credit card
number last. I usually start selecting the card issuer, then fill out my name,
billing address, expiry date and CVV.

------
aasarava
I love the concept. I love that it's smart enough to use a regex to figure out
the card type.

As others have said, some minor instructional text would help people get
started. Also, making the name and expiration fields more obvious from the
start (more obvious that they're fields and more obvious that they will need
to be filled out) would also be helpful.

Having to click to flip the card is probably the biggest problem (though
fixable). Typically when filling out a form, I suspect most people use the tab
key to go from field to field. Having to go back to the trackpad/mouse and
click on a spot slows things down. Maybe have the card automatically flip if
you hit tab after the expiration field?

~~~
kenkeiter
Definitely a good idea! I've got a ticket in on it, and will spend some time
thinking about a well-designed solution:
[https://github.com/kenkeiter/skeuocard/issues/25](https://github.com/kenkeiter/skeuocard/issues/25)

------
dredmorbius
Enough with the grey text.

#contrastrebellion
[http://www.contrastrebellion.com/](http://www.contrastrebellion.com/)

~~~
DArcMattr
And the ultra-lightweight typeface hurts readability even more.

------
0x0
Can't ctrl+a to select the whole card number input textfield and type over it
:-/

------
srinivasanv
Most non-American cards use something like "Expiry" instead of "Good Thru",
but apart from that minor string difference, it's pretty awesome.

Maybe you could get rid of the text entirely, MM/YY should be enough of a cue.

------
SeanLuke
Backspacing in the middle of a number triggers a behavior which is very
counterintuitive, particularly with the examples provided.

------
untangle
I think that this is very clever. Part of the value is the entertainment that
it provides in a nominally soulcrushingly-dull task.

The major flaw (fail) for me is that LastPass doesn't know what to do with it.

Still, I passed to our dev team for consideration.

------
dools
The field formatting stuff is great, but I think the interface to fill in the
data on the card is monumentally confusing.

I do, however, like the idea of offering a "live preview" of data filled in
via a normal credit card form (using the stripe checkout library for example
which does all the nice card type detection and input formatting stuff for
you).

This type of "preview" could also be useful in a confirmation step, ie. show
the front and back of the card so the user can confirm it looks okay (I don't
think there would be much advantage in "flipping" back and forth between front
and back, though).

------
sytelus
Entering CC info is last thing user does and that's the step you don't want to
mess up - ever! This is one scenario where you want to stick to boring, well-
accepted, well-known, highly familier UX and avoid performing fancy tricks
because there could always be some case where it doesn't work as expected. For
example, I tried to enter random numbers in this UX and I did not got any
response that numbers were bad. Even worse, it did not enabled MM/DD. For some
unknown CC this would mean loss of customer that you worked so hard to compete
and ultimately acquire.

------
mratzloff
I really like this EXCEPT for the awful image loading. It should preload the
images up front as a single sprite and swap them in and out as needed.

~~~
nkorth
Yes, especially since the card type is typically in the bottom corner of the
card, so for a while it just looks like it's reloading the same image.

------
aneth4
Beautiful project. I agree with others who don't think this will drive
conversion - who knows...

I would be concerned about reducing conversions though. Unfamiliarity can be
scary.

One annoyance for me - I can't hit Command-A to select everything and start
over. I'm also annoyed generally by auto-advancing text fields, though this
implementation seems to work around some of the issues.

------
bsimpson
I have a bit of a pet peeve for apps that try to customize form fields,
because they almost always get the corner cases wrong. Here, for instance,
select all doesn't work as expected. (In fact, selection doesn't work at all.
Skeuocard, like many overly-clever widgets, will overwrite your selection to
put the cursor where it thinks it should go.

------
fusiongyro
It's very good, but the OCR font is going a little too far for me.

------
gohrt
"simply enter your card number"

It's horribly wrong to even suggest that. The instructions should say "type
4111.... I don't want your credit card number", and should pop up an error if
a valid checksummed card number is entered. Don't miss an opportunity to help
people lean safe habits.

------
jlgreco
My only complain is that it auto-progresses across sections of inputs (between
month and year in the expiration for example) it does not auto-progress when
you reach the end of one form. I found that jarring. If you are going to auto-
progress in one place, you probably should across the board.

------
ChrisNorstrom
Very nice! To make it better:

\- ALL of the inputs should look like inputs and only after a user has put in
their information should the input ui disappear and the text be shown as it is
on a real credit card. Otherwise the ability to enter your name and expiration
is ambiguous.

\- I don't like how AFTER you enter your full credit card number, the input
fields become segregated, trying to change the credit card number becomes
difficult as you now have to click on each of the 4 new text fields to enter a
new credit card number. (If a card fails to go through a user might try to use
a new one). Yes you can just hold down BackSpace and it will travel from field
to field deleting the number but that's not obvious for a user to figure out.
Don't segregate the numbers into separate fields just leave them in one.

------
bsimpson
I believe there's an algorithm to determine if a card number is valid (before
determining if the other credentials are correct). Implementing that would
probably be the most useful thing you could do in Skeuocard, as it helps
people find typos in an otherwise inscrutable list of numbers.

~~~
nwh
It's called the Luhn algorithm, and no, the site doesn't seem to use it.

[https://en.wikipedia.org/wiki/Luhn_algorithm](https://en.wikipedia.org/wiki/Luhn_algorithm)

------
eli
I wouldn't use a form where the fields displayed change as you enter things.

That said, I totally agree with the premise. I'm totally baffled why so many
forms require you to unnecessarily select a card type or insist that you enter
a number with spaces or only without spaces.

------
205guy
There's a lot of negative reactions on here, and some of them might be valid
(unfamiliarity, any friction reduces sales).

But I liked the concept. The "flip over for CVC" worked for me on Firefox, and
that was an elegant solution. I think a lot of the criticism could be avoided
by just making it static: don't load the image and redraw the card based on
the input numbers. It then boils down to, essentially, the image of a generic
card with some generic fields on it. Add some red text for fields that require
input, and I think it's an elegant way to guide people when entering CC info.
I'd be interested if anyone did A/B testing with this variant (and others)
against regular forms.

~~~
jarek
> The "flip over for CVC" worked for me on Firefox, and that was an elegant
> solution.

What problem is it a solution for?

------
tonydiv
I love the idea, but since nobody does this, the average user would be
skeptical. If it were used on the iPad, people might be more comfortable,
since the iPad is a new medium and (most) people accept new concepts like
Square as acceptable and secure.

------
andrewjshults
FYI: 4147 2011 1111 1111 triggers the special Chase Sapphire layout (number is
on the back of the card, front just has your name + the Chase Sapphire
(Preferred)).

I actually find the lack of any label on the CVV field a bit confusing, but
maybe that's just me.

------
justinph
Very nice work. I've done lots of work with credit card fields because I work
for a large non-profit that depends on credit card donations. I might just use
this in the next iteration of our form. Good idea doing the detection in
realtime.

My only gripe would be that it doesn't innately explain which cards are
acceptable... E.g., you might not accept Diners Club and Discover, but do want
to accept Visa, MC, and Amex. Having little icons there make that more
explainable. We did it like that on our contribution form:
[https://contribute.publicradio.org/contribute.php](https://contribute.publicradio.org/contribute.php)

------
kingi
FYI: [http://ux.stackexchange.com/questions/33411/what-are-the-
pro...](http://ux.stackexchange.com/questions/33411/what-are-the-pros-and-
cons-of-skeuomorphic-design-in-payment-transactions)

------
andrewhillman
After the last number is entered, you should auto focus the NAME field, then
EXP DATE or the purchaser won't know what to do. People may think... hey, it
guess my card type, how come it's not automatically showing my name?

------
keerthiko
This is amazing. I do think there's a lack of breaking the norm in web
practices (for several good reasons, but not enough), resulting in us not
taking advantage of what the most amazing newest iterations of the internet
can offer. This is a good change in the right direction. I'm sure there'll be
kinks, but fixable kinks.

NB: I comment on amazing HN submissions (Show HNs usually) primarily so that I
can find these tools again by browsing my comments from my profile when I feel
the need to use them. This is primarily a comment to that end. Thank you so
much for this Ken!

------
Too
On my android with firefox it very was easy to see that the XXXX was an input-
box that had to be filled in because each field had a small frame around it, i
was surprised to see so many having trouble understanding it. Then i tried in
my desktop browser (firefox, chrome and ie) and there there is no frame around
the unfocused input fields, the numbers stand alone making it look like a
static image of a credit card, except when the fields are focused. This little
change made the experience much worse, i suggest always showing the frames
around the fields.

------
starmole
Small bug report: This works very poorly (not useable) in Chrome Version
21.0.1180.90, which is the last one available on macosx 10.5. You probably
want to fall back to form fields on untested browsers.

------
ape4
Perhaps existing forms make you select the type of card as an extra check.

~~~
infogulch
Not a very good reason, if you mistype a cc number it will most likely be
completely invalid anyway.

------
artag
I love this. couple of things you may want to test - either show all the
fields (cc number, exp, name etc) by default, or dont show the name,
expiration fields until the credit card number has been filled... its slightly
surprising that the other fields show up after entering 5 or 6 digits... also,
it is not very clear that I can click and enter the name, expiration date (as
it was for cc number)... you may want to move the user directly to the next
field after they have entered the previous field.

------
cheesylard
This is really good.

However, there is a few things that makes me not want to use it.

Firstly, no security code.

Secondly, it's hard to tell which fields aren't being filled out. Especially
the YOUR NAME in particular. Maybe you should make these fields red, or when
you complete a field it automatically goes to the next field. For example,
when you finish typing in your credit card number the cursor automatically
goes to the expiration date, and when you finish typing the expiration date it
automatically goes to the name. Just a suggestion.

------
jakub_g
One issue I see is that very frequently on many pages there's not only
distinction between say Mastercard or Visa, but also between different types
of them. If you have Mastercard FooCompany Partner Card, then you pay less
commission etc. Not sure if those partner types can be confronted with a regex
(anyone from CC company there? :)

Usually those granular types are on a select list, if one chooses badly, she
gots "transaction refused" without any more info (clearly not nice).

------
Qantourisc
Failure on copy-paste. Fix it ! :) And try to keep it in 1 box. Perfectly
possible without hurting functionality: Just use css word-spacing. (And auto-
add spaces where needed.)

------
AUmrysh
My only suggestion is to use hinting once the card number input is complete to
suggest the user then fill out the name and expiration date. Also I think when
pressing tab to go to the next input, you should have the order be:

card number -> expiration date -> name

instead of the current order of number, name, date.

It's a really slick implementation, I love the flipping animation, I used an
extremely similar animation setup (face front/face back, and a flip property)
on a site I built.

------
andrewmunsell
It _looks_ good, but is completely broken when using a password manager such
as Dashlane. The icons indicating auto-populating fields move all over the
place, etc.

------
nfoz
This is really cute. But I hope noone ever actually uses it :) Too much
guesswork and dynamism, violating important design principles IMO. But a nice
demo.

------
jaredsohn
One thing lacking in this design is that without extra supporting content, it
doesn't tell the user upfront what kinds of credit cards are supported. So if
a user prefers to use American Express, they have to find the card and start
entering a few digits before being told they have to try a different card (and
then they may have some apprehension about if that other type of card is
supported or not.)

~~~
kenkeiter
Great point. I'm working on coming up with something to indicate this better
-- but the responsibility for that may fall to the form which contains the
input, too. Not sure if it's the job of the card to indicate which types it
can be.

------
debian69
I found it awkward and annoying to use , so not a winner. Its a good idea but
unfortunately it just doesn't come off , keep on trying though.

------
flexd
This looks great, but is it great for us that are good with technology or will
it work for your parents too?

And what happens if javascript is disabled?

------
wmeredith
Because it's really hard to use due to a lack of affordance letting the user
know how they are supposed to interact with it.

------
sarme
Looks nice and I'm glad to see someone rethinking this interface.

Not something I'd use right now. It's too clunky compared to just having some
textboxs on the page. I'm not a fan of skeuomorphism in general though, so I'm
probably a hard sell.

Doesn't mean you shouldn't keep trying. Thanks for putting this out there. I
love the article, btw.

------
pdenya
I like it except for the card flip with the hidden field on the back. Maybe
show back and front at the same time with 2 cards.

------
pjg
I like what you guys are doing. I had this same idea when I started Noca
(www.noca.com ) - precursor to stripe.com, braintree.com etc. The idea was to
show the card logo bank from the BIN as the customer types the card number. Go
for it. The payments User Experience needs improvement and glad you guys are
doing it

------
sergiotapia
I'm 23 years young and I cannot read your text. Why is your background white
and your text light-gray?

------
kinkora
I have all 3 cards (AmEx, Visa, Mastercard) and I can see the full form and
along with the validations, given an AmEx card. Is there any particular reason
why the same can't be done with the Visa and Mastercard?

Regardless, fantastic piece of code! Will definitely think of incorporating
this.

------
umsm
I feel like if we were to implement this on our ecommerce site, we would loose
millions. That said, it does have potential for displaying saved credit card
information in a nice layout.

As for the input, the standard forms that we grew used to are probably here to
stay for a little longer.

------
yuletide666
Looks great, but having to flip the card over to enter the CVV code is a huge
usability hit for me.

------
nonchalance
American Express used to do this when you mistyped passwords a few times and
were locked out of your online account (they may still do it for membership
rewards). It put text boxes in the areas for the CVV and the card number (with
an Amex card in the background)

------
Gonzih
Really nice idea and implementation. Lovely thing. But I will never use it on
real product. Makes easier to match on request (since you know what library
will be required from server) and patch it on the fly. So credit card data can
be stolen.

------
pat2man
Square on iOS has had a similar input since it first came out. Its a great way
to enter credit card numbers on a mobile phone where you don't have a tab key
etc.

Making the whole thing look like a credit card doesn't seem necessary at all.

------
JeremyMorgan
It's a bit gimmicky but I think the subconscious (or even conscious)
association people make with the card they're holding in their hand makes it
less prone to mistakes and a bit easier to use. I like it.

------
jaredstenquist
I agree with many that this is very well done. I would like to see some
usability tests to see if there would be as much confusion as I expect.

Without great experiments like these, there would be no progression. Kudos to
Ken.

------
6cxs2hd6
Awesome idea. Beautiful design.

Small bug: Amex cards have 4 digit CCV. Although you do show "XXXX" (4 digits)
before I start typing, when I get to that field I can only type "123" (3
digits).

~~~
6cxs2hd6
Oh it's already logged as issue 34.

[https://github.com/kenkeiter/skeuocard/issues/34](https://github.com/kenkeiter/skeuocard/issues/34)

------
asselinpaul
I had this idea a while back, didn't execute well:
[https://github.com/asselinpaul/cc_validate](https://github.com/asselinpaul/cc_validate)

~~~
reledi
From your experience, why didn't it execute well?

~~~
asselinpaul
I didn't execute it well, it looked bad but I was 15 or 16 back then.

------
analog31
I never thought of this before, but the first 4 digits of my credit card
number revealing the issuing bank seems insecure to me. That's not a fault of
the op's program, of course.

------
njloof
Too long to load. Failed loading first time on iPhone. Keep It Simple.

------
cyrilga
I love this idea and I will test it for sure! I will let you know when I do.
For consistency I will also add a letter background to get the billing
address. Nice work mate!

------
renownedmedia
It likes my month of 99

------
jlengrand
What suprise me most is why the heck has it not been the DEFAULT way to do
this for years!? Disruptive, so it might frighten some users. But so awesome.
.. .

------
virgil_disgr4ce
SO MUCH WHINING! Holy shit people, if you have a problem, fork the damn thing
and do something about it! _shakes head_

------
BasDirks
Nitpick: the backgrounds are a whopping 992 × 624, ~180 KB. This makes loading
and rendering not as smooth as it could be.

------
brento
The security code on the backside could use some improving on how it looks.
Other than that, this is a really cool idea!

------
smiddereens
Naysayers aside I think it'd be neat if it went even further and switched to
an IIN-specific layout.

------
Ackley
I don't think it's a good idea... but at least it should look exactly like my
credit card.

------
atsaloli
That's beautiful. Good job!

------
tomasien
Stripes form for iOS is the GOAT

------
yackob03
You could two-way bind this with a traditional payment form and end up with
something that's useful in the traditional case (feedback about whether the
data you're typing is going in the right place), and may delight users who
understand what they're seeing and choose to interact with it.

------
jpswade
It was a bit flaky on Android.

------
andygates
That's so clever it ticks my "creepy" box. Well done... sorta.

------
kposehn
Fantastic.

I can think of all sorts of ways for it to drop conversions if it fails, but
it is so perfectly done that I kind of don't care.

I'm going to keep an eye on this because it has the potential to really
increase the comfort people have when entering a credit card. And because it
is beautiful.

~~~
kenkeiter
It could drop conversion if it fails massively, but I'm going to be pretty
aggressive about intercepting and triaging bugs. The progressive enhancement
side of things protects users from really bad failures, too

I'm glad you think it's beautiful. That's all I can really ever hope to hear
as a designer and engineer.

------
gboone42
I'm pretty sure Bonobos uses something like this. Really slick.

------
nej
Doesn't seem to be working using the keyboard numpad.

------
ihsw
There's a distinct lack of support for the num pad.

------
antidaily
The order feels off.

------
dhruvkaran
Thank you for sharing this. It's beautiful.

------
Nux
Nice. Works without javascript, too!

------
kylelibra
This is fantastic.

------
zawaideh
Nice work Ken!

------
NittLion78
Diner's Club still exists??

------
rorrr2
The main problem, and many designers make that mistake, is that you're
modeling a physical thing inside an app for no good reason.

Other than the nice visuals it doesn't help anything.

As a designer, you should think of how to make the process of entering the CC
more efficient and less distracting, so your conversions don't go down the
drain.

A simple clean design with standard input fields will outdo your pretty design
any day of the week.

p.s. Does your design even work if JS is disabled?

~~~
josho
> The main problem ... is that you're modeling a physical thing inside an app
> for no good reason.

There is a very good reason to model the physical card. On the assumption that
_most_ folks enter their CC information by taking the card out of their wallet
& copying the information from the card into the form. Then for those folks
following the physical object makes it easier for the user to locate the
expiry date & CCV code on the back.

I assume that folks like us that use CC auto-fill tools are a minority. And
yes for us this is totally unnecessary.

PS. Do any non-tech savvy people disable JS? And if so, why?

~~~
jarek
The number of people who don't know where the CVV code is located is dwarfed
by the number of people who are roughly familiar with their card and would
instead be confused by an unfamiliar-looking form.

You learn where the CVV is the first time you successfully buy something
online. You learn how this specific form design works the first time you enter
a website that uses it. Which do you think is going to be happening more
frequently?

