Algumas pessoas chegam a achar que são números aleatórios, ou sequenciais, atribuídos pelas bandeiras ou pelos bancos emissores, mas a realidade é que o número do cartão segue um padrão especificado e que é possível saber qual é a bandeira, tipo do cartão e a conta do portador, apenas observando o número do cartão; em alguns casos, de fato, é possível saber até o país de origem do cartão, apenas observando seu número.
Com o objetivo de contribuir para a redução as transações negadas pelo código 14 – cartão inválido, recomendamos o uso do algoritmo de Luhn para verificação da sequência de números dos cartões de credito e débito utilizados na sua loja. A partir desta medida, o lojista conseguirá evitar que uma transação com o cartão digitado incorretamente seja enviado para processamento.
Por isso, recomendamos que, no momento que o portador digitar o número do cartão e o algoritmo de Luhn detectar que a digitação está incorreta, o lojista deverá exibir a informação clara para o portador, solicitando que o cartão seja digitado novamente ou tente outro cartão.
Números de cartões
Basicamente, o número do cartão é composto por três partes:
- BIN ou IIN: Bank Identification Number, ou Issuer Identification Number, é o número que identifica o banco emissor das bandeiras Visa, Mastercard, Amex, entre outras, por meio dos primeiros dígitos do cartão. No caso do cartão de exemplo acima, o BIN é 4, que é o identificador da Visa.
- Conta do cliente: após o BIN, os próximos dígitos identificam o número da conta do portador no banco emissor. Logo após o BIN, os próximos 14 dígitos são o identificador da conta do cliente: 000 1234 5678 901.
- Dígito de verificação: esse último dígito é utilizado para verificar se o número do cartão de crédito é válido. Para se chegar no dígito verificador é utilizado um algorítimo chamado Luhn. No caso do cartão de exemplo acima, o dígito verificador é 0.
Informações de cartões
Após validar que o número do cartão é válido, podemos verificar se o número do cartão está correto segundo a bandeira escolhida. Não recomendamos que se faça uma validação de bandeiras através do BIN - primeiros dígitos do cartão; essa recomendação é importante porque pode haver colisão de mesmo número de BINs para bandeiras diferentes. Algumas bandeiras possuem 13, 15 ou 16 dígitos e o CVV possui 3 ou 4 dígitos. A tabela abaixo mostra a quantidade de dígitos de cada bandeira e seus respectivos CVVs. Utilize essa informação em conjunto com o algoritmo Luhn para uma validação completa do número do cartão do cliente.
BANDEIRA | NÚMERO DE DÍGITOS | DÍGITOS DO CVV |
---|---|---|
Visa | 13 ou 16 dígitos | 3 dígitos |
Mastercard | 16 dígitos | 3 dígitos |
Amex | 15 dígitos | 4 dígitos |
Diners Club International | 14 dígitos | 3 dígitos |
JCB | 16 dígitos | 3 dígitos |
ELO | 16 dígitos | 3 dígitos |
Comentários
0 comentário
Por favor, entre para comentar.