lunes, 12 de febrero de 2007

Codificación de tarjetas de crédito

En este documento se explica el sistema de codificación de las tarjetas de Crédito, Debito y otras. El algoritmo que se describe en este texto es valido para la mayor parte de tarjetas, no solo las de crédito o debito, sino la de grandes centros comerciales aunque los datos particulares sean sobre las primeras. Descripción del Número de Tarjeta,

El Número se compone de tres partes principales:

Los 4 primeros dígitos componen el Identificativo del banco que cede la tarjeta. Hay un numero diferente para cada Banco pero estos números no son los mismos de acuerdo al continente en que se este. Según esto el número de CITIBANK en EEUU es el 4013 mientras que en Europa es el 4539.

El 5 digito es el Tipo de tarjeta e indica que entidad financiera gestiona esa tarjeta. Las más importantes son Visa, American Express y Master Card.

Los 10 dígitos siguientes componen el Número de usuario e identifican a este de manera única.

Digito de control es el último número y se obtiene aplicando un algoritmo al resto del número.

El formato es el siguiente:

1111 2333 3333 3334

Donde el Identificativo esta representado por 1111 el cual es un número de 4 dígitos siendo cada digito un número del 0 al 9.

El Tipo esta representado por 2 el cual es un número de 1 dígitos siendo cada digito un número del 0 al 9.

El Numero de usuario esta representada por 333 3333 333  el cual es un numero de 10 dígitos siendo cada digito un numero del 0 al 9.

El Digito de Control esta representado por 4 el cual es un número de 1 dígitos siendo cada digito un número del 0 al 9.

Identificativo del Banco

Cada banco o entidad financiera que distribuye tarjetas lleva un número de cuatro dígitos que lo identifica.

Identificativo Nombre del banco Tipo

4013 CITIBANK 4

Tipo de Tarjeta

El 5 digito identifica al tipo de tarjeta de acuerdo a los siguientes valores.

Tipo Entidad Financiera

3 American Express

4 Visa

5 Master Card

6 Discover

Algoritmo de Codificación del Número

La codificación del número de la tarjeta se realiza en tres pasos:

Se multiplican por dos todos los dígitos de las posiciones impares y aquellos mayores de 9 se suman los dos dígitos.

Resultado= Ax2 si Resultado>10 entonces Resultado=Resultado-9.

Después de calcular los nuevos números de las posiciones impares se suman entre si todos los dígitos.

a1b2 c3d4 e5f6 g7h8 i9j0 ->

Resultado= a+1+b+2+c+3+d+4+e+5+f+6+g+7+h+8+i+9+j+0

Si el resultado es múltiplo de 10 entonces el número de tarjeta es valido.

Resultado MOD 10 = 0

Ejemplo

Si tenemos el número de tarjeta 4539 4512 0398 7356 y comprobar que es un número valido:

Multiplicar por dos los números de las posiciones impares (4-3- 4-1- 0-9- 7-5-) y dejarlos con un solo digito:

4x2=8

3x2=6

4x2=8

1x2=2

0x2=0

9x2=18 -> 1+8=9

7x2=14 -> 1+4=5

5x2=10 -> 1+0=1

Sumar los dígitos de las posiciones pares y los nuevos de las posiciones impares.

5+9+5+2+3+8+3+6+8+6+8+2+0+9+5+1=80

80 es múltiplo de 10 por lo que el número de tarjeta es valido.



Artículos relacionados


No hay comentarios: