Manual_in..

March 25, 2018 | Author: RickAction | Category: Online Shopping, Web Server, Computer File, Transport Layer Security, World Wide Web


Comments



Description

Transbank S.A.Gerencia de Operaciones y Tecnología Manual de Integración KIT DE CONEXIÓN DE COMERCIO KCC VERSIÓN 5.0 ÍNDICE Nomenclaturas Generales Nuevo en esta versión 1. Introducción 2. ¿Qué es el KCC? 2.1 Plataformas soportadas 2.2 Validación de integridad y autenticidad del KCC 3. Ambientes de Incorporación a Webpay 3.1 Ambiente de Certificación 3.2 Ambiente de Producción 4. Atributos de Webpay 5. Apreciación global del proceso de la Transacción Electrónica 6. Clasificaciones Webpay 6.1 Tipos de Transacciones soportada en esta versión 6.2 Tipos de Moneda 6.3 Tipos de Captura 6.4 Tipos de Pago 6.5 Medios de Conexión 7. Arquitectura del KCC 7.1 Definiciones generales 7.1.1 Subprogramas 7.1.2 Flujo de Información entre Servidor de Comercio y Servidor de Pago 7.1.3 Condiciones de Excepción 8. Integración del KCC con el software de la Tienda Virtual 8.1 Instalación del KCC 8.1.1 Creación de estructura de Directorios 8.1.2 Definición de Permisos 8.1.3 Copia de Archivos 8.2 Configuración del KCC 8.2.1 Configuración del archivo tbk_config.dat 8.2.2 Configuración del archivo tbk_trace.dat 8.2.3 Habilitación de las formas de pago en Webpay 8.3 Creación de Páginas de Comercio 8.3.1 Página de Pago 2 4 5 6 8 8 9 10 10 10 11 12 13 13 13 13 14 15 16 16 16 17 20 23 23 23 24 25 29 30 32 34 35 35 Transbank S.A. 8.3.2 Página de Cierre para confirmar las transacciones 8.3.3 Página de Éxito 8.3.4 Página de Fracaso 8.4 Validaciones Obligatorias en Página de Cierre 8.4.1 Validación de Monto 8.4.2 Validación de MAC 8.4.3 Validación de Duplicidad de Orden de Compra 8.5 Generación de llaves asimétricas productivas 9. Descripción de Tipos de Transacciones 9.1 Transacción Normal 9.2 Transacción Mall Virtual 9.6 Transacción Consulta De Tasa 10. Archivos Generados por el KCC 10.1 Archivo de Log de Eventos 10.2 Archivo de Log de Transacciones (bitácora) 10.3 Códigos De Respuesta ANEXO A ANEXO C ANEXO D ANEXO E ANEXO F ANEXO G 36 36 37 38 38 38 39 40 41 42 44 46 47 47 49 50 51 55 56 58 59 72 3 Transbank S.A. NOMENCLATURAS GENERALES Las principales nomenclaturas utilizadas en este manual son: $(PATH_DISCO_DIRCGI) Descripción Dirección física del comercio donde se instalará el KCC Genérico. Ejemplo C:\inetpub\wwwroot\comercio\cgi-bin\ (Para Windows), /home/comercio/cgi-bin/ (Para Unix). $(PATH_WEB_DIRCGI) Descripción Dirección lógica, asignada por el Servidor Web del comercio al directorio de CGI´s. Ejemplo Donde la URL de la CGI tbk_bp_pago es : http://www.comercio.cl/cgi-bin/tbk_bp_pago.cgi , entonces la dirección lógica sería (PATH_WEB_DIRCGI) = /CGI-BIN $(PREFIJO) Descripción Ejemplo Es el nomenclatura que se utiliza para definir cuál será el nombre del parámetro a utilizar por la página que confirma la transacción. Por ejemplo, si utilizamos como prefijo lo siguiente “HTML_”, confirmar una transacción normal será. HTML_TR_NORMAL. el parámetro para $(TRANSACCION) Descripción Es el nombre de la solución a ejecutar. Ejemplo Las alternativas de solución o transacción a utilizar son: • • • TR_NORMAL TR_MALL TR_TASA_INTERES_MAX $(CODIGO_COMERCIO) Descripción Código asignado por Transbank al comercio. Identifica en forma univoca al comercio. Ejemplo Id = 597026016975 $(SERVIDOR_COMERCIO) Descripción Nombre del Servidor Web del comercio. Ejemplo $(REFERER) Descripción Ejemplo www.comercio.cl URL absoluta de la página de la tienda virtual desde donde se inicializa el proceso de pago con Transbank. http://www.comercio.cl/pago.asp 4 Transbank S.A. . 5 Transbank S.NUEVO EN ESTA VERSIÓN La nueva versión incluye lo siguiente: Filtro y revisión de parámetros de entrada y salida. Manejo vía parámetro de SSL desde tienda del comercio. Encriptación de Parámetros.A. En ese instante la tienda se comunica con Transbank. Luego se le envía una respuesta positiva o negativa a la tienda virtual. Hoy en día constituye una herramienta clave para el desarrollo de un comercio electrónico eficaz y seguro en Chile. INTRODUCCIÓN Webpay es un servicio de pago con Tarjeta de Crédito. Una de ellas esta ubicada físicamente en la tienda virtual. que se separa en dos componentes independientes que interactúan entre sí. . dentro del Servidor de Comercio en donde se genera una posible compra por intermedio del browser de un cliente y la otra en el denominado Servidor de Pago de Transbank a través del cual se realiza la transacción. 6 Transbank S. Una vez ocurrido esto se le devuelve el control a la tienda virtual. Todo el proceso anterior sé gráfica en la Figura 1. Una vez realizado el envío de dicha información directamente a Transbank. Secuencia Webpay: Esta comienza cuando el potencial cliente de una tienda virtual presiona el botón pagar. desarrollado por Transbank para realizar transacciones vía Internet.A. para solicitar autorización para transar la compra. solicitando los datos de su tarjeta. Este servicio se sustenta a través de un software de aplicación. En este punto. así esta puede cerrar la transacción ya sea en forma exitosa o no. la aplicación ubicada en el Servidor de Pago toma el control de la transacción comunicándose directamente con el cliente. se verifica la disponibilidad de cursar la transacción.1. 7 Transbank S. Modalidad Normal de la Transacción Electrónica con Webpay.Figura 1. .A. La integración del KCC. CentOS ) AIX 5. 2. identificado con la sigla KCC. Así la finalidad de este manual es explicar en detalle como realizar la integración entre el KCC y el software de venta de la tienda virtual. Suse.0 Windows 2000 Windows 2003 Linux Kernel 2.4 ( Redhat. .2. Etapa de Producción: Corresponde al funcionamiento productivo de la solución en régimen de operación normal. consta de 2 etapas: Etapa de Certificación: Corresponde a la etapa en donde se valida el correcto funcionamiento de la integración del KCC en la tienda del comercio. Debian ) Linux Kernel 2. ¿QUÉ ES EL KCC? Es la aplicación que se instala en el Servidor de Comercio que permite conectar el software utilizado por la tienda para vender sus productos y/o servicios. Suse. con el Servidor de Pago de Transbank.3 Solaris 8.1 PLATAFORMAS SOPORTADAS Las siguientes son las plataformas soportadas por KCC Windows NT 4. Debian. Ubuntu. Para que el KCC se conecte y logre comunicarse sin problemas con el Servidor de Pago es necesario su correcta instalación y configuración por parte del comercio afiliado al servicio Webpay de Transbank. Es un Kit De Conexión al Comercio. 9 y 10 8 Transbank S.6 ( Redhat.A. cgi Hash md5 f87af1cf7fd2248c98ca2231fdbe54ef 699c173cc28d2bc4f72c44182c925b70 c79c08ff7feacc1c9d2aba0e8ffb51f4 d61ebe80c19deb39ce76f9424e9967bd 7530c99b3e790d365a98512c781afa25 ece9e839459421336f75dc034ce68218 2b54846718524153e93480a75ad5632c b7b2c18f1452ec7a59f442ed117893f4 04541f0ca857d8b252b2d4893f5e866e d6f1b9e21cb2763a1e612a55bf7d01ad 1a92c5239e9f21b2ae8e91874ef91ef3 c417e87731d5350c8ee24f93c71d545c 48506142ef36af1d5b9633faec888e77 80187576e3293db5c825da87b9463827 ba4f20dc12469a7c6cca27eb66b25c64 Información: md5sum es un comando de los sistemas Unix que permite identificar la integridad de un fichero mediante de la suma de comprobación del hash MD5 de un archivo.2.ZIP) Linux 7 (KCC5-LR7.cgi Resultado esperado para KCC Windows: f87af1cf7fd2248c98ca2231fdbe54ef 9 Transbank S. Es muy utilizado por su sencillez de uso.ZIP) AIX (KCC5-AIX.cgi tbk_bp_resultado.cgi tbk_check_mac.cgi tbk_bp_pago.cgi tbk_check_mac. se ha incorporado en este manual el hash MD5 correspondiente a los principales compomentes del kit para cada plataforma. .cgi tbk_bp_resultado.cgi tbk_bp_resultado.A. siendo relativamente sencillo el comprobar si un determinado archivo se ha descargado correctamente o por el contrario ha ocurrido algún problema Ejemplo de uso: #md5sum tbk_bp_pago.ZIP) Solaris (KCC5-SUN.ZIP) Componente tbk_bp_pago.cgi tbk_bp_resultado.cgi tbk_bp_pago.cgi tbk_check_mac.cgi tbk_bp_resultado. Plataforma Windows (KCC5-WIN.cgi tbk_check_mac.cgi tbk_bp_pago.ZIP) Linux 4 (KCC5-LR4. potencia y popularidad.cgi tbk_bp_pago.cgi tbk_check_mac.2 VALIDACIÓN DE INTEGRIDAD Y AUTENTICIDAD DEL KCC Con el objetivo de asegurar la integridad y autenticidad del Kit de Conexión de Comercio. 1 Ambiente de Certificación El ambiente de certificación es un ambiente especialmente creado para efectuar. Referirse al Anexo D para ver detalles exigidos en este proceso. para que lo integre a su tienda virtual y realice transacciones hacia el ambiente de certificación. Para mayor información consultar Anexo A. En este ambiente.transbank. por lo cual no se requieren datos reales. . 3. sino de pruebas. en modalidad de pruebas. la URL y puerto de comunicación con Webpay productivo de Transbank son: URL : https://webpay. Ambiente de Producción. Durante el proceso de integración se le entrega al cliente (comercio) el KCC versión 5. transacciones Webpay.2 Ambiente de Producción Una vez finalizada la integración y certificada con éxito.A. para esto se realizan transacciones de prueba desde la tienda virtual hacia el ambiente de certificación. AMBIENTES DE INCORPORACIÓN A WEBPAY Para el proceso de incorporación de Webpay a una tienda virtual existen dos ambientes de conexión: Ambiente de Certificación. Una vez realizada la integración es necesario certificarla.3. el comercio pasa a la última fase denominada producción en donde la tienda ya esta habilitada para trabajar con Webpay sin problemas. las transacciones son simuladas. 3. y se verifica el funcionamiento global del sistema. Para fines de configuración.cl PORT : 443 10 Transbank S. ATRIBUTOS DE WEBPAY Permite realizar transacciones seguras y en línea a través de Internet. Encriptación de mensajería y firma digital. protegidos con SSL (Secure Socket Layer). y no es de conocimiento en ningún momento por el comercio. 11 Transbank S.4. La seguridad es reforzada por medio de la utilización de servidores seguros. . La información de la Tarjeta de Crédito del cliente sólo es manejada por Transbank.A. 12 Transbank S. el resultado de este proceso es comunicado al comercio a través de un segundo CGI denominado tbk_bp_resultado. .A. decide adquirir alguno de sus productos y/o servicios con una tarjeta de crédito por medio del sistema de pago Webpay. en donde se realiza todo el proceso de validación de la compra con la tarjeta especificada. y desde su browser. En este instante un subprograma (CGI) del KCC denominado tbk_bp_pago inicia la comunicación con Transbank. APRECIACIÓN ELECTRÓNICA GLOBAL DEL PROCESO DE LA TRANSACCIÓN La Transacción Electrónica comienza luego que un potencial cliente accede a la tienda virtual afiliada a Transbank.5. 1 Tipos de Transacciones soportada en esta versión Tipo Transacción Normal Descripción Permite la compra de productos y/o servicios a través de Internet. las cuales puede brindar una solución tecnológica a una amplia gama de modelos de operación de tiendas virtuales.6. CLASIFICACIONES WEBPAY Tomando en cuenta que cada comercio es en si una entidad única y con requerimientos propios. es decir. 13 . El cargo del pago se hace simultáneamente en la tarjeta de crédito del cliente. 6. Esto debido a que se pueden realizar compras con tarjetas emitidas en el extranjero con cupo en dólares y validas internacionalmente. ejemplo: verificación de stock. se permite elegir el tipo de moneda de la transacción. Permite que un grupo de tiendas virtuales realicen ventas en conjunto generando sólo un total de venta final.2 Tipos de Moneda Además de las clasificaciones de empleo de Webpay mencionadas anteriormente. Existe un tiempo máximo estipulado para realizar esto último. o varios productos y/o servicios agrupados en un carro de compra entregan un total final. Mall Virtual 6. transacción y software de comercio utilizado. 6.3 Tipos de Captura Se permiten dos formas de captura de la transacción electrónica estas son: Tipo de Captura Simultanea Descripción Es la utilizada cuando la transacción es validada en línea por Transbank.A. el sistema Webpay soporta dos tipos de transacciones. de no ser así la retención de la tarjeta de crédito del cliente será reversada. aquí lo que se hace es retener el valor de la compra del saldo de la tarjeta del cliente sin validar la transacción hasta que el comercio apruebe la compra y lo comunique a Transbank. Está directamente asociado a una sola tienda virtual. Esta modalidad ópera de forma que uno. Transbank S. este debe ser integrado a cada comercio en particular de acuerdo al tipo de plataforma. de venta a pagar. peso o dólar. Captura Diferida Observación: A pesar que el KCC ha sido desarrollado para ser utilizado por cualquier tienda virtual. Es utilizada cuando el comercio por diversas razones. no puede realizar la transacción en tiempo real. la única condición que Transbank impone a los comercios. Observación: En la forma de pago “Cuotas Comercio”.A. se realiza una validación de esta tasa para todas aquellas transacciones que utilicen esta forma de pago. Se deben considerar una cantidad de cuotas entre 6 y 24. 14 Transbank S.6. . El comercio ofrece al tarjetahabiente pagar sus producto. Para velar por que tal condición se cumpla. Corresponde al pago de un producto en una cantidad de cuotas establecida por el tarjetahabiente. Esto implica que la información principal en cada transacción la constituye el precio contado del producto.4 Tipos de Pago Actualmente existen cuatro tipos de pago posibles. en cuotas iguales y conocidas por él. es que en el cálculo del monto de la cuota no supere el límite correspondiente a la tasa de interés máxima legal. el valor y número de cuotas. (Ver Anexo E). Estas se detallan a continuación: Tipo de Pago Venta Normal Venta Cuotas Tres Cuotas Sin Interés Cuotas Comercio Descripción Corresponde al pago total del precio establecido por la tienda para el producto en cuestión. Corresponde al pago de un producto en tres cuotas precio contado. este parámetro se encuentra ubicado en el archivo tbk_config. Los valores que este parámetro puede tomar son: 1 ó 2.dat.5 Medios de Conexión El medio de conexión depende si los puertos seguros de comunicación están habilitados o no en los servidores en donde reside la tienda y KCC. Si los puertos seguros no se encuentran abiertos. por el cual se envían los datos encriptados y en segundo plano.6. el cual se abre un canal seguro de comunicación SSL. . la alternativa por defecto es la 2. • • La alternativa 1 es la nueva alternativa de conexión (SSL). Observaciones: • • Si el parámetro no se encontrase en el archivo de configuración. La alternativa 2 de conexión a través de redirección por medio de Java script.A. 15 Transbank S. El parámetro MEDCOM es quien da la modalidad de conexión. la alternativa de conexión 1 no funcionará. por lo que la alternativa de conexión que se debiese escoger en este caso es la 2. CGI a .EXE de acuerdo a la plataforma utilizada. 16 Transbank S. . TBK_BP_PAGO Es el encargado de hacer el requerimiento al Servidor de Pagos. Errores ocurridos. recibiendo de dicha conexión el Token o número único de la transacción.EXE para Windows). (.CGI para Linux y . La extensión de tbk_check_mac puede variar de .7. agregando el MAC (código de encriptación).A. Subprogramas utilizados en el KCC.1. derivándole a Transbank. Redirecciona el Tarjetahabiente a Transbank con el Token dado. ARQUITECTURA DEL KCC 7.1 Definiciones generales El KCC es una aplicación que básicamente esta compuesta por: • • • • • Subprogramas Archivos de configuración Archivos de seguridad Archivos de registro Páginas Web 7. Conecta con Servidor de Pagos para envío de parámetros encriptados. el control del browser del tarjetahabiente.1 Subprogramas Subprograma Pago Resultado de la Transacción Verificación de Firma Digital Nombre del Archivo tbk_bp_pago tbk_bp_resultado tbk_check_mac Tabla 1. Funciones que realiza: • • • • • • Firma el mensaje. Registra en el log de eventos: Resultado de las operaciones. . estos son: • • • bp_validacion bp_revision bp_transaccion 7. Es una herramienta que se utiliza para asegurar que la respuesta provenga exactamente desde Transbank.A. El tarjetahabiente realiza una compra con tarjeta de crédito en una tienda virtual a través del servicio Webpay de Transbank. en el Servidor de Pago existen tres subprogramas que son los encargados de comunicarse con los subprogramas del KCC.TBK_BP_RESULTADO Se encarga de recibir la respuesta desde el Servidor de Pagos.2 Flujo de Información entre Servidor de Comercio y Servidor de Pago A continuación se explica el flujo de información para el tipo de transacción normal entre el Servidor de Comercio y el Servidor de Pago. Recibe resultado de la transacción encriptada. URL de Fracaso. URL de Éxito. 17 Transbank S. Envía la confirmación o rechazo del cierre de la compra con el comercio (aceptación o rechazo por parte del comercio). Funciones que realiza: • • • • • Valida el MAC. TBK_CHECK_MAC Encargado de validar el MAC de encriptación utilizado en las respuestas que entrega Transbank al comercio. Observación: Por el lado de Transbank. • El software de la tienda ejecuta tbk_bp_pago entregándole los siguientes parámetros: o o o o Monto de la compra. transferirla al software del comercio y solicitar la entrega del control del browser del tarjetahabiente a una página definida por la tienda. Confirma con el comercio el cierre de las compras pasando todos los parámetros recibidos.1. Desencripta parámetros recibidos. Número de Orden de Compra. En caso de rechazo.A. bp_validacion desencripta la información y genera Token o número único de Transacción.• • • • • • tbk_bp_pago se conecta con bp_validacion ubicado en el servidor de Transbank. verifica que no está ya pagada y procede a cerrar la transacción registrando el código de autorización de Transbank. Una vez realizado esto se devuelve un string de “ACEPTADO” que indica que la operación fue realizada con éxito. El tarjetahabiente digita los datos requeridos de su tarjeta y presiona el botón “Pagar” La transacción es autorizada o rechazada por Transbank. En caso de aprobación. bp_validacion retorna Token a tbk_bp_pago del comercio. en la tienda virtual. tbk_bp_resultado registra la transacción en su archivo log y confirma el resultado a Transbank. 18 Transbank S. y su resultado es comunicado a través de parámetros encriptados bp_transaccion (Servidor de Pago). bp_revision busca información de la transacción según Token y despliega la ventana de solicitud de datos al tarjetahabiente. • • • Observación: El string “ACEPTADO” debe ser devuelto en mayúsculas para que este sea reconocido por la aplicación. comunicándole el número de la orden de compra y el código de autorización asignado por Transbank. a tbk_bp_resultado en el Servidor de Comercio. La tienda virtual busca en su base de datos el número de la orden de compra. tbk_bp_resultado ejecuta una página (página de cierre). . tbk_bp_resultado recibe “ACEPTADO” y confirma la transacción hacia Transbank Finalmente se redirecciona la página del tarjetahabiente a la página de éxito o fracaso según corresponda. valida comercio. tbk_bp_pago redirecciona al tarjetahabiente a bp_revision de Transbank. El flujo de información se muestra gráficamente en la Figura 2. Figura 2. Flujo de Información Webpay Modalidad Normal 19 Transbank S.A. . de que fue realizado el cierre de la compra por parte del comercio es elevado.7. por parte de Transbank.1. de la comprobación (ACK). . estas son: • Timeout: El timeout se produce cuando el tiempo de espera. Error en Cierre de la Compra: Este ocurre cuando el String de confirmación del cierre de la compra es distinto de “ACEPTADO”. Se asume por lo tanto que la compra nunca fue realizada.A.3 Condiciones de Excepción Las condiciones de excepción son ciertas instancias del proceso que hacen que la transacción sea reversada cuando no se cumplen algunas condiciones básicas. • 20 Transbank S. cgi exito/fracaso Secuencia transaccional para MEDCOM = 1 .Cliente Browser Comercio KCC Parametros Token Token Transbank Webpay Emisor Web Pago bp_validacion.cgi Ingreso Tarjeta Token.cgi Token getDataAut Página Autenticación Login Password Token setResultAut valida Autenticación bp_auth_emisor.cgi Token tbk_bp_resultado bp_transaccion. datos tarjeta bp_control.cgi tbk_bp_pago.cgi Token bp_revision. cgi exito/fracaso Secuencia transaccional para MEDCOM = 2 22 Transbank S.cgi bp_revision.A.cgi token Ingreso Tarjeta Token. .cgi Token tbk_bp_resultado bp_transaccion.cgi Token getDataAut Página Autenticación Login Password Token setResultAut valida Autenticación bp_auth_emisor.Cliente Browser Comercio KCC Transbank Webpay Emisor Web Pago Param encrypt Private Key tbk_bp_pago. datos tarjeta bp_control. INTEGRACIÓN DEL KCC CON EL SOFTWARE DE LA TIENDA VIRTUAL En la instalación del KCC en el sitio del comercio hay aspectos que varían entre un comercio y otro. 3. Asignar permisos de ejecución para el usuario Web. .dat. así hay algunas decisiones en la instalación que se dejan a criterio del comercio. KCC.Definición de permisos. Crear un directorio vacío con el nombre $(PATH_DISCO_DIRCGI).1 Creación de estructura de Directorios Directorio Base La aplicación se debe alojar en un directorio base para facilitar su ubicación y posterior configuración.dat . por ejemplo. . Configurar el servidor Web para agregar un directorio de CGIs en la ubicación $(PATH_DISCO_DIRCGI) cuya ubicación lógica sea PATH_WEB_DIRCGI).1.Creación de estructura de directorios. Los pasos necesarios para la integración del KCC genérico con un software de comercio electrónico son los siguientes: Pasos Instalación del KCC. .Páginas para confirmar las transacciones.Copia de archivos. Esto debido a que no todos los comercios tienen los mismos software instalados (Servidor Web y Software de Comercio Electrónico principalmente).A. 23 Transbank S. 8. así se debe crear un directorio base denominado.Páginas de llamada al KCC. . . Directorio CGI-BIN El segundo paso para la instalación del KCC en el sitio del comercio es crear un directorio de CGIs dentro del directorio base. .Archivo de configuración tbk_config.8.1 Instalación del KCC 8.Archivo de configuración tbk_trace. Para ello hay que ejecutar las siguientes acciones: 1. Configuración del KCC Creación de páginas de comercio. Detalle . 2. A. se deben crear los siguientes subdirectorios: datos log maestros template 8.2 Definición de Permisos Sistema Operativo Para el usuario web se le deben otorgar los siguientes permisos a los directorios creados. así dentro del directorio $(PATH_DISCO_DIRCGI). Observación: En el caso de Unix. .1.Sub-Directorios El KCC posee una estructura de directorios determinada para alojar sus archivos. Asignación de Permisos. 24 Transbank S. se debe agregar permiso de ejecución a todos los directorios para poder acceder a los archivos ubicados dentro de ellos. Directorio cgi-bin datos log maestros Template Lectura x x x x Escritura x Ejecución x Tabla 2. del cierre de compra.3 Copia de Archivos Dentro de la estructura de directorios definida anteriormente se deben copiar los siguientes archivos. módulo ejecutable. • Conectar a Servidor de Pago para toma de parámetros. Ningún permiso Ningún permiso Ningún permiso 8.3. Se utiliza para brindar una mayor seguridad a la transacción. ubicado en Servidor de Pago de Transbank encargado de realizar redireccionamiento del cliente a la página de éxito o fracaso de transacción del comercio. • Firmar el mensaje.Servidor Web Se deben habilitar sólo los siguientes permisos en el Servidor Web a los directorios virtuales: Directorio Virtual / cgi-bin / cgi-bin / log / cgi-bin / datos / cgi-bin / maestros Atributos Permitir ejecución de cgi utilizando el método POST. • Validar el MAC.cgi. Ubicación $(PATH_DISCO_DIRCGI) Permiso Lectura y Ejecución tbk_bp_resultado.2). agregando el MAC. Permite: • Traspaso de datos de la transacción y del comercio a Transbank.A. módulo ejecutable. a través de página de cierre (ver punto 8. tbk_bp_pago. Ubicación $(PATH_DISCO_DIRCGI) Permiso Lectura y Ejecución 25 Transbank S.1. Ubicación $(PATH_DISCO_DIRCGI) Permiso Lectura y Ejecución la la el el la tbk_check_mac. • Confirmar con el comercio el cierre de la compra. • Redireccionar al Tarjetahabiente al Servidor de Pago en Transbank.cgi Descripción Programa CGI. . ya sea exitosa o no. • Realizar la confirmación. enlazándose con el CGI bp_transaccion.cgi Descripción Programa CGI.exe (Windows) – tbk_check_mac.cgi (otras plataformas) Descripción Programa que permite asegurar que la página de confirmación del comercio es llamada desde el programa tbk_bp_resultado. Permite: • Recibir resultado de la transacción. log $(PATH_DISCO_DIRCGI)/log Lectura y escritura. 26 Transbank S.dat Descripción Archivo que permite almacenar el resultado de las operaciones realizadas durante el mes de acuerdo al tipo de transacción habilitado. Puede ser editado con un editor de texto.A. Ejemplo Ubicación Permiso Puede ser visualizado con un editor de texto. . Donde Fecha: • • • Ejemplo Ubicación Permiso aaaa: cuatro dígitos de año. Se genera por día físico. Se genera por fecha contable. tbk_trace.dat Descripción Archivo que permite almacenar el resultado de las operaciones.log $(PATH_DISCO_DIRCGI)/log Lectura y escritura. Puede ser visualizado con un editor de texto.dat Descripción Archivo de configuración que define el nivel de detalle del registro de eventos del KCC (Log). mm: dos dígitos de mes. Donde: tipo_de_transacción: • Normal: tr_normal.tbk_config. Ubicación $(PATH_DISCO_DIRCGI)/datos Permiso Lectura. tbk_evn20000410. puede ser editado con un editor de texto. tbk_evn_fecha. Permite almacenar datos de configuración que definirán la forma en que operará la tienda en cada transacción. tbk_bitacora_tr_normal_0407. Ubicación $(PATH_DISCO_DIRCGI)/datos Permiso Lectura. • dd: dos dígitos de día. Tbk_bitacora_tipo_de_transaccion_fecha. • Mall Virtual: tr_mall fecha: • mm: dos dígitos de mes. dd: dos dígitos de día.dat Descripción Archivo de configuración del KCC. gif Descripción Ubicación Permiso Archivo de presentación gráfica. Ubicación $(PATH_DISCO_DIRCGI)/tbkimages Permiso Lectura. 27 Transbank S. Ubicación $(PATH_DISCO_DIRCGI)/maestros. documento.gif Descripción Archivo de presentación gráfica. $(PATH_DISCO_DIRCGI)/tbkimages Lectura. background.privada. Permiso Lectura.pem Descripción Llave de encriptación de información enviada a través de Internet a Transbank. Reintento. fondo de página web Ubicación $(PATH_DISCO_DIRCGI)/tbkimages Permiso Lectura. Ubicación $(PATH_DISCO_DIRCGI)/templates. Permiso Lectura.A. $(PATH_DISCO_DIRCGI)/tbkimages Lectura. webpay. Ubicación $(PATH_DISCO_DIRCGI)/datos Permiso Lectura.txt Descripción Archivo de texto que contiene los parámetros que deben recibir los CGIs bp_pago y bp_resultado dependiendo del tipo de transacción. tbk_param.js Descripción Archivo que contiene funciones java script utilizadas en páginas web. Ubicación $(PATH_DISCO_DIRCGI)/tbkimages Permiso Lectura.gif Descripción Ubicación Permiso Archivo de presentación gráfica. barra. logotipo de Webpay. hoja de estilo web.css Descripción Archivo de presentación gráfica. .htm Descripción Página que se despliega en caso de ocurrir un error de CGI. documento. barra de transición o de espera. cgi tbk_check_mac.html transicion.css documento.log.exe 28 Transbank S.log maestros privada.Estructura final: cgi-bin tbk_bp_pago. .html tbkimages background.gif Observación: Al momento de subir los archivos al servidor de comercio se debe establecer en la aplicación utilizada el modo de envió como sigue: Tipo ASCII BINARIO Extensión *.asp *.cgi datos tbk_config.js webpay. *.gif documento.A.gif barra.html. *.dat log TBK_EVNAAAAMMDD tbk_evnAAAAMMDD.cgi tbk_bp_resultado.cgi. *.dat.dat tbk_param.pem template reintento.log tbk_bitacora_Tipo_transacción_AAAMMDD. *.txt tbk_trace. 8. Ejemplo: WHITELISTCOM=ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789./:=&?_ Observación: Solamente puede ir un parámetro por línea.dat tbk_trace. 29 Transbank S.2 Configuración del KCC Los archivos de configuración del KCC son: • • tbk_config.dat Y los parámetros que en ellos se configuran tienen la forma: $(NOMBRE_PARAMETRO) = $(VALOR_PARAMETRO) Donde: • • $(NOMBRE_PARAMETRO): Corresponde al nombre del parámetro a configurar. . $(VALOR_PARAMETRO): Valor asignado a dicho parámetro.A. de ser así.22. 1: Conexión segura (SSL) a bp_validacion redireccionamiento a bp_revision 2: Conexión por redirección a bp_revision y posterior Ejemplo 1 PARAMVERIFCOM Valor 0o1 Descripción PARAMVERIFCOM es 0.2. .dat Este archivo configura el comportamiento general del KCC. no se realiza el filtro y revisión de parámetros.8. Ejemplo 1 URLCGICOM Valor $(PATH_WEB_ DIRCGI)/tbk_bp_resultado. PORT = 80 WHITELISTCOM Valor $(Lista Blanca) Descripción Listado de caracteres permitidos en los parámetros enviados por POST o GET Ejemplo ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.1 Configuración del archivo tbk_config. Ejemplo SERVERCOM = 198. Ejemplo IDCOMERCIO = 597026016975 MEDCOM Valor Descripción $(Medio Conexión) Posibles valores: 1 o 2 Existe la posibilidad que el parámetro no este en el archivo de configuración. si realiza./: =&?_ 30 Transbank S.29 PORTCOM Valor Descripción Ejemplo $(PUERTO_COMERCIO) Puerto asignado al servidor Web del comercio donde está el CGI tbk_bp_resultado. IDCOMERCIO Valor $(CODIGO_COMERCIO) Descripción Código numérico de 12 dígitos asignado por Transbank al comercio de acuerdo a la modalidad adoptada.A.cgi Descripción Path web donde se encuentra el cgi tbk_bp_resultado Ejemplo URLCGICOM = /cgi-bin/tbk_bp_resultado. si es 1.cgi SERVERCOM Valor $(SERVIDOR_COMERCIO) Descripción Numero IP del servidor Web del comercio donde está el cgi tbk_bp_resultado Largo máximo 12 dígitos. tiene los siguientes parámetros.250. la opción por defecto es la 2. desde donde se ejecuta el cgi tbk_bp_pago.cgi SERVERTRA Valor Descripción Ejemplo PORTTRA Valor Descripción Ejemplo $(SERVIDOR_TRANSBANK) Nombre o IP del servidor de Transbank donde se ejecutan las transacciones de WebPay.HOST Valor Descripción Ejemplo WPORT Valor Descripción Ejemplo URLCGITRA Valor Descripción Ejemplo $(SERVIDOR_CONFIRMACION_COMERCIO) IP del servidor Web del comercio donde están las páginas de confirmación de las transacciones por parte del comercio. URLCGITRA = /cgi-bin/bp_revision. Ejemplo http://www. HOST = 198. WPORT = 80 /cgi-bin/bp_revision.cl/pago.cl $(PUERTO_TRANSBANK) Puerto asignado al servidor Web de Transbank donde se ejecutan las transacciones Webpay.cgi Path Web del cgi bp_revision en Transbank. Puerto asignado al servidor Web del comercio donde están las páginas de confirmación de las transacciones por parte del comercio. Ejemplo URLCGIMEDTRA = /cgi-bin/bp_validacion. PORTTRA = 6443 PREFIJO_CONF_TR Valor $(PREFIJO) Descripción Prefijo que contiene el nombre del parámetro que indica cual es la página que se ejecuta en el comercio para confirmar la transacción. SERVERTRA = https://certificacion.22.cgi URLCGIMEDTRA Valor /cgi-bin/bp_validacion. Incluye el prefijo https.cgi Descripción Path Web del cgi bp_validacion en Transbank.webpay. .250.comercio. Ejemplo PREFIJO_CONF_TR=HTML_ TBK_REFERER Valor $(REFERER) Descripción URL absoluta que debe indicar la dirección de la página encargada de inicializar el proceso de pago.29 $(PUERTO_CONFIRMACIÓN_COMERCIO). es decir.A.asp 31 Transbank S. : GLEVEL = 7 Los niveles posibles de log son: Nivel LOGINFO LOGERROR LOG_FATAL Valor 1 2 4 Descripción El KCC genera logs informativos.8. . Ej.dat Configura el nivel de logs que reporta el KCC.A.2 Configuración del archivo tbk_trace. El KCC genera logs de errores. El KCC genera logs Fatales 32 Transbank S. este tiene los siguientes parámetros. GLEVEL Valor Descripción $(NIVEL_LOG) Nivel de logs que genera el KCC.2. De esta manera los valores posibles del parámetro GLEVEL son: Valor 0 1 2 3 4 5 6 7 Nivel de Log No hay logs.A. LOGINFO LOGERROR LOGINFO+LOGERROR LOGFATAL LOGFATAL+LOGINFO LOGFATAL+LOGERROR LOGINFO+LOGERROR+LOGFATAL 33 Transbank S. .También existen las combinaciones de nivel de logs. . Formulario de Pago Estándar 34 Transbank S. Estas son habilitadas automáticamente por Transbank desde el momento en que la tienda comienza a operar con Webpay. venta cuotas y tres cuotas sin interés se habilitan en el formulario de pago estándar de Transbank y le permiten al tarjetahabiente seleccionar la opción a utilizar.8. Ver Figura 3.A.2. Las formas de pago venta normal. Ver Figura 4. Figura 3. La forma de pago cuotas comercio se despliega en un formulario de pago especial que no le permite al tarjetahabiente cambiar su opción de pago.3 Habilitación de las formas de pago en Webpay Las formas de pago que acepta cada tienda en particular son una definición comercial. 3 Creación de Páginas de Comercio El último paso en la integración del KCC con el software del comercio. 8.1 Página de Pago Por cada transacción Webpay que el comercio quiera ejecutar deberá crear una página dinámica de pago.A.cgi con los parámetros adecuados de acuerdo a la transacción y que se especifican más delante. esta es la página que tiene el botón pagar y llama al CGI tbk_bp_pago.asp Ubicación Permiso Directorio base Lectura 35 Transbank S. es la creación de cuatro páginas dinámicas por parte de la tienda para conectarse con el KCC.3. Formulario de Pago para Cuotas Comercio.Figura 4. . 8.cgi con los parámetros adecuados. Ejemplo: Default. que haga la llamada al CGI tbk_bp_pago. Así. “ACEPTADO”. Ejemplo: Xt_compra. a Transbank.asp Ubicación Permiso Directorio base Lectura y Escritura 36 Transbank S. esta página deberá ser capaz de realizar las operaciones necesarias (validación ver punto 8.4. ésta en realidad no debe ser una página HTML pura. capaz de generar HTML como salida. Ejemplo: Exito. la salida estándar de esta página debe devolver el String (HTML).3.2. esta página debe ser programada por el comercio con el fin de despleghar información de la transacción.4 y almacenaje de parámetros). jsp. los parámetros que se indican en el punto 8. montos. el String de salida deberá ser “RECHAZADO”. La página de cierre recibirá por método POST.3.). para confirmar la transacción.3 Página de Éxito Se define como la página que indica al cliente del comercio que su transacción fue realizada con éxito. 8. . sino más bien una página dinámica (cgi. asp. desde el punto de vista del comercio.8. Si el comercio aprueba la transacción. productos/servicios. etc. en tal caso la transacción es reversada. etc. Por otro lado si el comercio rechaza la transacción.asp Ubicación Directorio base Permiso Lectura y Escritura Observaciones: Dado que esta página debe ser capaz de recibir datos por método POST y además ejecutar acciones. php. Con ellos. en tal caso la CGI tbk_bp_resultado se encarga de realizar la confirmación (ACK).2 Página de Cierre para confirmar las transacciones Esta página denominada página de cierre es ejecutada por el cgi tbk_bp_resultado y tiene la finalidad de confirmar la transacción por parte del comercio. por ejemplo: orden de compra.A. Las páginas de éxito. .4 Página de Fracaso Se define cómo la página que indica al cliente del comercio que su transacción no pudo ser realizada.3. ésta debe ser programada por el comercio.asp Ubicación Permiso Directorio base Lectura Observaciones: • Para Tipo Transacción Mall Virtual la página de éxito se reemplaza por una página de resultado en donde se encuentra una lista con todas las transacciones aceptadas y rechazadas.8.A. • 37 Transbank S. fracaso y resultado son invocadas mediante el método POST. Ejemplo: Fracaso. la totalidad de los parámetros se pueden obtener llamando al método “Form” del objeto “Request” sin parámetros (data = Request. Para tal efecto. El orden de los parámetros recibidos es: TBK_ORDEN_COMPRA TBK_CODIGO_COMERCIO TBK_CODIGO_COMERCIO_ENC TBK_TIPO_TRANSACCION TBK_RESPUESTA TBK_MONTO TBK_CODIGO_AUTORIZACION TBK_FINAL_NUMERO_TARJETA TBK_FECHA_CONTABLE TBK_FECHA_TRANSACCION TBK_HORA_TRANSACCION TBK_ID_SESION TBK_ID_TRANSACCION ← TBK_TIPO_PAGO TBK_NUMERO_CUOTAS TBK_MAC 38 Transbank S. es importante asegurar que sólo sea invocada desde la CGI tbk_bp_resultado instalado en el comercio.1 Validación de Monto Para aumentar la seguridad de la tienda virtual. la página de cierre debe generar un archivo de texto con los parámetros recibidos desde tbk_bp_resultado. .4. Para chequear los parámetros de respuesta utilizando el programa tbk_check_mac. La CGI tbk_bp_resultado entrega a la página de cierre un parámetro con el nombre TBK_MAC que contiene la firma digital de los datos entregados. En la página de pago se guarda la información.8. 8. se entrega a la página de cierre el parámetro TBK_MONTO ó TBK_MONTO_TIENDA_MXXX de acuerdo a la transacción usada. Para la validación de dicha firma se entrega el programa tbk_check_mac el cuál se encarga de verificar esta firma retornando la palabra “CORRECTO” en el caso que sea válida o la palabra “INVALIDO” en caso contrario.4 Validaciones Obligatorias en Página de Cierre 8.2 Validación de MAC Debido a que la página de cierre es la que define finalmente la ejecución de la transacción.A. en el mismo formato y orden en que llegan a la tienda y entregar al programa como parámetro la ubicación y nombre del archivo. en el caso de páginas programadas en ASP. Así la tienda virtual debe validar el monto que pide autorizar con el monto autorizado por Transbank. Para lo anterior es necesario realizar una validación de la firma digital.Form ()). además escribe en la salida estándar la razón del error. Transbank exige la realización de una validación del monto de cada transacción. Por ejemplo. En el caso de error.4. se envía el String “RECHAZADO” y si no existe se graba el código de autorización a dicha orden de compra y se envía un String “ACEPTADO”.A. .getParameter("TBK_ORDEN_COMPRA") . en caso de que estos sean recuperados uno a uno por su nombre. Lenguajes como Java no aseguran que el orden de recuperación de los parámetros sea el mismo con el que fueron enviados.3 Validación de Duplicidad de Orden de Compra Si la tienda permite pagar dos órdenes de compra idénticas esto significaría un doble cargo al tarjetahabiente de una misma compra. la respuesta de check_mac siempre será INVALIDO. ejemplo: request. si existe (significa que ya fue pagada). en la base de datos de la tienda no exista un código de autorización asociado. para ello se debe contemplar los siguientes pasos: Grabar Orden de Compra en la Base de datos antes de realizar el pago.4. Si el orden de los parámetros no es el original. que para dicha orden de compra. como parte del nombre del archivo. 39 Transbank S. Verificar. Se debe tener en cuenta el orden de recuperación parámetros. • 8. Para lo anterior se recomienda utilizar. de acuerdo a la respuesta que envía Transbank a la tienda virtual.Observaciones: • Para generar el nombre del archivo se requiere usar un nombre distinto para cada transacción ejecutada. De acuerdo a lo anterior se debe contemplar en la tienda un manejo de la duplicidad de órdenes. el valor que viene en el parámetro “TBK_ID_TRANSACCIÓN”. Clave privada RSA guardada en archivo privada..pem contiene su llave privada.A.exe) o utilizar las librerías OpenSSL: Generación de llaves con OpenSSL: # openssl genrsa -out privada.pem 1024 # openssl rsa -in privada. Generación de llaves con herramienta genkey (sólo plataforma Windows): 40 Transbank S. ..pem #genkey 1024 ↵ Generacion de LLaves para KCC 5..pem El archivo privada.5 Generación de llaves asimétricas productivas Para generar las llaves asimétricas se puede utilizar la aplicación proporcionada por Transbank (genkey.8. este es secreto y debe ser cargado en el KCC.pem -pubout -out publica.0 Webpay Transbank Ingrese su codigo de comercio:1234556 Tamano Llave: 1024 generando llaves. 9.txt. Ejemplo para Transacción normal: <TR_NORMAL> TBK_TIPO_TRANSACCION#A#50#1 TBK_MONTO#M#10#1 TBK_ORDEN_COMPRA#A#26#1 TBK_ID_SESION#A#61#0 TBK_URL_FRACASO#A#256#1 TBK_URL_EXITO#A#256#1 TBK_MONTO_CUOTA#M#9#0 TBK_NUMERO_CUOTAS#N#2#0 </TR_NORMAL> Lectura: TBK_TIPO_TRANSACCION#A#50#1 indica que el parámetro TBK_TIPO_TRANSACCION es de tipo alfanumérico. Los parámetros de salida son aquellos que entrega Transbank a través del CGI tbk_bp_resultado al comercio por medio de la página de cierre para finalizar la transacción. ya se entrega en el KCC. parámetros de entrada y salida. . La definición de parámetros se encuentra establecida para cada tipo de transacción. DESCRIPCIÓN DE TIPOS DE TRANSACCIONES Para el buen funcionamiento del sistema de pago Webpay. se deben definir para cada una de las transacciones de pago. básicamente a través de algún formulario que envíe dichos parámetros vía método POST al CGI tbk_bp_pago. la cual no es necesario crear o modificar.A. Esta definición se encuentra en el archivo tbk_param. 41 Transbank S. #A : Alfanumérico #N : Numérico entero #M: Numérico con decimales #0 : Opcional #1 : Obligatorio Observación: Los tipos de transacciones soportadas por las tiendas están definidos implícitamente con cada código de comercio. lo cual se establece en el contrato comercial. de tamaño máximo 50 y que es obligatorio. Los parámetros de entrada son los que se deben generar en las páginas de llamada al KCC por parte del comercio. Sin separadores de miles ni de decimales.1 Transacción Normal La Transacción Normal consiste en realizar una transacción virtual llamando a la CGI tbk_bp_pago con los parámetros de entrada definidos en la Tabla 3. (opcional) Página a llamar en caso de éxito en la transacción. se le devuelve a éste el control del browser del cliente. Identificador de sesión. Esta Transacción esta orientada a una tienda en donde por cada pago el cliente debe digitar los datos de la tarjeta de crédito. para lograr el redireccionamiento del browser del cliente. Se asume los dos últimos dígitos como valores decimales. Debe ser una dirección absoluta. Sólo se envía para caso de pago CI. Orden de compra. (opcional) Número de cuotas a pagar. . el resultado de ésta es comunicado al comercio por medio del cgi tbk_bp_resultado. estos parámetros de salida son mostrados en la Tabla 4. que entrega los parámetros a la página de cierre. (opcional) Monto correspondiente de cada cuota. Parámetro TBK_TIPO_TRANSACCION TBK_MONTO TBK_ORDEN_COMPRA TBK_ID_SESION TBK_URL_EXITO Descripción Tipo de transacción (TR_NORMAL) Monto de la transacción.9. para lograr el redireccionamiento del browser del cliente. Sólo se envía para caso de pago CI. Una vez confirmada la transacción a Transbank por parte del comercio. Una vez ejecutado este cgi el control de la transacción es tomado por Transbank quien le exige al tarjetahabiente que entregue una serie de datos de su tarjeta para terminar la transacción.A. Largo 50 10 26 61 256 Tipo A N A A A TBK_URL_FRACASO TBK_MONTO_CUOTA TBK_NUMERO_CUOTAS 256 9 2 A N N Tabla 3. generado por el comercio. Parámetros de entrada Transacción Normal 42 Transbank S. Debe ser una dirección absoluta. Página a llamar en caso de fracaso en la transacción. Fecha de expiración de Tarjeta de Crédito con que se realizó la compra (aamm). Fecha contable de la transacción. Resultado de transacción Firma digital. Hora en la que se realizó la transacción. (mmdd). (hhmmss). Identificador de transacción Forma de Pago escogida por el tarjetahabiente. Cuatro últimos números de la Tarjeta de Crédito con que se realizó la compra. Sin separadores de miles ni de decimales. (mmdd). Código de comercio Código de comercio encriptado Tipo de transacción (TR_NORMAL en este caso). (Sólo para los comercios que Transbank habilite esta opción).A. Fecha en que se realizó la transacción. En el Anexo G se describe un ejemplo paso a paso de integración de KCC5 con transacción Normal. contiene el número de Cuotas escogida por el tarjetahabiente. ERR) Orden de compra. . Parámetros de salida Transacción Normal. Largo 3 26 12 50 2 10 6 4 4 4 4 6 61 20 2 Tipo A A N A A N N N N N N N N A N A 2 3 32 N A A Tabla 4. Para los otros tipos de pago (VC y SI). En el caso de corresponder a un tipo de pago CI. Monto de la transacción. Se asume los dos últimos dígitos como valores decimales.Parámetro TBK_ACCION TBK_ORDEN_COMPRA TBK_CODIGO_COMERCIO TBK_CODIGO_COMERCIO_ENC TBK_TIPO_TRANSACCION TBK_RESPUESTA TBK_MONTO TBK_CODIGO_AUTORIZACION TBK_FINAL_NUMERO_TARJETA TBK_FECHA_CONTABLE TBK_FECHA_TRANSACCIÓN TBK_FECHA_EXPIRACION TBK_HORA_TRANSACCIÓN TBK_ID_SESION TBK_ID_TRANSACCIÓN TBK_TIPO_PAGO TBK_NUMERO_CUOTAS TBK_VCI TBK_MAC Descripción Acción (ACK. Identificador de sesión. Código de autorización de la transacción de compra. (Sólo para los comercios que Transbank habilite esta opción). Respuesta a la solicitud de la transacción. tiene el mismo valor que el parámetro de entrada. 43 Transbank S. (Si fue habilitado). el cual posee un código de comercio propio y único que corresponde al parámetro ID_COMERCIO que se configura en el archivo tbk_config. Por otro lado. 9 Monto correspondiente de cada cuota para tienda XXX. Número de transacciones de compra. 26 Identificador de sesión (opcional). Parámetros de entrada de la Transacción Mall Virtual. Orden de compra de la tienda XXX en la 26 transacción Mall. que la identifica como única. 4 Código de Comercio de la tienda número XXX 12 en la transacción Mall. En caso de existir un error en la confirmación por parte de la tienda (Mall). Solo se envía para caso de pago CI. Página a llamar en caso de fracaso en la 256 transacción de Mall.9. 10 Orden de compra de la transacción Mall. Esta transacción actúa básicamente igual que la Transacción Normal con la salvedad que al momento de la confirmación por parte de Transbank. a Transbank en cuanto a la realización del cierre de la compra el browser del cliente será derivado a la página de fracaso definida por el comercio. Los parámetros de entrada al cgi tbk_bp_pago se definen en la Tabla 13 y los de salida en la Tabla 14. 44 Transbank S. 2 Número de cuotas a pagar para tienda XXX.A. Monto de compra de la tienda XXX en la 10 transacción Mall. Sólo se envía para caso de pago CI. . la derivación del browser es hacia una página de resultado en la cual se lleva un catastro de las transacciones por comercio aprobadas y rechazadas.2 Transacción Mall Virtual La Transacción Mall Virtual permite agrupar a varias tiendas virtuales en un Mall Virtual. cada tienda virtual asociada al Mall también posee un código de comercio (código de tienda). 61 Página a llamar con los resultados de las 256 transacciones.dat. este código se envía como parámetro al momento de realizar la compra. 50 Monto total de la transacción Mall. Tipo A N A A A A N N A N N N Tabla 13. Parámetro TBK_TIPO_TRANSACCION TBK_MONTO TBK_ORDEN_COMPRA TBK_ID_SESION TBK_URL_RESULTADO TBK_URL_FRACASO TBK_NUM_TRX TBK_CODIGO_TIENDA_MXXX TBK_ORDEN_TIENDA_MXXX TBK_MONTO_TIENDA_MXXX TBK_MONTO_CUOTA_MXXX TBK_NUMERO_CUOTAS_MXXX Descripción Largo Tipo de transacción (TR_MALL). Parámetros de salida Transacción Mall Virtual. 20 Código de Autorización número XXX. 2 Número de cuotas de la compra en 2 tienda número XXX. . Respuesta a la transacción número XXX. Sólo se envía para caso de pago CI. 50 Siempre viene en 0. (Sólo para los comercios que Transbank habilite esta opción). Fecha contable de la transacción. 26 Orden de compra para la tienda XXX. Los pagos pueden pertenecer a la misma tienda o a tiendas diferentes. Tipo A N A A N N N N N N N N A N N N A N N N Tabla 14. identificando cada pago con su propia orden de compra. 10 Cuatro últimos números de la Tarjeta de Crédito con que se realizó la 4 compra. 2 Monto en la tienda número XXX. 9 Monto correspondiente de cada cuota para tienda XXX. Fecha de expiración de Tarjeta de Crédito con que se realizó la compra 4 (aamm). Identificador de transacción. 45 Transbank S. 10 MAC 32 Tasa de interés máxima permitida para 4 el período vigente. Observación: XXX varía de 001 a 006. es decir cómo máximo se pueden enviar 6 pagos distintos en una única transacción. 4 Fecha en que se realizó la transacción. (Sólo para los comercios que Transbank habilite esta opción). 2 Orden de compra Mall.Parámetro TBK_TIPO_TRANSACCION TBK_RESPUESTA TBK_ORDEN_COMPRA TBK_ID_SESION TBK_MONTO TBK_FINAL_NUMERO_TARJETA TBK_FECHA_EXPIRACION TBK_FECHA_CONTABLE TBK_FECHA_TRANSACCIÓN TBK_HORA_TRANSACCIÓN TBK_ID_TRANSACCIÓN TBK_COD_AUT_MXXX TBK_TIPO_PAGO_MXXX TBK_NUMERO_CUOTAS_MXXX TBK_MONTO_CUOTA_MXXX TBK_COD_RESP_MXXX TBK_MONTO_TIENDA_MXXX TBK_ORDEN_TIENDA_MXXX TBK_MAC TBK_TASA_INTERES_MAX Descripción Largo Tipo de transacción (TR_MALL). Monto de la transacción Mall. 6 Forma de pago número XXX. 8 Hora en la que se realizó la 6 transacción.A. 26 Identificador de sesión (si fue 61 habilitado). Tipo A A A Tabla 16. Parámetro TBK_TIPO_TRANSACCION TBK_URL_EXITO TBK_URL_FRACASO Descripción Largo Tipo de transacción (TR_TASA_INTERES_MAX). Parámetro TBK_TIPO_TRANSACCION TBK_RESPUESTA TBK_FECHA_TRANSACCIÓN TBK_HORA_TRANSACCIÓN TBK_ID_TRANSACCIÓN TBK_TASA_INTERES_MAX TBK_MAC Descripción Tipo de transacción (TR_TASA_INTERES_MAX). Tasa de interés máxima permitida del periodo.9.6 Transacción Consulta De Tasa La totalidad de los parámetros de entrada a la CGI tbk_bp_pago se muestran en la Tabla 16. 46 Transbank S. 50 Página a llamar en caso de éxito en la transacción 256 Página a llamar en caso de fracaso en la 256 transacción. Parámetros de entrada de la Transacción Consulta de Tasa. Firma digital Largo 50 2 8 6 20 4 32 Tipo A N N N N N N Tabla 17. Hora en la que se realizó la transacción Identificador de transacción. Respuesta a la solicitud de la transacción. . Parámetros de salida de la Transacción Consulta de Tasa.A. Fecha en que se realizó la transacción. Los parámetros de salida de la Transacción Consulta De Tasa se muestran la Tabla 17. A. ambos archivos de logs se generan en el directorio $(PATH_DIRCGI_WEB)/log con formato texto plano. etc. donde : OK = evento correcto KO = evento incorrecto 0 ERR Descripción evento o error. Largo 10 40 14 6 15 Tipo A A N N A RESULTADO DESCRIPCIÓN 3 50 A A 47 Transbank S. IP desde donde ser realiza la compra.dat. Ejemplo: acción realizada. Tabla 18. un log de eventos y un log de transacciones. Resultado operación. estado de acción o sobre quién aplica. .10.1 Archivo de Log de Eventos En este archivo se escriben todos los logs informativos. Formato ddmmaaaa.log. Donde: $(FECHA): corresponde a la fecha en formato aaaammdd. Formato hhmmss. Formato log de eventos. El formato de este archivo es el que se muestra a continuación: Variable ID_TRANSACCION PARAMETROS FECHA HORA IP Descripción Identificación de la transacción Datos relevantes. Se genera un archivo distinto por cada día y el nombre del archivo es de la forma TBK_EVN$(FECHA). 10. ARCHIVOS GENERADOS POR EL KCC El KCC genera dos tipos de archivos logs. de error o fatales según lo configurado en el archivo tbk_trace. transbank.cl 7052008 133454 200.251 7052008 133454 200.251 OK 7052008 133454 200.cl 7052008 133454 200.107.cl 7052008 133454 200.107.transbank.107.113.251 OK https://webpay.251 OK https://webpay.txt tbk_param.107.transbank.251 OK https://webpay.107.107. Sanitizacion exitosa Parseo realizado Datos en datos/tbk_config. 48 Transbank S.cl 7052008 133454 200.113.107.cl 7052008 133454 200.251 OK 7052008 133454 200.107.transbank. .txt Terminado inicio Array Fin inicio 7052008 133454 200.251 OK https://webpay.113.113.107.transbank.251 OK Archivo parseado Inicio Datos Filtrados con exito Entrando a sanitizacion Arreglo de parametros OK.107.transbank.transbank.251 OK https://webpay.transbank.A.107.113.113.113.cl 7052008 133454 200.251 OK https://webpay.251 OK https://webpay.Ejemplo: 11440 11440 11440 11440 11440 11440 11440 11440 11440 11440 11440 11440 11440 11440 11440 11440 Filtro Filtro Filtro sanitiza sanitiza sanitiza pago pago pago pago pago pago pago pago pago pago tbk_param.251 OK Observación: Todas las variables están ordenadas en una sola línea.transbank.113.251 Ok 7052008 133454 200.113.113.107.107.113.113.113.dat Mac generado Construccion TBK_PARAM Codigo comercio encriptado TBK_PARAM encriptado Datos listos para ser enviados Medio 2: Por redireccion Redireccion web Todo OK https://webpay.cl 7052008 133454 200.cl 7052008 133454 200.113.107.251 OK https://webpay.251 OK 7052008 133454 200.cl 7052008 133454 200.251 OK 7052008 133454 200.107.113. así se genera una línea por actividad de transacción.107.113. TR_MALL. Sólo CI. de la transacción. Tasa de interés máxima permitida del periodo.A. . Respuesta entregada por Transbank. Fecha (mmdd). Donde: $(TIPO_TRANSACCION) = TR_NORMAL. Tabla 19. Indica el tipo de transacción utilizada. de la transacción. 50 2 10 6 17 4 4 6 61 20 2 1 Tipo A N A A N N N N N N N A N A N Monto de la transacción entregado por el comercio. Monto correspondiente de cada cuota. Código de comercio.2 Archivo de Log de Transacciones (bitácora) Este archivo contiene una línea con cada transacción ejecutada y almacena la data que entrega la CGI tbk_bp_resultado a la página de confirmación de la transacción. TBK_CODIGO_AUTORIZACION Solo tienen código las transacciones aprobadas “R=0”. Número de cuotas.10. Formato log de transacciones 4 9 N N * Solo si compra es en cuotas. Tipo de pago utilizado. $(FECHA) = mmdd El formato de este archivo es el que se muestra a continuación en la Tabla 19 Variable TBK_ORDEN_COMPRA TBK_CODIGO_COMERCIO TBK_CODIGO_COMERCIO_ENC TBK_TIPO_TRANSACCION TBK_RESPUESTA TBK_MONTO Descripción Largo Número de la orden de compra generada por el 26 comercio (número único por transacción). número que identifica en 12 forma unívoca al comercio. Campos correspondientes a datos de la tarjeta TBK_FINAL_NUMERO_TARJETA que no son entregados al comercio Internet “sin envío de tarjeta 00000”. Código de autorización entregado por Transbank. TBK_FECHA_CONTABLE TBK_FECHA_TRANSACCION TBK_HORA_TRANSACCION TBK_ID_SESION TBK_ID_TRANSACCION TBK_TIPO_PAGO TBK_NUMERO_CUOTAS TBK_MAC TBK_TASA_INTERES_MAX * TBK_MONTO_CUOTA * Fecha (mmdd). Código de comercio encriptado. etc.log. Identificador de la sesión. Sólo CI. Identificador de la transacción. El nombre de este archivo es TBK_$(TIPO_TRANSACCION) _$(FECHA). Firma digital del mensaje (conjunto de parámetros) enviados por Transbank. 49 Transbank S. Hora (hhmmss). TBK_CODIGO_AUTORIZACION=000000. TBK_RESPUESTA=-1. . TBK_MONTO=565200. en B24. No autorizada Rechazo por error de tasa. TBK_FINAL_NUMERO_TARJETA=7276.JxC-y6dKZxsQ2nRtSi 134HficMNkjpmPO8zEm. 50 Transbank S. TBK_RESPUESTA 0 -1 -2 -3 -4 -5 -6 -7 -8 Definición Transacción aprobada. TBK_FECHA_CONTABLE=0520. TBK_TIPO_TRANSACCION=TR_NORMAL. Definición de Códigos de Respuesta.xGnQokv5zVkH lYnpTPAkgnu yKOWgxJwRclI97k6KD85ZsqZdabenDwcY53uKyi3tpAxx. 10. así se genera una línea por actividad de transacción. Excede cupo máximo mensual. TBK_CODIGO_COMERCIO=597027342714. Rubro no autorizado. Rechazo de tx. TBK_NUMERO_CUOTAS=0.3 Códigos De Respuesta Los códigos de respuesta que entrega Transbank a la tienda virtual se definen el la Tabla 20. Excede límite diario por transacción.Ejemplo de una transacción en bitácora: TBK_ORDEN_COMPRA=221353. TBK_TIPO_PAGO=VN. Rechazo de tx. Error en tx.A. TBK_MAC=89c32c3b5h77dc29d3bf4b7fd1fad987d2d6 Observación: Todas las variables están ordenadas en una sola línea. TBK_HORA_TRANSACCION=124144. No autorizada Transacción debe reintentarse.J6dfaClMcO4zX8qbQ7f23fb_. TBK_CODIGO_COMERCIO_ENC=aJuB7cktCrot02Mz48jMy3n6kRx8GO8NYP1YvDZL. TBK_ID_SESION=238831. TBK_FECHA_TRANSACCION=0520. Tabla 20. TBK_ID_TRANSACCION=129613424593. En B24. pem) a Transbank.cl 6443 Datos Código de Comercio Transacción Normal Transacción Mall Tienda Mall 1 Tienda Mall 2 597026016975 597026010039 597026010047 597026010055 Observación: Cada código debe tener asociada un par de llaves asimétricas para encriptación de la información transmitida desde la tienda (KCC) y Transbank.pem) -----BEGIN RSA PRIVATE KEY----MIICXQIBAAKBgQDV3xIu3OnC9v7a/asLoy6NOF3n3I0e58Yy1+4mOn1kso4ESExp OY5U1K267TEUFPN/BFO5FgZCAC3bClkHJ5tN7z2a5Gu7rXfwO0HJ+cDduOOv0QFX ZUjcM923cy5FFbDLcUPUPMq1hXcCH7tKUrKOunKwBEmkqyhp96/90T4afwIBAwKB gQCOlLbJ6JvXT1SR/nIHwh8I0D6akwi/RS7Mj/QZfFOYdwlYMDLw0QmN4x58niC4 DfeqAuJ7ZAQsAB6SBuYExRIyvAIniU4J817NXcFAsNELGvdp9AjBYJYPv0+4pTDI hptIpY9zBi+7Bz9v00V89xxoEzcYcTVZJhyQ7MAcODWrewJBAPu4rezz1sDuntjn L2gjll2KcDgiE7PuO/x0WyinpksmIP4MHjmPIoCPCyAcZ6hVFtJJR7DlG6XEfp0G eEy+gM0CQQDZgbGpgtX/ex1VuLmIY7ay5iCq0iGgeYiYccdSvXIAob164Il58/p6 CM9Ctqc3stvLVsOplINMORH3iVswLxh7AkEAp9Bz80051fRp5e908Be5k7GgJWwN Ip7SqE2SGxpu3MQV/rK+0QoXAF9cwBLvxY4PNtuFIJi9GS2pvgRQMymrMwJBAJEB IRusjqpSE457JlrtJHdEFcc2wRWmWxBL2jco9qsWflHrBlFNUaawiix5xM/MkoeP LRu4V4gmC/pbkiAfZacCQQDaPiFEkZlOP8ZW9SeXdwcNt1fay2MrnFqMPGPnerri X/1p1oAObaX3NYENyGZQ0U2Bzm3tHsc6lozrgi1QVZYR -----END RSA PRIVATE KEY----- 51 Transbank S.pem) -----BEGIN PUBLIC KEY----MIGdMA0GCSqGSIb3DQEBAQUAA4GLADCBhwKBgQDV3xIu3OnC9v7a/asLoy6NOF3n 3I0e58Yy1+4mOn1kso4ESExpOY5U1K267TEUFPN/BFO5FgZCAC3bClkHJ5tN7z2a 5Gu7rXfwO0HJ+cDduOOv0QFXZUjcM923cy5FFbDLcUPUPMq1hXcCH7tKUrKOunKw BEmkqyhp96/90T4afwIBAw== -----END PUBLIC KEY----- Llave privada de comercios de prueba (privada.ANEXO A ANEXO A Datos Ambiente de Certificación Webpay Datos del Servidor de Prueba URL Servidor de Pago Puerto Servidor de Pago https://certificacion. En ambiente productivo es el propio comercio quién deberá crear su par de llaves y enviar la llave publica (publica.A. El par de llaves.webpay. para efectos de ambiente de certificación son únicos. . Llave publica de comercios de prueba (publica. .Datos Tarjeta De Crédito Marca Nº de Tarjeta Año Expiración Mes Expiración CVV Resultado VISA 4508000021111116 2005 12 123 APROBADO MASTERCARD 5390212511111112 2005 01 123 RECHAZADO HORARIO 24 hrs. 52 Transbank S.A. 7 días a la semana.. Por lo que el manejo del carro de compras u otras características con respecto al procedimiento de selección de los ítems a comprar siempre depende de la solución del Comercio. Pregunta ¿Qué productos entrega Transbank? Respuesta Transbank entrega a sus clientes el Kit de Conexión de Comercio (KCC).cgi Pregunta ¿Por qué no tengo respuesta desde Transbank? Respuesta 1 Puede que estén mal configurados los parámetros PORTCOM y WPORT en el archivo tbk_config.supercomerce. desde Transbank se ejecutará la segunda CGI en el sitio del comercio. Estos indican el valor de los puertos del Servidor de Comercio y del Servidor de 53 Transbank S. Ejemplo: URLCGICOM = http://www. APACHE y Lotus Domino. Actualmente estos CGI se encuentran disponibles para Windows NT.dat. Netcommerce y otras (Incluyendo soluciones propietarias). Hasta este momento KCC ha sido integrado en una variada combinación de soluciones tecnológicas que incluye servidores web como IIS. al comprador. entonces. Linux Redhat 6. la que recibirá el resultado de la transacción (aprobado o rechazado). Además ha sido utilizado en soluciones de comercio electrónico tales como Siteserver. Cuando se tenga una respuesta sobre la transacción (aproximadamente 1 segundo después de la solicitud).xx. El primer CGI debe ser invocado al momento de iniciar un pago. Estos CGI deben ser “integrados” con las páginas de la tienda. que deben ser copiados en el servidor donde operará la tienda virtual. El CGI se comunicará con un servidor de Transbank. que permite identificar la operación. Intershop.cl/cgi-bin/tbk_bp_resultado. INEX. La tarea de integración consiste. consiste en dos CGI (Programas ejecutables).ANEXO B ANEXO B Preguntas Frecuentes Pregunta ¿Qué es Kit de Conexión de Comercio y como se realiza la instalación de los CGI? Respuesta El Kit de Conexión de Comercio (KCC). en ejecutar la primera CGI desde la tienda virtual al momento de iniciar un proceso de pago con TC y en segundo lugar capturar el resultado de la operación desde la segunda CGI de modo de obtener y registrar un código de autorización enviado por Transbank. Pregunta ¿Qué pasa si tengo definido varios servidores virtuales en un solo servidor físico? Respuesta En el archivo tbk_config. SUN Solaris.A. de Transbank. el cual solicitará los datos de la Tarjeta de Crédito (TC).dat debe configurarse el parámetro URLCGICOM con la dirección de referencia lógica completa. . Netscape. El pago se efectuará cuando la tienda cuente con el monto final de la compra y un número de compra. AIX. el cual consiste en dos programas que se ejecutarán vía CGI en la tienda virtual. dat no tenga la dirección del Servidor de Pago correcta o este mal referenciada.dat este mal configurado y no corresponda al asignado por Transbank. Ej. 54 Transbank S. esta debe ser de la forma https. Respuesta 2 Puede que el parámetro SERVERTRA ubicado en el archivo tbk_config.cl Respuesta 3 Puede que el parámetro PORTTRA en el archivo tbk_config.las páginas de éxito y fracaso.: https://certificacion. La mayoría de las veces estas últimas están ubicadas en el mismo Servidor del Comercio por lo tanto los puertos son iguales y los parámetros tienen el mismo valor. Se acostumbra a utilizar el puerto por defecto 80 ó 5555.A. .webpay. Las páginas de cierre de transacciones deben ubicarse en un directorio virtual distinto del resto de las páginas de la tienda virtual. 1. Dejar habilitado un puerto exclusivo para la comunicación con Transbank S. en especial privada. para evitar algún posible plagio de la tienda. Habitualmente el mismo directorio. Manejar en forma segura el par de llaves generadas. en el firewall del comercio si es que lo tuviese. 55 Transbank S.A.ANEXO C ANEXO C Recomendaciones a la seguridad del KCC. La llave junto con el código de comercio.pem. 2. . constituyen la identidad de su tienda de comercio electrónico. Este directorio debe protegerse de tal forma que permita la ejecución de dichas páginas sólo desde el servidor donde se encuentra tbk_bp_resultado.A. etc. Incluir los logotipos de las marcas y del servicio Webpay. voltaje. el cual se utilizará para validar la correcta integración de su sitio con el KCC. Incluir una descripción completa de los bienes y/o servicios (tallas/tamaños ropa. Exponer el valor de los productos y servicios en la moneda correspondiente para la cual el Establecimiento contrató el servicio Webpay. Indicar algún modo de contacto para servicio de atención al cliente. el Establecimiento debe entregar a Transbank el archivo de transacciones que se generó en su servidor web (ejemplo tbk_bitacora_TR_NORMALmmdd. Indicar el país donde se encuentra el Establecimiento. Indicar. el Establecimiento en certificación debe quedar habilitado para que Transbank ingrese (en forma remota a través de Internet o en las dependencias del Establecimiento). Luego de este proceso. Indicar claramente los costos totales de los productos y servicios. Recibida la Solicitud de Certificación de Integración. el Set de transacciones de certificación. si la entrega está limitada al país en que está radicado el comercio. las restricciones para la exportación. Por ejemplo. Entregar al tarjetahabiente un comprobante físico o electrónico Entrega del Producto/Servicio y Notificación de Compra En caso de que la transacción sea aprobada por Transbank. etc. • .A. Información a Desplegar en página de Éxito o Resultado 56 Transbank S. personal de Transbank realizará pruebas con el objetivo de verificar que el proceso de integración efectuado por el Establecimiento se haya realizado exitosamente y que los números de orden de pedido generados por la tienda sean correctamente interpretados por el comercio. incluyendo todos los cargos de envío e impuestos. Indicar las políticas del Establecimiento relacionadas con devoluciones y reembolsos. Para poder efectuar este proceso. cuando las haya. Adicionalmente en esta etapa Transbank verificará el cumplimiento de los siguientes requisitos establecidos para el sitio web del Establecimiento: • • • • • • • • • • • • • • • Indicar claramente la identidad del Establecimiento. Indicar la política de entrega de productos del Establecimiento.). Indicar el país y moneda de la transacción. cuándo puede esperar el tarjetahabiente recibir la entrega.ANEXO D ANEXO D Certificación efectuada por Transbank. el Comercio deberá despachar el o los productos seleccionados por el tarjetahabiente o prestar el servicio pagado según corresponda. Incluir el logotipo de Tres cuotas sin intereses en el caso de que el comercio se haya afiliado a esta modalidad de venta.log). una vez concluida la venta. Este recibo además puede enviarse a través de algún medio electrónico o físico cuando la mercadería sea entregada al tarjetahabiente. Monto y moneda de la transacción Fecha de la transacción Nombre del comprador Código de autorización Tipo de transacción: se debe indicar la palabra Venta Número de Cuotas: Se debe indicar el número de cuotas informado por Transbank (para las transacciones sin cuotas se debe informar 00). Número de orden de Pedido Nombre del comercio URL del comercio (dirección on line del comercio). • • • Descripción de los bienes y/o servicios Una lista de cualquier restricción relacionada con las devoluciones de reembolsos. (informado por Transbank). . un recibo de la compra que debe contener como mínimo la siguiente información: o o o o o o o o o o o 4 últimos dígitos de la tarjeta de crédito. 57 Transbank S. Normales : Si se trata de cuotas normales Sin intereses : Si se trata de tres cuotas sin intereses Cuotas Comercio: Si se trata de ventas en modalidad cuotas Comercio. Tipo de Cuotas: se debe señalar lo siguiente dependiendo de la respuesta informada por Transbank: Sin Cuotas : Si se trata de ventas sin cuotas.A.• El Comercio Internet está obligado a entregar al tarjetahabiente. El VALOR PRESENTE a la máxima se obtiene aplicando la siguiente fórmula: Valor Presente a Máxima = VC * 1 − (1 + Tm ) Tm [ −n ] Donde: Vc: es el monto de la cuota (informado en la Tx). Tm: es la tasa Máxima Definida (almacenada en tabla). referidas a la tasa máxima convencional.ANEXO E ANEXO E Cálculo del Valor Cuota Las siguientes son las fórmulas utilizadas para el cálculo del Valor Presente (precio contado). 6 a 24 Se modifica mensualmente y se pública en el diario oficial entre el día 8 y 10 de cada mes. EL VALOR CUOTA se obtiene despejando de la fórmula anterior: Vc = VP * Tm * (1 + Tm ) n (1 + Tm ) n − 1 Tm * (1 + Tm ) El extracto Luego: Vc = Precio Contado * F Donde: F: Nº cuotas: Tm: es función del nº cuotas y de la Tm. y del Valor Cuota. n: es el número de cuotas (informado en Tx). . n (1 + Tm )n − 1 corresponde al factor F. 58 Transbank S.A. Además estos quedan registrados en los logs de eventos.ANEXO F ANEXO F Tipificación de Errores Los errores se verifican en la página que lo genera haciendo una vista al código fuente y observando al pie del código generado el número del error ocurrido. 59 Transbank S. .A. Error en variable número de transacciones Error número de transacciones supera máximo (MALL).Nº Error 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 Código Error SIN_ERR ERR_LECTURA_INPUT ERR_LETURA_PARAMETROS ERR_PARAM_CODIGO_COMERCIO ERR_PARAM_URL_CGI_COMERCIO ERR_PARAM_SERVIDOR_COMERCIO ERR_PARAM_PUERTO_COMERCIO ERR_PARAM_URL_CGI_TRANSBANK ERR_PARAM_SERVIDOR_TRANSBANK ERR_PARAM_PUERTO_TRANSBANK ERR_MEM_MENSAJE ERR_MAC ERR_VERSION_KCC ERR_MSG_OLDKCC ERR_CODIGO_COMERCIO ERR_DATOS_COMERCIO ERR_TIPO_TRANSACCION ERR_URL_CGI_COMERCIO ERR_SERVIDOR_COMERCIO ERR_PUERTO_COMERCIO ERR_CVV ERR_DUPLICADO ERR_ESTADO_COMERCIO ERR_TEMPLATE_COMPRA ERR_TEMPLATE_COMPRA_DET ERR_FECHA_EXPIRACION ERR_MONEDA_INVALIDA ERR_TEMPLATE_REINTENTO ERR_EDITA_MONTO ERR_ORDEN_COMPRA ERR_ID_TRANSACCION ERR_URL_EXITO ERR_URL_FRACASO ERR_MONTO ERR_REFERER ERR_NUM_TRX ERR_MAX_TIENDA ERR_CODIGO_TIENDA ERR_TIENDA_NO:SOCIADA Descripción No hay errores Error de lectura en el Input Error en lectura de parámetros archivo Error en parámetro CODIGO_COMERCIO Falta parámetro URL_CGI_COMERCIO Falta parámetro SERVIDOR_COMERCIO Falta parámetro PUERTO_COMERCIO Falta parámetro URL_CGI_TRANSBANK Falta parámetro SERVIDOR_TRANSBANK Falta parámetro PUERTO_TRANSBANK Falta memoria para variable mensaje Error firma digital Versión de KCC no valida Versión antigua de KCC sin variable msg Error en la variable CODIGO_COMERCIO Error en datos en archivo datos de comercio Error en variable TIPO_TRANSACCION Error en la variable URL_CGI_COMERCIO Error en variable SERVIDOR_COMERCIO Error en variable PUERTO_COMERCIO Error en variable CVV Error por detección de transacción duplicada Error en estado del comercio (comercio no activo).A. . Error en archivo template compra Error en archivo template de detalle de compra Error en variable VAR_FECHA_EXPIRACION Error en moneda de comercio Error en archivo template de página de reintento Error en función edita monto Error en variable orden de compra Error en variable VAR_I_TRANSACCION Error en variable URL de Éxito Error en variable URL de Fracaso Error en variable Monto Error en invocación (referer). 60 Transbank S. Error tienda no se encuentra en nuestro comercio Error tienda no esta asociada a comercio (MALL). Nº Código Error Error 39 ERR_MONTO_TIENDA 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 ERR_CONF_TIENDA ERR_URL_RESULTADO ERR_CONECTA_SERVIDOR ERR_SOCKET_LECTURA ERR_SOCKET_ESCRITURA ERR_TIMEOUT_ACK ERR_OBTENER_ACK ERR_ORDEN_TIENDA ERR_NUMERO_TARJETA ERR_NUMERO_CUOTAS ERR_MES_VENCIMIENTO ERR_ANO_VENCIMIENTO ERR_TARJETA ERR_TIPO_PAGO ERR_RESPUESTA_BASE24 ERR_ACK URL_FRACASO_MALL ERR_TIENDA_EN_NULO ERR_PARAM_PREF_CONF_TR ERR_PARAM_URL_CONF_TR ERR_PARAM_PUERTO_CONF_TR ERR_PARAM_SERVIDOR_CONF_TR ERR_FECHA_TRANSACCION ERR_ABRIR_BITACORA ERR_FALLO_CUOTA_NORMAL ERR_FALLO_CUOTA_C3C ERR_MONEDA_DESCONOCIDA ERR_TIENDA_NOENCONTRADA ERR_TIENDA_NOASOCIADA ERR_TIENDA_DIF_MONEDA ERR_SINMEMORIA ERR_MONTO_DESCUADRADO TRX_DESCUADRADAS ERR_TEMPLATE_ONECLICK ERR_TIENDA_TIPO_PAGO ERR_ID_USUARIO ERR_USUARIO_YA_REGISTRADO ERR_INSERTAR_ONECLICK Descripción Error en variable monto tienda Error de configuración tienda en maestro comercios Error en variable url_resultado Error al conectar servidor especificado Error al abrir socket para lectura Error al abrir socket para escritura Timeout al esperar ack Error al obtener ack Error variable orden compra tienda Error en variable VAR_NUMERO_TARJETA Error en variable VAR_NUMERO_CUOTAS Error en variable VAR_MES_VENCIMIENTO Error en variable VAR_ANO_VENCIMIENTO Error en variable VAR_ANO_VENCIMIENTO Error en variable VAR_TIPO_PAGO Error en respuesta del base24 Error al obtener ACK Error variable Fracaso MALL Error en variable de tienda MALL Error en parámetro PARAM_PREF_CONF_TR Error en parámetro de página de confirmación Error en parámetro PARAM_SERVIDOR_CONF_TR Error en parámetro PARAM_SERVIDOR_CONF_TR Error en variable VAR_FECHA_TRANSACCION Error al abrir el archivo de bitácora Fallo venta en cuotas Fallo venta contado 3 cuotas Error código moneda desconocido Error tienda no encontrada en maestro Error tienda no esta asociada a MALL Error tienda con distinta moneda Error no se puede obtener memoria Error monto descuadrado Error número de transacciones descuadradas Error al abrir template de One Click Error en variable tienda tipo pago Error en variable VAR_ID_USUARIO Usuario ya estaba registrado en la base de datos One_click Error al intentar insertar usuario en base de datos One_click 61 Transbank S.A. . Nº Código Error Error 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 ERR_USUARIO_NO_REGISTRADO ERR_LEER_ONECLICK ERR_TEMPLATE_TRANSICIÓN ERR_LOGO_WEBPAY ERR_TEMPLATE_LOGO_WEBPAY ERR_ACTUALIZAR_ONECLICK ERR_ELIMINAR_ONECLICK ERR_TEMPLATE_MENSAJE ERR_NUMERO_TARJET_ANTIGUA ERR_ONECLICK_DESHABILITADO ERR_TR_COMPLETA_DESHABILITADA ERR_CAMBIO_MULTICODE ERR_RESPUESTA ERR_LARGO_TIENDA ERR_CORRESPONDENCIA_CUOTAS ERR_TIPO_PAGO_DESHABILITADO ERR_ENVIO_REG_ONECLICK ERR_ID_SESION ERR_TIPO_TBK_TIPO_TRANSACCION ERR_TIPO_TBK_CODIGO_COMERCIO ERR_TIPO_TBK_ID_TRANSACCION ERR_TIPO_TBK_URL_CGI_COMERCIO ERR_TIPO_TBK_SERVIDOR_COMERCIO ERR_TIPO_TBK_PUERTO_COMERCIO ERR_TIPO_TBK_VERSION_KCC ERR_TIPO_TBK_MAC ERR_TIPO_TBK_MONTO ERR_TIPO_TBK_ORDEN_COMPRA ERR_TIPO_TBK_ID_SESION ERR_TIPO_TBK_URL_ÉXITO ERR_TIPO_TBK_URL_FRACASO ERR_TIPO_TBK_TARJETA ERR_TIPO_TBK_TIPO_PAGO ERR_TIPO_TBK_NUMERO_CUOTAS Descripción Usuario no esta registrado en la base de datos One_click Error al intentar leer usuario en base de datos One_click Error al abrir template de transición Error en validación LOGO WEBPAY Error en template de LOGO Error al actualizar la base de datos One_click Error al eliminar de la base de datos One_click Error al abrir template de mensajes Error en variable VAR_NUMERO_TARJETA_ANTIGUA Comercio no tiene habilitado One Click Comercio no tiene habilitada la transacción completa Error en cambio de multicodigo. CODIGO COMERCIO Error Tipo Dato var. ID_TRANSACCION Error Tipo Dato variable CGI_COMERCIO Error Tipo Dato variable SERVIDOR_COMERCIO Error Tipo Dato variable PUERTO_COMERCIO Error Tipo Dato variable VERSION_KCC Error Tipo Dato variable MAC Error Tipo Dato variable MONTO Error Tipo Dato variable ORDEN COMPRA Error Tipo Dato variable ID_SESION Error Tipo Dato variable URL_ÉXITO Error Tipo Dato variable URL_FRACASO Error Tipo Dato variable TARJETA Error Tipo Dato variable TIPO_PAGO Error Tipo Dato variable NUMERO_CUOTAS 62 Transbank S.A. . variable vacía Error en variable VAR_RESPUSTA Error largo variable tienda Número de cuotas invalido para tipo de pago indicado Tipo de pago no esta habilitado para el comercio Error al intentar espejar registro One Click modificado Error en variable ID_SESION Error Tipo Dato variable TIPO_TRANSACCION Error Tipo Dato var. Nº Código Error Error 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 144 145 146 147 148 149 150 151 152 153 154 155 156 ERR_TIPO_TBK_NUMERO_TARJETA ERR_TIPO_TBK_MES_VENCIMIENTO ERR_TIPO_TBK_ANO_VENCIMIENTO ERR_TIPO_TBK_CVV ERR_LEN_TBK_TIPO_TRANSACCION ERR_LEN_TBK_CODIGO_COMERCIO ERR_LEN_TBK_ID_TRANSACCION ERR_LEN_TBK_URL_CGI_COMERCIO ERR_LEN_TBK_SERVIDOR_COMERCIO ERR_TIPO_TBK_PUERTO_COMERCIO ERR_LEN_TBK_VERSION_KCC ERR_LEN_TBK_MAC ERR_LEN_TBK_MONTO ERR_LEN_TBK_ORDEN_COMPRA ERR_LEN_TBK_ID_SESION ERR_LEN_TBK_URL_EXITO ERR_LEN_TBK_URL_EXITO ERR_LEN_TBK_TARJETA ERR_LEN_TBK_TIPO_PAGO ERR_LEN_TBK_NUMERO_CUOTAS ERR_LEN_TBK_NUMERO_TARJETA ERR_LEN_TBK_MES_VENCIMIENTO ERR_LEN_TBK_ANO_VENCIMIENTO ERR_LEN_TBK_CVV ERR_TIPO_TBK_URL_RESULTADO ERR_TIPO_TBK_NUM_TRX ERR_TIPO_TBK_CODIGO_TIENDA ERR_LEN_TBK_CODIGO_TIENDA ERR_LEN_TBK_ORDEN_TIENDA ERR_LEN_TBK_MONTO_TIENDA ERR_LEN_TBK_ID_USUARIO ERR_LEN_PARAM_TR_NORMAL ERR_LEN_PARAM_TR_MALL ERR_LEN_PARAM_TR_COMPLETA ERR_LEN_PARAM_TR_ONECLICK ERR_LEN_PARAM_TR_INGRESO_ONCLICK ERR_LEN_PARAM_TR_ELIMINACION_ONCLICK ERR_LEN_PARAM_TR_MODIFICACION_ONCLICK ERR_LEN_PARAM_TR_MALL_COMPLETA ERR_LEN_PARAM_TR_MALL_ONECLICK Descripción Error Tipo Dato variable NUMERO_TARJETA Error Tipo Dato variable MES_VENCIMIENTO Error Tipo Dato variable ANO_VENCIMIENTO Error Tipo Dato variable CVV Error Largo variable TIPO_TRANSACCION Error Largo variable CODIGO_COMERCIO Error Largo variable ID_TRANSACCION Error Largo variable URL_CGI_COMERCIO Error Largo variable SERVIDOR_COMERCIO Error Largo variable PUERTO_COMERCIO Error Largo variable VERSION_KCC Error Largo variable MAC Error Largo variable MONTO Error Largo variable ORDEN_COMPRA Error Largo variable ID_SESION Error Largo variable URL_ÉXITO Error Largo variable URL_FRACASO Error Largo variable TARJETA Error Largo variable TIPO_PAGO Error Largo variable NUMERO_CUOTAS Error Largo variable NUMERO_TARJETA Error Largo variable MES_VENCIMIENTO Error Largo variable ANO_VENCIMIENTO Error Largo variable CVV Error tipo variable URL_RESULTADO Error tipo variable NUM_TRX Error tipo variable CODIGO_TIENDA Error largo variable CODIGO_TIENDA Error largo variable ORDEN_TIENDA Error largo variable MONTO_TIENDA Error largo variable ID_USUARIO Error largo parámetros TR_NORMAL Error largo parámetros TR_MALL Error largo parámetros TR_COMPLETA Error largo parámetros TR_ONECLICK Error largo parámetros TR_INGRESO_ONECLICK Error largo parámetros TR_ELIMINACION_ONECLICK Error largo parámetros TR_MODIFICACION_ONECLICK Error largo parámetros TR_MALL_COMPLETA Error largo parámetros 63 Transbank S.A. . Error.Nº Código Error Error 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 ERR_LEN_PARAM_TR_LOGO_WEBPAY ERR_CANT_PARAM_TR_NORMAL ERR_CANT_PARAM_TR_MALL ERR_CANT_PARAM_TR_COMPLETA ERR_CANT_PARAM_TR_ONECLICK ERR_CANT_PARAM_TR_INGRESO_ONECLICK ERR_CANT_PARAM_ELIMINACION_ONECLICK ERR_CANT_PARAM_TR_MODIFICACION_ONECLICK ERR_CANT_PARAM_TR_MALL_COMPLETA ERR_CANT_PARAM_TR_MALL_ONECLICK ERR_CANT_PARAM_TR_LOGO_WEBPAY ERR_TIPO_TBK_URL_FRACASO_MALL ERR_LEN_TBK_URL_FRACASO_MALL ERR_TIPO_TBK_FECHA_EXPIRACION ERR_LEN_TBK_FECHA_EXPIRACION ERR_TIPO_TBK_URL_COMERCIO ERR_LEN_TBK_URL_COMERCIO ERR_TIPO_TBK_MONTO_CUOTA ERR_LEN_TBK_MONTO_CUOTA ERR_MONTO_CUOTA ERR_TR_TASA_INTERES_DESHABILITADA ERR_LEN_PARAM_TR_TASA_INTERES_MAX ERR_CANT_PARAM_TR_TASA_INTERES_MAX ERR_CONSISTENCIA_CIC ERR_FALLO_CUOTA_CIC ERR_INSERTAR_ONECLICK_ILEGAL ERR_LECTURA_PARAM_SEGURIDAD_OC ERR_LECTURA_BASE_SEGURIDAD_OC Descripción TR_MALL_ONECLICK Error largo parámetros TR_LOGO_WEBPAY Error cantidad parámetros TR_NORMAL Error cantidad parámetros TR_MALL Error cantidad parámetros TR_COMPLETA Error cantidad parámetros TR_ONECLICK Error cantidad parámetros TR_ING_ONECLICK Error cantidad parámetros TR_ELIMIN_ONECLICK Error cantidad parámetros TR_MODIF_ONECLICK Error cantidad parámetros TR_MALL_COMPLETA Error cantidad parámetros TR_MALL_ONECLICK Error cantidad parámetros TR_LOGO_WEBPAY Error Tipo Dato variable URL_FRACASO_MALL Error Largo variable URL_FRACASO_MALL Error Tipo Dato variable FECHA_EXPIRACION Error Largo variable FECHA_EXPIRACION Error Tipo Dato variable URL_COMERCIO Error Largo Dato variable URL_COMERCIO Error Tipo Dato variable MONTO_CUOTA Error Largo Dato variable MONTO_CUOTA Error en la variable MONTO_CUOTA Error Tasa De Interés Deshabilitada Error Largo Dato variable TR_TASA_INTERES_MAX Error cantidad parámetros TR_TASA_INTERES_MAX Error por no consistencia entre tiendas de un Mall para tipo de pago CIC. Error en cuota asociada a CIC.Se intento de registrar un usuario ilegal en Base One Click Error al intentar leer archivo de parámetros con Comercios Error al abrir la Base de Datos de 64 Transbank S. .A. Deben ser todas CIC o ninguna. A.Se intento de registrar un usuario ilegal en Base OC que fue detectado en RUT_NEGATIVOS Error. .al intentar abrir la Base TARJETA_NEGATIVOS Error.Se intento de registrar un usuario ilegal en Base OC que fue detectado en TARJETA_NEGATIVOS Error al intentar almacenar sobre Base RUT_NEGATIVOS Error al intentar almacenar sobre Base TARJETA_NEGATIVOS Usuario ya estaba registrado en la base RUT_NEGATIVOS Usuario ya estaba registrado en la base TARJETA_NEGATIVOS Usuario a eliminar no se encuentra registrado en base RUT_NEGATIVOS Usuario a eliminar no se encuentra registrado en base TARJETA_NEGATIVOS Error al intentar eliminar sobre Base RUT_NEGATIVOS Error al intentar eliminar sobre Base TARJETA_NEGATIVOS Error al intentar generar el archivo de reportes para validación ONLINE Falta parámetro TBK_TIPO_TRANSACCION Error Tipo var TBK_TIPO_TRANSACCION Error formato TBK_TIPO_TRANSACCION Falta parámetro TBK_MONTO Error Tipo var TBK_MONTO Error formato TBK_MONTO Falta parámetro TBK_ORDEN_COMPRA Error Tipo var TBK_ORDEN_COMPRA Error formato TBK_ORDEN_COMPRA Falta parámetro TBK_ID_SESION Error Tipo var TBK_ID_SESION Error formato TBK_ID_SESION Falta parámetro TBK_URL_EXITO Error Tipo var TBK_URL_EXITO Error formato TBK_URL_EXITO Falta parámetro TBK_URL_FRACASO Error Tipo var TBK_URL_FRACASO Error formato TBK_URL_FRACASO Falta parámetro TBK_ID_USUARIO Error Tipo var TBK_ID_USUARIO Error formato TBK_ID_USUARIO Falta parámetro TBK_TIPO_PAGO 65 Transbank S.al intentar abrir la Base RUT_NEGATIVOS Error.Nº Código Error Error 185 186 187 188 189 190 191 192 193 194 195 196 197 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 ERR_LECTURA_NEGATIVO_RUT ERR_LECTURA_NEGATIVO_TARJETA ERR_INSERTAR_OC_ILEGAL_RUT ERR_INSERTAR_OC_ILEGAL_TARJETA ERR_INSERTAR_RUT ERR_INSERTAR_TAR ERR_USUARIO_RUT_YA_REGISTRADO ERR_USUARIO_TAR_YA_REGISTRADO ERR_USUARIO_RUT_NO_REGISTRADO ERR_USUARIO_TAR_NO_REGISTRADO ERR_ELIMINAR_RUT ERR_ELIMINAR_TAR ERR_WRITE_REP_ONLINE ERR_PARAM_TBK_TIPO_TRANSACCION ERR_LEN_PARAM_TBK_TIPO_TRANSACCION ERR_FORMATO_PARAM_TBK_TIPO_TRANSACCION ERR_PARAM_TBK_MONTO ERR_LEN_PARAM_TBK_MONTO ERR_FORMATO_PARAM_TBK_MONTO ERR_PARAM_TBK_ORDEN_COMPRA ERR_LEN_PARAM_TBK_ORDEN_COMPRA ERR_FORMATO_PARAM_TBK_ORDEN_COMPRA ERR_PARAM_TBK_ID_SESION ERR_LEN_PARAM_TBK_ID_SESION ERR_FORMATO_PARAM_TBK_ID_SESION ERR_PARAM_TBK_URL_EXITO ERR_LEN_PARAM_TBK_URL_EXITO ERR_FORMATO_PARAM_TBK_URL_EXITO ERR_PARAM_TBK_URL_FRACASO ERR_LEN_PARAM_TBK_URL_FRACASO ERR_FORMATO_PARAM_TBK_URL_FRACASO ERR_PARAM_TBK_ID_USUARIO ERR_LEN_PARAM_TBK_ID_USUARIO ERR_FORMATO_PARAM_TBK_ID_USUARIO ERR_PARAM_TBK_TIPO_PAGO Descripción Seguridad RUT_TARJETA Error. A. .Nº Código Error Error 222 ERR_LEN_PARAM_TBK_TIPO_PAGO 223 ERR_FORMATO_PARAM_TBK_TIPO_PAGO 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 Descripción Error Tipo var TBK_TIPO_PAGO Error formato TBK_TIPO_PAGO Falta parámetro ERR_PARAM_TBK_NUMERO_CUOTAS TBK_NUMERO_CUOTAS ERR_LEN_PARAM_TBK_NUMERO_CUOTAS Error Tipo var TBK_NUMERO_CUOTAS ERR_FORMATO_PARAM_TBK_NUMERO_CUOTAS Error formato TBK_NUMERO_CUOTAS ERR_PARAM_TBK_MONTO_CUOTA Falta parámetro TBK_MONTO_CUOTA ERR_LEN_PARAM_TBK_MONTO_CUOTA Error Tipo var TBK_MONTO_CUOTA ERR_FORMATO_PARAM_TBK_MONTO_CUOTA Error formato TBK_MONTO_CUOTA ERR_PARAM_TBK_NUM_TRX Falta parámetro TBK_NUM_TRX ERR_LEN_PARAM_TBK_NUM_TRX Error Tipo var TBK_NUM_TRX ERR_FORMATO_PARAM_TBK_NUM_TRX Error formato TBK_NUM_TRX Falta parámetro ERR_PARAM_TBK_NUMERO_TARJETA TBK_NUMERO_TARJETA ERR_LEN_PARAM_TBK_NUMERO_TARJETA Error Tipo var TBK_NUMERO_TARJETA ERR_FORMATO_PARAM_TBK_NUMERO_TARJETA Error formato TBK_NUMERO_TARJETA Falta parámetro ERR_PARAM_TBK_FECHA_EXPIRACION TBK_FECHA_EXPIRACION ERR_LEN_PARAM_TBK_FECHA_EXPIRACION Error Tipo var TBK_FECHA_EXPIRACION ERR_FORMATO_PARAM_TBK_FECHA_EXPIRACION Error formato TBK_FECHA_EXPIRACION ERR_PARAM_TBK_CVV Falta parámetro TBK_CVV ERR_LEN_PARAM_TBK_CVV Error Tipo var TBK_CVV ERR_FORMATO_PARAM_TBK_CVV Error formato TBK_CVV ERR_PARAM_TBK_URL_RESULTADO Falta parámetro TBK_URL_RESULTADO ERR_LEN_PARAM_TBK_URL_RESULTADO Error Tipo var TBK_URL_RESULTADO ERR_FORMATO_PARAM_TBK_URL_RESULTADO Error formato TBK_URL_RESULTADO Falta parámetro ERR_PARAM_TBK_CODIGO_TIENDA_M TBK_CODIGO_TIENDA_M ERR_LEN_PARAM_TBK_CODIGO_TIENDA_M Error Tipo var TBK_CODIGO_TIENDA_M ERR_FORMATO_PARAM_TBK_CODIGO_TIENDA_M Error formato TBK_CODIGO_TIENDA_M Falta parámetro ERR_PARAM_TBK_ORDEN_TIENDA_M TBK_ORDEN_TIENDA_M ERR_LEN_PARAM_TBK_ORDEN_TIENDA_M Error Tipo var TBK_ORDEN_TIENDA_M ERR_FORMATO_PARAM_TBK_ORDEN_TIENDA_M Error formato TBK_ORDEN_TIENDA_M Falta parámetro ERR_PARAM_TBK_MONTO_TIENDA_M TBK_MONTO_TIENDA_M ERR_LEN_PARAM_TBK_MONTO_TIENDA_M Error Tipo var TBK_MONTO_TIENDA_M ERR_FORMATO_PARAM_TBK_MONTO_TIENDA_M Error formato TBK_MONTO_TIENDA_M Falta parámetro ERR_PARAM_TBK_MONTO_CUOTA_M TBK_MONTO_CUOTA_M ERR_LEN_PARAM_TBK_MONTO_CUOTA_M Error Tipo var TBK_MONTO_CUOTA_M ERR_FORMATO_PARAM_TBK_MONTO_CUOTA_M Error formato TBK_MONTO_CUOTA_M Falta parámetro ERR_PARAM_TBK_NUMERO_CUOTAS_M TBK_NUMERO_CUOTAS_M Error Tipo var ERR_LEN_PARAM_TBK_NUMERO_CUOTAS_M TBK_NUMERO_CUOTAS_M Error formato ERR_FORMATO_PARAM_TBK_NUMERO_CUOTAS_M TBK_NUMERO_CUOTAS_M ERR_PARAM_TBK_TIPO_PAGO_M Falta parámetro TBK_TIPO_PAGO_M ERR_LEN_PARAM_TBK_TIPO_PAGO_M Error Tipo var TBK_TIPO_PAGO_M ERR_FORMATO_PARAM_TBK_TIPO_PAGO_M Error formato TBK_TIPO_PAGO_M ERR_CORRESPONDENCIA_TIPO_PAGO_NUMERO_CU Error correspondencia entre OTAS TBK_TIPO_PAGO Y 66 Transbank S. Nº Código Error Error 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 ERR_PARAM_TBK_TIPO_TRANSACCION ERR_LEN_PARAM_TBK_TIPO_TRANSACCION ERR_FORMATO_PARAM_TBK_TIPO_TRANSACCION ERR_PARAM_TBK_MONTO ERR_LEN_PARAM_TBK_MONTO ERR_FORMATO_PARAM_TBK_MONTO ERR_PARAM_TBK_ORDEN_COMPRA ERR_LEN_PARAM_TBK_ORDEN_COMPRA ERR_FORMATO_PARAM_TBK_ORDEN_COMPRA ERR_PARAM_TBK_ID_SESION ERR_LEN_PARAM_TBK_ID_SESION ERR_FORMATO_PARAM_TBK_ID_SESION ERR_PARAM_TBK_URL_EXITO ERR_LEN_PARAM_TBK_URL_EXITO ERR_FORMATO_PARAM_TBK_URL_EXITO ERR_PARAM_TBK_URL_FRACASO ERR_LEN_PARAM_TBK_URL_FRACASO ERR_FORMATO_PARAM_TBK_URL_FRACASO ERR_PARAM_TBK_ID_USUARIO ERR_LEN_PARAM_TBK_ID_USUARIO ERR_FORMATO_PARAM_TBK_ID_USUARIO ERR_PARAM_TBK_TIPO_PAGO ERR_LEN_PARAM_TBK_TIPO_PAGO ERR_FORMATO_PARAM_TBK_TIPO_PAGO ERR_PARAM_TBK_NUMERO_CUOTAS ERR_LEN_PARAM_TBK_NUMERO_CUOTAS ERR_FORMATO_PARAM_TBK_NUMERO_CUOTAS ERR_PARAM_TBK_MONTO_CUOTA ERR_LEN_PARAM_TBK_MONTO_CUOTA ERR_FORMATO_PARAM_TBK_MONTO_CUOTA ERR_PARAM_TBK_NUM_TRX ERR_LEN_PARAM_TBK_NUM_TRX ERR_FORMATO_PARAM_TBK_NUM_TRX ERR_PARAM_TBK_NUMERO_TARJETA ERR_LEN_PARAM_TBK_NUMERO_TARJETA ERR_FORMATO_PARAM_TBK_NUMERO_TARJETA ERR_PARAM_TBK_FECHA_EXPIRACION ERR_LEN_PARAM_TBK_FECHA_EXPIRACION ERR_FORMATO_PARAM_TBK_FECHA_EXPIRACION ERR_PARAM_TBK_CVV Descripción TBK_NUMERO_CUOTAS Falta parámetro TBK_TIPO_TRANSACCION Error largo TBK_TIPO_TRANSACCION Error formato TBK_TIPO_TRANSACCION Falta parámetro TBK_MONTO Error largo TBK_MONTO Error formato TBK_MONTO Falta parámetro TBK_ORDEN_COMPRA Error largo TBK_ORDEN_COMPRA Error formato TBK_ORDEN_COMPRA Falta parámetro TBK_ID_SESION Error largo TBK_ID_SESION Error formato TBK_ID_SESION Falta parámetro TBK_URL_EXITO Error largo TBK_URL_EXITO Error formato TBK_URL_EXITO Falta parámetro TBK_URL_FRACASO Error largo TBK_URL_FRACASO Error formato TBK_URL_FRACASO Falta parámetro TBK_ID_USUARIO Error largo TBK_ID_USUARIO Error formato TBK_ID_USUARIO Falta parámetro TBK_TIPO_PAGO Error largo TBK_TIPO_PAGO Error formato TBK_TIPO_PAGO Falta parámetro TBK_NUMERO_CUOTAS Error largo TBK_NUMERO_CUOTAS Error formato TBK_NUMERO_CUOTAS Falta parámetro TBK_MONTO_CUOTA Error largo TBK_MONTO_CUOTA Error formato TBK_MONTO_CUOTA Falta parámetro TBK_NUM_TRX Error largo TBK_NUM_TRX Error formato TBK_NUM_TRX Falta parámetro TBK_NUMERO_TARJETA Error largo TBK_NUMERO_TARJETA Error formato TBK_NUMERO_TARJETA Falta parámetro TBK_FECHA_EXPIRACION Error largo TBK_FECHA_EXPIRACION Error formato TBK_FECHA_EXPIRACION Falta parámetro TBK_CVV 67 Transbank S.A. . A.Nº Código Error Error 340 ERR_LEN_PARAM_TBK_CVV 341 342 ERR_FORMATO_PARAM_TBK_CVV ERR_PARAM_TBK_URL_RESULTADO Descripción Error largo TBK_CVV Error formato TBK_CVV Falta parámetro TBK_URL_RESULTADO 343 344 345 346 347 348 349 350 348 349 350 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 ERR_LEN_PARAM_TBK_URL_RESULTADO ERR_FORMATO_PARAM_TBK_URL_RESULTADO ERR_PARAM_TBK_RESPUESTA ERR_FORMATO_PARAM_TBK_RESPUESTA ERR_FORMATO_PARAM_TBK_RESPUESTA ERR_PARAM_TBK_FINAL_NUMERO_TARJETA Error largo TBK_URL_RESULTADO Error formato TBK_URL_RESULTADO Falta parámetro TBK_RESPUESTA Error largo TBK_RESPUESTA Error formato TBK_RESPUESTA Falta parámetro TBK_FINAL_NUMERO_TARJETA ERR_FORMATO_PARAM_TBK_FINAL_NUMERO_TARJ Error largo ETA TBK_FINAL_NUMERO_TARJETA ERR_FORMATO_PARAM_TBK_FINAL_NUMERO_TARJ Error formato ETA TBK_FINAL_NUMERO_TARJETA ERR_PARAM_ ERR_FORMATO_PARAM_ ERR_FORMATO_PARAM_ ERR_PARAM_ ERR_FORMATO_PARAM_ ERR_FORMATO_PARAM_ ERR_PARAM_TBK_FECHA_CONTABLE ERR_FORMATO_PARAM_TBK_FECHA_CONTABLE ERR_FORMATO_PARAM_TBK_FECHA_CONTABLE ERR_PARAM_TBK_FECHA_TRANSACCION Falta parámetro TBK_FINAL_NUMERO_TARJETA Error largo TBK_FINAL_NUMERO_TARJETA Error formato TBK_FINAL_NUMERO_TARJETA Falta parámetro TBK_FINAL_NUMERO_TARJETA Error largo TBK_FINAL_NUMERO_TARJETA Error formato TBK_FINAL_NUMERO_TARJETA Falta parámetro TBK_FECHA_CONTABLE Error largo TBK_FECHA_CONTABLE Error formato TBK_FECHA_CONTABLE Falta parámetro TBK_FECHA_TRANSACCION ERR_FORMATO_PARAM_TBK_FECHA_TRANSACCION Error largo TBK_FECHA_TRANSACCION Error formato ERR_FORMATO_PARAM_TBK_FECHA_TRANSACCION TBK_FECHA_TRANSACCION ERR_PARAM_ TBK_HORA_TRANSACCION ERR_FORMATO_PARAM_TBK_HORA_TRANSACCION ERR_FORMATO_PARAM_TBK_HORA_TRANSACCION ERR_PARAM_TBK_ID_TRANSACCION ERR_FORMATO_PARAM_TBK_ID_TRANSACCION ERR_FORMATO_PARAM_TBK_ID_TRANSACCION Falta parámetro TBK_HORA_TRANSACCION Error largo TBK_HORA_TRANSACCION Error formato TBK_HORA_TRANSACCION Falta parámetro TBK_ID_TRANSACCION Error largo TBK_ID_TRANSACCION Error formato TBK_ID_TRANSACCION 68 Transbank S. . A.Nº Código Error Error 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 ERR_PARAM_TBK_CODIGO_AUTORIZACION Descripción Falta parámetro TBK_CODIGO_AUTORIZACION ERR_FORMATO_PARAM_TBK_CODIGO_AUTORIZACIO Error largo N TBK_CODIGO_AUTORIZACION ERR_FORMATO_PARAM_TBK_CODIGO_AUTORIZACIO Error formato N TBK_CODIGO_AUTORIZACION ERR_PARAM_TBK_MAC ERR_FORMATO_PARAM_TBK_MAC ERR_FORMATO_PARAM_TBK_MAC ERR_PARAM_TBK_CODIGO_TIENDA_MXXX ERR_LEN_PARAM_TBK_CODIGO_TIENDA_MXXX Falta parámetro TBK_MAC Error largo TBK_MAC Error formato TBK_MAC Falta parámetro TBK_CODIGO_TIENDA_MXXX Error Tipo var TBK_CODIGO_TIENDA_MXXX ERR_FORMATO_PARAM_TBK_CODIGO_TIENDA_MXX Error formato X TBK_CODIGO_TIENDA_MXXX ERR_PARAM_TBK_ORDEN_TIENDA_MXXX ERR_LEN_PARAM_TBK_ORDEN_TIENDA_MXXX Falta parámetro TBK_ORDEN_TIENDA_MXXX Error Tipo var TBK_ORDEN_TIENDA_MXXX Error formato ERR_FORMATO_PARAM_TBK_ORDEN_TIENDA_MXXX TBK_ORDEN_TIENDA_MXXX ERR_PARAM_TBK_MONTO_TIENDA_MXXX ERR_LEN_PARAM_TBK_MONTO_TIENDA_MXXX Falta parámetro TBK_MONTO_TIENDA_MXXX Error Tipo var TBK_MONTO_TIENDA_MXXX Error formato ERR_FORMATO_PARAM_TBK_MONTO_TIENDA_MXXX TBK_MONTO_TIENDA_MXXX ERR_PARAM_TBK_MONTO_CUOTA_MXXX ERR_LEN_PARAM_TBK_MONTO_CUOTA_MXXX Falta parámetro TBK_MONTO_CUOTA_MXXX Error Tipo var TBK_MONTO_CUOTA_MXXX Error formato ERR_FORMATO_PARAM_TBK_MONTO_CUOTA_MXXX TBK_MONTO_CUOTA_MXXX ERR_PARAM_TBK_NUMERO_CUOTAS_MXXX ERR_LEN_PARAM_TBK_NUMERO_CUOTAS_MXXX Falta parámetro TBK_NUMERO_CUOTAS_MXXX Error Tipo var TBK_NUMERO_CUOTAS_MXXX ERR_FORMATO_PARAM_TBK_NUMERO_CUOTAS_MX Error formato XX TBK_NUMERO_CUOTAS_MXXX ERR_PARAM_TBK_TIPO_PAGO_MXXX ERR_LEN_PARAM_TBK_TIPO_PAGO_MXXX ERR_FORMATO_PARAM_TBK_TIPO_PAGO_MXXX ERR_PARAM_TBK_COD_AUT_MXXX ERR_LEN_PARAM_TBK_COD_AUT_MXXX ERR_FORMATO_PARAM_TBK_COD_AUT_MXXX Falta parámetro TBK_TIPO_PAGO_MXXX Error Tipo var TBK_TIPO_PAGO_MXXX Error formato TBK_TIPO_PAGO_MXXX Falta parámetro TBK_COD_AUT_MXXX Error Tipo var TBK_COD_AUT_MXXX Error formato TBK_COD_AUT_MXXX 69 Transbank S. . A.Nº Código Error Error 390 ERR_PARAM_TBK_COD_RESP_MXXX 391 392 ERR_LEN_PARAM_TBK_COD_RESP_MXXX ERR_FORMATO_PARAM_TBK_COD_RESP_MXXX Descripción Falta parámetro TBK_COD_RESP_MXXX Error Tipo var TBK_COD_RESP_MXXX Error formato TBK_COD_RESP_MXXX 393 394 396 397 398 399 400 402 403 425 426 427 428 429 430 431 432 433 434 440 441 442 443 Error correspondencia entre ERR_CORRESPONDENCIA_TIPO_PAGO_NUMERO_CU TBK_TIPO_PAGO Y OTAS TBK_NUMERO_CUOTAS ERR_NRO_TIENDAS ERR_CONFIGDAT_WHITELISTCOM ERR_STRUCT_ARCH_PARAMCOM ERR_ARCH_PARAMCOM ERR_ARCH_PARAMCOM_VARIABLE_NO_EXISTE ERR_ARCH_PARAMCOM_CGI_NO_ENCONTRADA ERR_PARAM_MEDIO_COMERCIO ERR_PARAM_URL_CGI_TBK_VALIDACION ERR_ENCRIPTANDO_CODIGO_COMERCIO ERR_LARGO_ENC_CODIGO_COMERCIO ERR_ENCRIPTANDO_TBK_PARAM ERR_LARGO_ENC_TBK_PARAM ERR_SSL_CTX ERR_SSL_CONEXION ERR_SSL_ESCRITURA ERR_SSL_ESCRITURA_CONEXION ERR_SSL_REINTENTAR ERR_SSL_DATOS_NO_VALIDOS ERR_POST_CODIGO_COMERCIO ERR_POST_CODIGO_COMERCIO_ENC ERR_POST_TBK_PARAM ERR_LARGO_UB64_CODIGO_COMERCIO No hay tiendas asociada a transacción Mall Error parámetro WHITELISTCOM no existe en archivo tbk_config. Es posible reintentar mas tarde Error en la validación de los datos. existe una variable demás Error en archivo de parámetros comercio. Error en el código de comercio que viene en el post Error en el código de comercio encriptado que viene en el post Error en el TBK_PARAM que viene en el post Error en el largo al desencodear el 70 Transbank S. no se encontró CGI Error en el parámetro de medio de transacción MEDCOM Error en el parámetro de validación URLCGIMEDTRA Error al encriptar código de comercio Error al encriptar código de comercio: Largo invalido Error al encriptar TBK_PARAM Error al encriptar TBK_PARAM: Largo invalido SSL: Error al crear un nuevo objeto de tipo SSL_CTX SSL: Error al intentar la conexión SSL: Error al intentar escribir los datos a enviar por POST SSL: Error de conexión al intentar escribir los datos a enviar por POST SSL: Error de conexión.dat Error en estructura del archivo de parámetros comercio Error en archivo de parámetros comercio Error en archivo de parámetros comercio. . No se captura el token. Error en largo de la nueva lista obtenida del TBK_PARAM desencriptado 451 452 ERR_P_CC_DESENCRIPTADO_DISTINTO_PARAM_CC ERR_LARGO_MY_PARSE_CGI 71 Transbank S.A.Nº Código Error Error Descripción código de comercio encriptado y encodeado 444 445 446 447 448 449 450 ERR_DESENCRIPTANDO_CODIGO_COMERCIO Error al desencriptar el código de comercio Error en el largo del código de ERR_LARGO_A_DESENCRIPTAR_CODIGO_COMERCIO comercio a desencriptar ERR_LARGO_UB64_TBK_PARAM ERR_DESENCRIPTANDO_TBK_PARAM ERR_LARGO_A_DESENCRIPTAR_TBK_PARAM ERR_P_CC_CLARO_DISTINTO_P_DESENCRIPTADO ERR_P_CC_CLARO_DISTINTO_PARAM_CC Error en el largo al desencodear TBK_PARAM encriptado y encodeado Error al desencriptar TBK_PARAM Error en el largo del TBK_PARAM a desencriptar Error en la comparación del código de comercio en claro con el desencriptado Error en la comparación del código de comercio en claro con el de tbk_config. Error en la comparación del código de comercio desencriptado con el de tbk_config. . ANEXO G ANEXOG Ejemplo integración de tienda Transacción Normal A continuación se describe un ejemplo de integración de tienda con tipo de transacción Normal, sobre el ambiente de certificación de Webpay. Los pasos a seguir son los siguientes: Paso Paso Paso Paso Paso Paso 1: Descomprimiendo KCC5 2: Configurando archivo de parámetros tbk_config.dat 3: Configurando parámetros de transacción tbk_param.txt 4: Instalando la llave privada del comercio de prueba privada.pem 5: Configurando el nivel de log en archivo tbk_trace.dat 6: Páginas de pago, cierre, éxito y fracaso Requerimientos: • • • Contar con un servidor web para ejecución de paginas .asp, ejemplo IIS Editor de texto Acceso a Internet con tráfico hacia certificación.webpay.cl puerto 6443 72 Transbank S.A. Paso 1: Descomprimiendo KCC5 El KCC versión 5 proporcionado por Transbank, específico para cada de plataforma de sistema operativo, es un archivo comprimido con la estructura que se describe a continuación. Vista desde WinZip de 1) Copiar el contenido de la carpeta CGI-BIN en la ubicación física del disco, en donde residen los CGIs en el servidor Web. 2) Copiar carpeta tbkimages en donde se encuentra el contenido del sitio web, de tal forma que sea accesibles desde http://tienda/tbkimages 73 Transbank S.A. Paso 2: Configurando archivo de parámetros tbk_config.dat Supuestos del ejemplo: Código de Comercio Tipo De Transacción Dirección Física IP Servidor de Comercio Puerto de acceso al Servidor de Comercio URL Servidor de Pago Puerto de acceso al Servidor de Pago Plataformas Servidor Web 597026016975 Normal SUPERCOMERCE 198.22.250.29 80 https://certificacion.webpay.cl 6443 Windows NT IIS Archivo tbk_config.dat: IDCOMERCIO = 597026016975 MEDCOM =2 PARAMVERIFCOM =1 URLCGICOM = /qa/kcc5/cgi-bin/tbk_bp_resultado.cgi SERVERCOM = 198.22.250.29 PORTCOM = 80 WHITELISTCOM = ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789._-:=/ HOST = 198.22.250.29 WPORT = 80 URLCGITRA = /cgi-bin/bp_revision.cgi URLCGIMEDTRA = /cgi-bin/bp_validacion.cgi SERVERTRA = https://certificacion.webpay.cl PORTTRA = 6443 PREFIJO_CONF_TR = HTML_ HTML_TR_NORMAL = http://198.22.250.29/qa/kcc5/xt_compra.asp 74 Transbank S.A. Paso 3: Configurando parámetros de transacción tbk_param.txt Verificar que los parámetros para la transacción normal (TRX_NORMAL) se encuentren bien configurados. BP_PAGO> <TR_NORMAL> TBK_TIPO_TRANSACCION#A#50#1 TBK_MONTO#M#10#1 TBK_ORDEN_COMPRA#A#26#1 TBK_ID_SESION#A#61#0 TBK_URL_FRACASO#A#256#1 TBK_URL_EXITO#A#256#1 TBK_MONTO_CUOTA#M#9#0 TBK_NUMERO_CUOTAS#N#2#0 </TR_NORMAL> ... Paso 4: Instalando la llave privada del comercio de prueba privada.pem La llave privada es un archivo de texto que debe ser copiado en la carpeta cgi-bin/maestros/ El contenido del archivo es el siguiente: -----BEGIN RSA PRIVATE KEY----MIICXQIBAAKBgQDV3xIu3OnC9v7a/asLoy6NOF3n3I0e58Yy1+4mOn1kso4ESExp OY5U1K267TEUFPN/BFO5FgZCAC3bClkHJ5tN7z2a5Gu7rXfwO0HJ+cDduOOv0QFX ZUjcM923cy5FFbDLcUPUPMq1hXcCH7tKUrKOunKwBEmkqyhp96/90T4afwIBAwKB gQCOlLbJ6JvXT1SR/nIHwh8I0D6akwi/RS7Mj/QZfFOYdwlYMDLw0QmN4x58niC4 DfeqAuJ7ZAQsAB6SBuYExRIyvAIniU4J817NXcFAsNELGvdp9AjBYJYPv0+4pTDI hptIpY9zBi+7Bz9v00V89xxoEzcYcTVZJhyQ7MAcODWrewJBAPu4rezz1sDuntjn L2gjll2KcDgiE7PuO/x0WyinpksmIP4MHjmPIoCPCyAcZ6hVFtJJR7DlG6XEfp0G eEy+gM0CQQDZgbGpgtX/ex1VuLmIY7ay5iCq0iGgeYiYccdSvXIAob164Il58/p6 CM9Ctqc3stvLVsOplINMORH3iVswLxh7AkEAp9Bz80051fRp5e908Be5k7GgJWwN Ip7SqE2SGxpu3MQV/rK+0QoXAF9cwBLvxY4PNtuFIJi9GS2pvgRQMymrMwJBAJEB IRusjqpSE457JlrtJHdEFcc2wRWmWxBL2jco9qsWflHrBlFNUaawiix5xM/MkoeP LRu4V4gmC/pbkiAfZacCQQDaPiFEkZlOP8ZW9SeXdwcNt1fay2MrnFqMPGPnerri X/1p1oAObaX3NYENyGZQ0U2Bzm3tHsc6lozrgi1QVZYR -----END RSA PRIVATE KEY----- 75 Transbank S.A. Paso 5: Configurando el nivel de log en archivo tbk_trace. Este archivo tiene como objetivo recoger la información de la compra que se pretende realizar. . éxito y fracaso Página de pago La llamada al KCC se hace a través del cgi tbk_bp_pago el que a su vez debe ser llamado desde la página de pago del comercio. Así de acuerdo a los parámetros de entrada de una transacción normal. cierre.A.dat Validar la siguiente línea al archivo tbk_trace.dat: GLEVEL = 7 Paso 6: Páginas de pago. este formulario de pago tiene la siguiente forma: 76 Transbank S. 250.250.CGI"> <TABLE BORDER=0 ALIGN="CENTER"> <TR> <TD ALIGN="CENTER"> <FONT FACE="ARIAL" SIZE="3" COLOR="WHITE">MONTO TRANSACCIÓN </FONT><BR> <INPUT TYPE="TEXT" NAME="TBK_MONTO" VALUE="10000"> <BR> </TD> <TD ALIGN="CENTER"> <BR> <INPUT TYPE="HIDDEN" NAME="TBK_TIPO_TRANSACCION" VALUE="TR_NORMAL"><BR> </TD> </TR> <TR> <TD ALIGN="CENTER"> <FONT FACE="ARIAL" SIZE="3" COLOR="WHITE">Nº DE ORDEN</FONT><BR> <INPUT TYPE="TEXT" NAME="TBK_ORDEN_COMPRA" VALUE="5FX9022222"><BR> </TD> <TD ALIGN="CENTER"><BR> <INPUT TYPE="HIDDEN" NAME="TBK_ID_SESION" VALUE="123456789"> <BR> </TD> </TR> </TABLE> <TABLE BORDER=0 ALIGN="CENTER"> <TR> <TD ALIGN="CENTER"><BR> <INPUT TYPE="HIDDEN" NAME="TBK_URL_EXITO" SIZE="40" VALUE="HTTP://198.asp <HTML> <HEAD> <TITLE>WEBPAY TRANSBANK .ASP" SIZE="50"><BR> </TD> </TR> </TABLE> <TABLE BORDER=0 ALIGN="CENTER"> <TR> <TD ALIGN="CENTER"><BR><INPUT TYPE="SUBMIT" VALUE="PAGAR CON TARJETA DE CRÉDITO" SIZE="20"> </BR> </TD> </TR> </TABLE> </FORM> </BODY> </HTML> 77 Transbank S.ASP" SIZE="50"><BR> </TD> <TD ALIGN="CENTER"><BR> <INPUT TYPE="HIDDEN" NAME="TBK_URL_FRACASO" SIZE="40" VALUE="HTTP://198. .29/QA/KCC5/FRACASO.A.22.22.pago.TRANSACCION NORMAL </TITLE> </HEAD> <BODY BGCOLOR="#3069C6" TOPMARGIN="10" LEFTMARGIN="0" MARGINWIDTH="0" MARGINHEIGHT="0"><BR> <P ALIGN="CENTER"> <FONT FACE=ARIAL SIZE=5 COLOR=WHITE> EJEMPLO TRANSACCION NORMAL</FONT> </P> <BR> <FORM METHOD="POST" ACTION="/QA/KCC5/CGI-BIN/TBK_BP_PAGO.29/QA/KCC5/EXITO. TBK_ID_TRANSACCION=129613424593.J6dfaClMcO4zX8qbQ7f23fb_. TBK_MONTO=565200. TBK_CODIGO_AUTORIZACION=000000. de ser exitosa la operación anterior debe devolver por la misma vía un String “ACEPTADO”.xGnQo kv5zVkHlYnpTPAkgnu yKOWgxJwRclI97k6KD85ZsqZdabenDwcY53uKyi3tpAxx. TBK_MAC=89c32c3b5h77dc29d3bf4b7fd1fad987d2d6 78 Transbank S. TBK_FECHA_TRANSACCION=0520. La salida estándar del programa entregara la palabra “Correcto” si el MAC es correcto. TBK_RESPUESTA=-1.A. TBK_TIPO_TRANSACCION=TR_NORMAL. TBK_TIPO_PAGO=VN. Como forma de prueba se puede generar el siguiente código ASP que siempre acepta la transacción y guarda el código de autorización en un archivo temporal.dat bajo el parámetro HTML_TR_NORMAL. TBK_FINAL_NUMERO_TARJETA=7276. TBK_CODIGO_COMERCIO=597027342714. Página de cierre simplificada. Esta página se debe guardar con el nombre xt_compra. TBK_CODIGO_COMERCIO_ENC=aJuB7cktCrot02Mz48jMy3n6kRx8GO8NYP1YvDZL. . TBK_HORA_TRANSACCION=124144.JxC-y6dKZxsQ2nRtSi 134HficMNkjpmPO8zEm. Un ejemplo del archivo temporal generado se muestra a continuación: TBK_ORDEN_COMPRA=221353.Página De Cierre Esta página debe ser capaz de extraer los parámetros de respuesta que entrega Transbank y posteriormente confirmar la transacción por parte del comercio. TBK_ID_SESION=238831. al cual se debe ejecutar entregándole un archivo temporal que contenga todos los parámetros recibidos desde Transbank. TBK_FECHA_CONTABLE=0520.asp o con el que se configura en el archivo tbk_config. sin validaciones: <HTML> <BODY> ACEPTADO </BODY> </HTML> La validación del MAC se realiza a través del programa tbk_check_mac. TBK_NUMERO_CUOTAS=0. Form.Página de cierre con comprobación de MAC: <html> <% resultado = check_mac carpeta = "d:\qa\kcc5\cgi-bin\log" archivo = Request.txt" set filesys=CreateObject("Scripting.write(resultado) file.Key(i))&"&") NEXT file.Key(i)&"="&Request.write("RECHAZO") end if function check_mac () carpeta = "d:\qa\kcc5\cgi-bin\log" archivo = Request.Form("TBK_ID_TRANSACCION")&"_trx_valida_ckeckmac.Form.CreateTextFile(carpeta&"\"&archivo ) ' recupera parámetros y guarda en archivo For i=1 to Request.Form("TBK_ID_TRANSACCION")&"_trx_valida_resultado.write("ACEPTADO") else Response.Form.FileSystemObject") set file=filesys.close if resultado=VALIDO then Response.txt" set filesys=CreateObject("Scripting.Shell") iReturn = WshShell.Form(Request.CreateTextFile(carpeta&"\"&archivo ) file. .A.FileSystemObject") set file=filesys.true) check_mac = iReturn end function %> </html> 79 Transbank S.exe " & archivo Set WshShell = CreateObject ("WScript.Close str = "d:\qa\kcc5\cgi-bin\tbk_check_mac.write(Request.Run(str.0.Count file. etc.. Ejemplo página fracaso: <HTML> <BODY> LA TRANSACCION HA SIDO REALIZADA CON ÉXITO . Esta página debiera desplegar información sobre el producto o servicio pagado. Se agrega información de la compra. etc.A.Páginas de fracaso El parámetro TBK_URL_FRACASO corresponde a la URL que contiene a la página que se llamará en el caso que la transacción fracase. . condiciones de entrega. orden de compra. basta con que contenga un mensaje apropiado que informe al usuario que la transacción no se realizó. información que puede ser extraída desde la base de datos del comercio. No hay ningún requerimiento sobre esta página.. condiciones de entrega. Ejemplo página éxito: <HTML> <BODY> LA TRANSACCION NO SE PUDO REALIZAR </BODY > </HTML> Página de éxito El parámetro TBK_URL_EXITO corresponde a la URL que contiene a la página que se llamará en caso que la transacción se haya ejecutado correctamente. </BODY > </HTML> 80 Transbank S. COPYRIGHT©2001 (Última Actualización Junio de 2008) 81 Transbank S. .A.A.Transbank S.
Copyright © 2024 DOKUMEN.SITE Inc.