Bin e padrões para validação de cartão de crédito.
Bandeira | Começa com | Máximo de número | Máximo de número cvc |
---|---|---|---|
Visa | 4 | 13,16 | 3 |
Mastercard | 5 | 16 | 3 |
Diners | 301,305,36,38 (http://bin-iin.com/American-Express-BIN-List.html) | 14,16 | 3 |
Elo | 636368, 636369, 438935, 504175, 451416, 636297,5067,4576,4011,506699 | 16 | 3 |
Amex | 34,37 | 15 | 4 |
Discover | 6011,622,64,65 | 16 | 4 |
Aura | 50 | 16 | 3 |
jcb | 35 | 16 | 3 |
Hipercard | 38,60 | 13,16,19 | 3 |
Os dados dos cartões: Elo, Hipercard desta tabela não são oficiais. Tentei diversas vezes falar com o pessoal dessas bandeiras afim de ter uma informação oficial, porém, é muito difícil falar com o setor técnico e as atendentes nem sabem o que é bin de cartão e nem sabem do que estou falando :(
Essa tabela foi montada através de coleta de dados de cartões reais. Onde o usuário colocava o número de cartão de crédito dele e quando não conseguíamos saber qual a banheira pedíamos para que o usuário selecionasse a bandeira. A partir deste momento coletávamos os primeiros dígitos do cartão.
Eu atualizei essa tabela até o mês de Agosto/2013. Não sei se teve atualizações desde então. De qualquer forma acredito que é uma boa tabela de referência e acredito que a busca pelo padrão continua pois deve ter cartões que ainda não estão em nenhum padrão.
Caso tenha alguma dúvida me mande um email: erikhq cpan org Quando tem um novo comentário aqui nesta gist eu não recebo notificação.
Caso você saiba de algum novo padrão ou viu algo de errado, por favor, ajude a manter essa tabela atualizada.
Existe este site também para cartões internacionais: http://bin-iin.com/
vlw
Adicionei 506699 para o cartão ELO.
Adicionado 636369 para o cartão ELO
regex que estou usando na ELO
^(40117(8|9))|(431274)|(438935)|(451416)|(457393)|(45763(1|2))|(504175)|(627780)|(636297)|(636368)|(65500(0|1))|(65165[2-4])|(65048[5-8])|(65500(2|3))|(650489)|(65049[0-4])|(506699|5067[0-6][0-9]|50677[0-8])|(509[0-8][0-9]{2}|5099[0-8][0-9]|50999[0-9])|(65003[1-3])|(65003[5-9]|65004[0-9]|65005[01])|(65040[5-9]|6504[1-3][0-9])|(65048[5-9]|65049[0-9]|6505[0-2][0-9]|65053[0-8])|(65054[1-9]|6505[5-8][0-9]|65059[0-8])|(65070[0-9]|65071[0-8])|(65072[0-7])|(65090[1-9]|65091[0-9]|650920)|(65165[2-9]|6516[67][0-9])|(65500[0-9]|65501[0-9])|(65502[1-9]|6550[34][0-9]|65505[0-8])