8
  Pág.1 ESPECIFICACIÓN TÉCNICA DEL CÓDIGO DE CONTROL (Ver 6.0) 1. ANTECEDENTES En el marco del Nuevo Sistema de Facturación implementado por la Administración Tributaria, se tiene prevista la incorporación de nuevos elementos de seguridad en las facturas emitidas por sistemas de facturación computarizada. En este sentido, toda factura emitida por este medio, deberá incorporar un Código de Control generado a partir de información de la factura, que posteriormente permitirá determinar la validez o no de la misma. A efectos del Nuevo Sistema de Facturación, solo podrán emitir facturas aquellos sistemas de facturación computarizada que tengan implementado el generador del Código de Control, estén registrados en Impuestos Nacionales, y además pasen por un proceso de certificación que verifique la correcta generación del Código de Control. 2. ¿QUE ES EL CÓDIGO DE CONTROL? Es un dato alfanumérico generado e impreso por un sistema de facturación computarizada, a tiempo de emitir una factura. Este código se genera en base a información de dosificación de la factura, información de la transacción comercial, y un dato alfanumérico denominado Llave, que el contribuyente recibirá por Internet cada vez que solicite dosificaciones de facturas para su sistema de facturación computarizada. Por la forma en que se genera el Código de Control, constituye una representación única de una factura, que será utilizada por el SIN para determinar la validez o no de la misma. 3. EMISIÓN DE FACTURAS A TRAVÉS DE SISTEMAS DE FACTURACIÓN COMPUTARIZADA Todo contribuyente que requiera emitir facturas haciendo uso de un sistema de facturación computarizada, deberá previamente: - Registrar su sistema de facturación computarizada ante el SIN, llevando a cabo el trámite de Registro de Autoimpresores en oficinas de Impuestos Nacionales, o a través del Portal Tributario, siempre que el contribuyente sea Newton. - Certificar la correcta generación del Código de Control, ingresando al Portal Tributario y sometiéndose a una prueba de certificación, la cual verificará que su sistema de facturación genera correctamente el Código de Control. Una vez que su sistema de facturación esté registrado y certificado por el SIN, el contribuyente podrá: - Solicitar dosificación de facturas para su sistema de facturación computarizada. Este trámite deberá realizarse a través del Portal Tributario, producto del mismo el contribuyente recibirá un Certificado de Activación de Dosificación de Facturas, que incluirá información de la dosificación realizada.

CodigoControlV6

Embed Size (px)

Citation preview

ESPECIFICACIN TCNICA DEL CDIGO DE CONTROL(Ver 6.0)

1. ANTECEDENTES En el marco del Nuevo Sistema de Facturacin implementado por la Administracin Tributaria, se tiene prevista la incorporacin de nuevos elementos de seguridad en las facturas emitidas por sistemas de facturacin computarizada. En este sentido, toda factura emitida por este medio, deber incorporar un Cdigo de Control generado a partir de informacin de la factura, que posteriormente permitir determinar la validez o no de la misma. A efectos del Nuevo Sistema de Facturacin, solo podrn emitir facturas aquellos sistemas de facturacin computarizada que tengan implementado el generador del Cdigo de Control, estn registrados en Impuestos Nacionales, y adems pasen por un proceso de certificacin que verifique la correcta generacin del Cdigo de Control. 2. QUE ES EL CDIGO DE CONTROL? Es un dato alfanumrico generado e impreso por un sistema de facturacin computarizada, a tiempo de emitir una factura. Este cdigo se genera en base a informacin de dosificacin de la factura, informacin de la transaccin comercial, y un dato alfanumrico denominado Llave, que el contribuyente recibir por Internet cada vez que solicite dosificaciones de facturas para su sistema de facturacin computarizada. Por la forma en que se genera el Cdigo de Control, constituye una representacin nica de una factura, que ser utilizada por el SIN para determinar la validez o no de la misma. 3. EMISIN DE FACTURAS A TRAVS DE SISTEMAS DE FACTURACIN COMPUTARIZADA Todo contribuyente que requiera emitir facturas haciendo uso de un sistema de facturacin computarizada, deber previamente: Registrar su sistema de facturacin computarizada ante el SIN, llevando a cabo el trmite de Registro de Autoimpresores en oficinas de Impuestos Nacionales, o a travs del Portal Tributario, siempre que el contribuyente sea Newton. Certificar la correcta generacin del Cdigo de Control, ingresando al Portal Tributario y sometindose a una prueba de certificacin, la cual verificar que su sistema de facturacin genera correctamente el Cdigo de Control.

-

Una vez que su sistema de facturacin est registrado y certificado por el SIN, el contribuyente podr: Solicitar dosificacin de facturas para su sistema de facturacin computarizada. Este trmite deber realizarse a travs del Portal Tributario, producto del mismo el contribuyente recibir un Certificado de Activacin de Dosificacin de Facturas, que incluir informacin de la dosificacin realizada.

Pg.1

-

Recabar la Llave que el SIN asign a su dosificacin, esto a partir del Portal Tributario. Dada la sensibilidad de este dato, su conocimiento y divulgacin sern de entera y absoluta responsabilidad del contribuyente. Configurar su sistema de facturacin computarizada, ingresando informacin de dosificacin contenida en el Certificado de Activacin de Dosificacin de Facturas, adems de la Llave de dosificacin recibida. Finalmente, el sistema de facturacin computarizada estar en condiciones de emitir las facturas dosificadas por el SIN, generando e imprimiendo en cada una el Cdigo de Control correspondiente.

-

-

4. GENERADOR DEL CDIGO DE CONTROL 4.1. Algoritmos Utilizados: Para generar un Cdigo de Control, se hace uso de los siguientes algoritmos informticos: Alleged RC4 Un algoritmo de criptografa simtrica, basado en cifrado de flujo (stream cipher), muy utilizado por su rendimiento y simplicidad. Algoritmo de dgito verificador que trabaja con cadenas de dgitos decimales de cualquier tamao. Adems de detectar una amplia gama de errores en datos numricos, este algoritmo tambin detecta casos de transposicin de dgitos adyacentes. Algoritmo que convierte cifras en base 10 a base 64, utilizando divisiones sucesivas adems de un diccionario de 64 caracteres. El diccionario a utilizarse para efectos del Cdigo de Control es:0, K, e, y, 1, L, f, z, 2, M, g, +, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F, G, H, I, J, N, O, P, Q, R, S, T, U, V, W, X, Y, Z, a, b, c, d, h, i, j, k, l, m, n, o, p, q, r, s, t, u, v, w, x, /

Verhoeff

Base 64

4.2. Insumos Requeridos Para generar un Cdigo de Control, se requiere de la siguiente informacin: Datos de dosificacin Datos de la transaccin comercial Nmero de autorizacin: Dato numrico de 15 dgitos. Nmero de factura: Dato numrico de 12 dgitos. CI o NIT del cliente: Dato numrico de 12 dgitos. Fecha de la transaccin: Dato numrico de 8 dgitos, en el formato AAAAMMDD. Monto total de la transaccin: Importe de la factura sujeto a dbito fiscal. Solo para efectos del Cdigo de Control, este monto deber expresarse sin centavos, redondeado al inmediato superior a partir de los 50 centavos (Segn Art. 11 de la RA N 05-0048-99). En el caso de Notas de Crdito Dbito, el monto a utilizarse ser el de Monto Efectivo delPg.2

Crdito Dbito. Llave de Dosificacin Llave asignada por el SIN a la dosificacin solicitada por el contribuyente. Constituye la llave privada utilizada por el algoritmo de criptografa. Dato alfanumrico de hasta 256 caracteres generado a partir del siguiente diccionario:A, T, m, 5, [, B, U, n, 6, ], C, V, o, 7, {, D, W, p, 8, }, E, X, q, 9, %, F, Y, r, =, $ G, Z, s, #, H, a, t, &, I, b, u, (, J, c, v, ), K, d, w, *, L, e, x, +, M, f, y, -, N, g, z, _, O, h, 0, /, P, i, 1, \, Q, j, 2, , S, l, 4, @,

El Cdigo de Control generado a partir de los algoritmos mencionados, ser un dato alfanumrico de hasta 10 caracteres, representado en grupos de 2 separados por -. 4.3. Proceso de generacin del Cdigo de Control A continuacin se explican en detalle los pasos a seguir para obtener el Cdigo de Control:

Paso 1

Obtener los siguientes datos de la factura: Nmero de autorizacin. Nmero de factura. NIT o CI del cliente. Fecha de la transaccin. Monto total de la transaccin.

Obtener la llave de la dosificacinNmero de autorizacin: Nmero de factura: NIT / CI del cliente: Fecha de la transaccin: Monto total: Llave de la dosificacin:

2901091557 1503 3734314017 20070610 4968 SeSaMo

Paso 2

A cada uno de los datos obtenidos agregarle su dgito verificador Verhoeff.Nmero de autorizacin: Nmero de factura: NIT / CI del cliente: Fecha de la transaccin: Monto total: 29010915579 15031 37343140179 200706101 49689

Paso 3

Obtener la suma aritmtica de las cifras obtenidas en el paso anterior.Nmero de autorizacin: Nmero de factura: NIT / CI del cliente: Fecha de la transaccin: Monto total: Suma Aritmtica: 29010915579 15031 37343140179 200706101 49689

66554826579

Pg.3

Paso 4 Paso 5 Paso 6

Hallar el Mdulo (645 -1) del resultado obtenido.66554826579 Mod (645

-1) = 1056575376

Convertir el resultado obtenido a base 64. ++W+G

Base64(1056575376) =

Usando el algoritmo Alleged RC4 y la llave asignada por el SIN (Ej. SeSaMo), encriptar la informacin obtenida en el paso anterior.AllegedRC4(++W+G, SeSaMo)

= C4 3B 93 A8 25

Paso 7

La informacin resultante del proceso de encriptacin, expresada en formato hexadecimal, se denominar Cdigo de Control y deber ser impresa en cada factura emitida. Cdigo de Control: C4-3B-93-A8-25

5. EJEMPLOS DE GENERACIN DEL CDIGO DE CONTROL Los siguientes son ejemplos de Cdigos de Control generados a partir de los datos propuestos:

Ej.1

Nmero de Autorizacin: Nmero de Factura: NIT / CI del cliente: Fecha de la transaccin: Monto total: Llave de la dosificacin:

3003001255 665 1016253021 20070108 905.23 AbCd3213003001255 665 1016253021 20070108 905

Paso 1

Nmero de Autorizacin: Nmero de Factura: NIT / CI del cliente: Fecha de la transaccin: Monto total:

Paso 2

Nmero de Autorizacin: 30030012557 Nmero de Factura: 6650 NIT / CI del cliente: 10162530216 Fecha de la transaccin: 200701084 Monto total: 9055 Nmero de Autorizacin: 30030012557 Nmero de Factura: 6650 NIT / CI del cliente: 10162530216 Fecha de la transaccin: 200701084 Monto total: 9055 Suma Aritmtica 403932595625

Paso 3

Paso 4 Paso 5

40393259562 Mod (64

-1) = 664812111

Base64(664812111) = de3fF

Pg.4

Paso 6 Paso 7

AllegedRC4(de3fF, AbCd321)

= F0 25 E0 8C F0

Cdigo de Control: F0-25-E0-8C-F0 1001031009 152 3335807012 20061225 54.70 Cat2007WP1001031009 152 3335807012 20061225 55 10010310090 1527 33358070126 200612252 551 10010310090 1527 33358070126 200612252 551 435689945465

Ej. 2

Nmero de autorizacin: Nmero de Factura: NIT / CI del cliente: Fecha de la transaccin: Monto total: Llave de la dosificacin:Nmero de Autorizacin: Nmero de Factura: NIT / CI del cliente: Fecha de la transaccin: Monto total: Nmero de Autorizacin: Nmero de Factura: NIT / CI del cliente: Fecha de la transaccin: Monto total: Nmero de Autorizacin: Nmero de Factura: NIT / CI del cliente: Fecha de la transaccin: Monto total: Suma Aritmtica

Paso 1

Paso 2

Paso 3

Paso 4 Paso 5 Paso 6 Paso 7

43568994546 Mod (64

-1) = 619321626

Base64(619321626) = awXaQ AllegedRC4(awXaQ, Cat2007WP) = 56 1E 2D FA 4A

Cdigo de Control: 56-1E-2D-FA-4A 7001042578 10015 532761011 20070523 2099.50 LlaveSIN7001042578 10015 532761011 20070523 2100 70010425785 100154 5327610111 200705230 21007

Ej. 3

Nmero de autorizacin: Nmero de Factura: NIT / CI del cliente: Fecha de la transaccin: Monto total: Llave de la dosificacin:Nmero de Autorizacin: Nmero de Factura: NIT / CI del cliente: Fecha de la transaccin: Monto total: Nmero de Autorizacin: Nmero de Factura: NIT / CI del cliente: Fecha de la transaccin: Monto total:

Paso 1

Paso 2

Pg.5

Paso 3

Nmero de Autorizacin: Nmero de Factura: NIT / CI del cliente: Fecha de la transaccin: Monto total: Suma Aritmtica

70010425785 100154 5327610111 200705230 21007 75538862287

Paso 4 Paso 5 Paso 6 Paso 7

75538862287 Mod (64

5

-1) = 376934677

Base64(376934677) = MTv4L AllegedRC4(MTv4L, LlaveSIN)

= 0E D2 43 53 F9

Cdigo de Control: 0E-D2-43-53-F9 8001051552 9901 2395639018 20081011 5620.49SinSinSinSinSinSinSinSinSinSin

Ej. 4

Nmero de autorizacin: Nmero de Factura: NIT / CI del cliente: Fecha de la transaccin: Monto total: Llave de la dosificacin:

Paso 1

Nmero de Autorizacin: Nmero de Factura: NIT / CI del cliente: Fecha de la transaccin: Monto total: Nmero de Autorizacin: Nmero de Factura: NIT / CI del cliente: Fecha de la transaccin: Monto total: Nmero de Autorizacin: Nmero de Factura: NIT / CI del cliente: Fecha de la transaccin: Monto total: Suma Aritmtica

8001051552 9901 2395639018 20081011 5620 80010515526 99017 23956390185 200810111 56204 80010515526 99017 23956390185 200810111 56204 104167871043

Paso 2

Paso 3

Paso 4 Paso 5 Paso 6 Paso 7

104167871043 Mod (64

5

-1) = 14914212

Base64(14914212) = uvAaAllegedRC4(uvAa,SinSinSinSinSinSinSinSinSinSin)

= 21 0D B0 6B

Cdigo de Control: 21-0D-B0-6B 790302998529 156214 125877021 20070521 123500 !@#$%&/()=?

Ej. 5

Nmero de autorizacin: Nmero de Factura: NIT / CI del cliente: Fecha de la transaccin: Monto total: Llave de la dosificacin:

Pg.6

Paso 1

Nmero de Autorizacin: 790302998529 Nmero de Factura: 156214 NIT / CI del cliente: 125877021 Fecha de la transaccin: 20070521 Monto total: 123500 Nmero de Autorizacin: 7903029985292 Nmero de Factura: 1562142 NIT / CI del cliente: 1258770215 Fecha de la transaccin: 200705211 Monto total: 1235008 Nmero de Autorizacin: 7903029985292 Nmero de Factura: 1562142 NIT / CI del cliente: 1258770215 Fecha de la transaccin: 200705211 Monto total: 1235008 Suma Aritmtica 79044922578685

Paso 2

Paso 3

Paso 4 Paso 5 Paso 6 Paso 7 6. OTRAS ADECUACIONES

7904492257868 Mod (64

-1) = 678698765

Base64(678698765) = eT1yD AllegedRC4(eT1yD, !@#$%&/()=?) = 16 9E 76 AD 38

Cdigo de Control: 16-9E-76-AD-38

Adems de la implementacin del Cdigo de Control, los contribuyentes debern tomar en cuenta las siguientes adecuaciones para sus Sistemas de Facturacin Computarizada: 6.1. Incorporacin y tratamiento del Nmero de Autorizacin y Fecha Lmite de Emisin, como nuevos datos que conforman la factura. 6.2. Eliminacin de los datos Nmero de Orden y Alfanumrico, dado que ya no se contemplan en la factura. 6.3. Tratamiento de los nuevos formatos, tamaos, colores y materiales para las facturas, establecidos en la RND N 10-0041-06. 6.4. Aplicacin de los nuevos formatos para el Libro de Compras y Ventas IVA, detallados en la RND N 10-0041-06. 6.5. Control de la Fecha Lmite de Emisin para la dosificacin de las facturas o notas fiscales, de manera que a partir de las dos semanas previas a esta fecha, alerte a los usuarios sobre la necesidad de solicitar una nueva dosificacin. 6.6. Pasado el plazo sealado por la Fecha Lmite de Emisin, el Sistema de Facturacin Computarizada no deber permitir la emisin de facturas. 6.7. Considerando la importancia y sensibilidad del proceso de configuracin de la dosificacin en el Sistema de Facturacin Computarizada, este deber contemplar la doble captura de los siguientes datos:

Pg.7

-

Nmero de autorizacin. Nmero inicial de la factura. Fecha lmite de emisin. Llave de dosificacin.

7. REFERENCIAS Alleged RC4: - Pseudocdigo Alleged RC4 - http://www.impuestos.gov.bo/Facturacion/EspAllegedRC4.pdf - RC4 Encryption - http://www.4guysfromrolla.com/webtech/010100-1.shtml - RC4 Test - http://www.4guysfromrolla.com/demos/rc4test.htm - Alleged RC4 - http://www.criptored.upm.es/software/sw_m117a.htm Verhoeff: - Pseudocdigo Verhoeff - http://www.impuestos.gov.bo/Facturacion/EspVERHOEFF.pdf - Check Digits - http://www.augustana.ab.ca/~mohrj/algorithms/checkdigit.html - Verhoeff algorithm - http://en.wikipedia.org/wiki/Verhoeff_algorithm Base 64: - Pseudocdigo Base 64 - http://www.impuestos.gov.bo/Facturacion/EspBASE64.pdf - Conversin de nmeros a palabras - http://mundocripto.com/mambo//content/view/78/43/ Casos de Prueba:http://www.impuestos.gov.bo/Facturacion/CasosPruebaCC.pdf

Novedades Versin 6.0:Aclara el dato de Monto Total de la Transaccin, el mismo que debe corresponder al importe de la factura sujeto a dbito fiscal. Incorpora un acpite relacionado a otras adecuaciones que al margen del Cdigo de Control debe tomar en cuenta el contribuyente.

Novedades Versin 5.0:Aclaracin del dato de Monto Total de la Transaccin que debe utilizarse en el caso de Notas de Crdito - Dbito.

Novedades Versin 4.0:Diccionario para generacin de la Llave de Dosificacin.

Novedades Versin 3.0:Tipos y longitudes de los datos requeridos para generar el Cdigo de Control. Aclaracin de la regla para el redondeo de los montos de las transacciones. Ms ejemplos. Ms referencias

Pg.8