开发者

Credit Card validation: can Card Name contain non-ASCII characters?

开发者 https://www.devze.com 2022-12-15 22:59 出处:网络
Can the Card Name (i.e. the cardholder name, not the card type) contain non-ASCII charac开发者_Go百科ters?

Can the Card Name (i.e. the cardholder name, not the card type) contain non-ASCII charac开发者_Go百科ters? Example: "JOSÉ GONZÁLEZ".


The character set that is used does not allow for diacritics. In brief, it only allows uppercase ASCII characters.

The restriction ultimately comes from the historical way in which banking cards encode data onto the magnetic stripe (as defined in ISO 7811). The data is encoded in a 7 bits per character format known as ITU-T.50

The cardholder name is encoded with up to 26 characters, each within the range from hex 20-5F. You can see the table for this here: http://www.zytrax.com/tech/ia5.html


Magnetic stripe can store even punctuation symbols like ! " * # % & ( ) ^ : ; < > = ? [ / ] _
But in practice cardholders names uses only:

  • Range of English uppercase letters
  • Apostrophe (') for names like "Gareth O'Hare"
  • Minus (-) for double names like "Alexandru-Cristian"
  • Dot (.) for honorific prefixes like "MR.", "MRS.", "MISS.", "MS.", "DR.", "THE."
  • Dot (.) for initials like "Jimmy L. Morgan", "J.P. Teron"


Indeed, only ASCII characters are allowed. But other manipulation is allowed. One can print the name on the first or the second line. One can choose with or without dots and so on.

So, you can't make the customer happy with diacrits (thinks Norwegian and German names). But you can the customer let choose between full firstname of only one character (e.g. JOSE GONZALES or J. GONZALES). It helps to make the customer happy.


Chip cards (aka smart Cards, EMV cards) contain and can return a plethora of different values including "Cardholder Name" (tag 5F20) and "Cardholder Name Extended" (tag 9F0B). EMV Co. says that both of these tags should follow ISO 7813 but I've already seen one card (an "NH Card" from Korea Air) in which tag 5F20 contained lowercase characters. Pandora's box has been opened!


The credit card processors I've used in the past only allowed ASCII in the cardholder name, but you should check with your credit card processor to see what their requirements/restrictions are.

0

精彩评论

暂无评论...
验证码 换一张
取 消

关注公众号