Re: do not enter the hypen!
"The reason for that is that credit card fields have EXACTLY 16 spaces in them.
...
Sometimes, you just can't fix stupid."
<pedant>
Nor, apparently, can you fix ignorance.
American Express card numbers have 15 digits (4 + 6 + 5), and --- several years after they introduced the 3-digit security CSC (like all the other credit/debit cards) --- I can't find a single payment service (Sage, Worldpay, any of the banks) that will allow you to specify it (the 3-digit CSC) rather than the 4-digit number that is printed on the face of the Amex Card.
Sigh!
</pedant>
In 1986 I wrote a credit card acceptance function for MUD II that stripped out the spaces and --- in every card acceptance page I have authored since then --- that continues to be the case; it seems I'm in a minority of one.