VTOL - Introducción




CONTENIDO



1. Introducción

En el presente documento se listará los términos más utilizados cuando se trabaja con VTOL. 

Estos términos son explicado de manera genérica ya que dependiendo el contexto y el negocio puede darse el caso de que exista una definición más fuerte a más específica del término utilizado.
Para obtener mayor conocimiento de VTOL y la terminología utilizada por favor referirse al material de referencia correspondiente.


2. Desarrollo

2.1 VTOL

VTOL es una validador de Servicios en Línea, especializado en la industria del Retail y sus operaciones financieras.
Se comporta como un Gateway multipropósito que conduce transacciones electrónicas desde y hacia diferentes participantes (locales físicos y virtuales, banca, proveedores) a través de redes heterogéneas en forma rápida, segura y eficiente.
La definición de VTOL en cierta forma es generalizada ya que al mismo tiempo se puede estar hablando de:

  • VTOL Server
    • VTOL que corre de forma centralizada. A su vez está formado por VTOL CORE y uno o más módulos.
  • VTOL Store
    • VTOL "liviano" que corre en la tienda
  • EMV Kit
    • Librería de integración con el pinpad
  • Librerías de integración
    • Librerías escritas en distintos lenguajes de programación que permiten de manera sencilla integrar un punto de venta a VTOL Server.


A continuación se puede visualizar un diagrama general de VTOL.

2.2 VTOL Server

¿Qué es VTOL Server?

VTOL Server es el componente de software más importante de la solución VTOL. Es un componente que habitualmente funciona de manera centralizada brindando servicio de validación y autorización de transacciones a los diferentes canales de ventas (POS, WEB, Mobile, etc).
Está desarrollado íntegramente en la plataforma de código interpretado JAVA brindando de ésta forma portabilidad a diferentes plataformas.

¿Cuál es la arquitectura de VTOL Server?



Diagrama general de arquitectura

Como se observa en el gráfico es una aplicación desarrollado íntegramente en el lenguaje de programación Java por lo que la hace independiente del sistema operativo.
Posee una capa de persistencia que también permite abstraerse del motor de base de datos a utilizar, como ser Oracle, MS SQL, IBM DB2, etc.
Por el lado de la comunicación, encontramos componentes de comunicación que permiten comunicar a la aplicación bajo diferentes protocolos de comunicación, como ser TCPIP, X25, PR1000, HTTP, etc.
Luego existe una capa de interpretación que se encarga de interpretar los mensajes. Esta característica permite manejar diferentes protocolos propietarios, como ser ISO8583, SP, VISA II, etc.
Una vez pasada la capa de interpretación vemos que existe un módulo denominado VTOL Core. Este componente se encarga de realizar la auditoría de transacciones bajo lo que denominamos tercer mensaje.
Por último, cada transacción es derivada por VTOL Core al módulo correspondiente (bajo una API en común) el cuál, bajo ciertas reglas de negocio, envía las autorizaciones a los diferentes centros autorizadores para su propia aprobación de transacciones.
Las transacciones son persistidas en la base de datos, para su posterior explotación, como ser reportes, cierres, conciliación, monitores, interfaces, etc.
Esta solución cuenta con una consola WEB donde existe un nivel de seguridad a nivel de usuario. Por medio de la consola de administración se puede crear, eliminar y modificar los datos operativos de la aplicación según sea necesario. También es posible monitorear los enlaces con los diferentes centros autorizadores, crear reportes, planificar procesos, definir alertas, administrar usuarios, consultar acciones de usuarios (auditoría), etc.
A nivel de arquitectura, la aplicación está soportada sobre el servidor de aplicaciones JBOSS, el cual brinda diferentes servicios que son utilizados por VTOL, como ser por ejemplo la configuración de datasources.

Nota: cada módulo (se explicará más adelante) posee diferentes reglas de negocios, por lo que las funcionalidades y opciones de configuración son variadas.

¿Qué es VTOL Core?

El CORE de VTOL es un componente que se encarga de levantar y administrar cada uno de los módulos configurados para inicializar y luego mediante una política de ruteo por tipo de transacción, derivará cada uno de los requerimientos que le llegan al módulo correspondiente para su procesamiento. Una vez procesada esa transacción, el modulo devolverá una respuesta al Core y este se encargará de responderle al POS para luego manejar la conciliación de esta transacción.
Este componente core se encarga de establecer la auditoría transaccional entre el POS y VTOL.

¿Qué es un módulo de VTOL?

Un módulo dentro de RS-VTOL 3.7 es una unidad funcional, creada con el fin de resolver un área de negocio particular, el cual se comprende de código JAVA y archivos de configuración. El módulo contará con funcionalidad base proporcionada por el Core.
Los módulos pueden ser

  • De productos
    • la funcionalidad provista es aplicable a más de un cliente, por lo que puede ser reutilizada en su totalidad.
  • Para proyectos
    • La funcionalidad provista es aplicable a ese cliente en particular. Se usa cuando el cliente quiere integrarse con un sistema propietario


Ejemplos:

  • Productos
    • Módulo Crédito Débito
    • Módulo TAE (Tiempo Aire Electrónico)
    • Módulo Monedero
    • Módulo Link
    • etc
  • Proyectos
    • Módulo EpayBridge: conecta un sistema denominado EPAY con el módulo "producto" Crédito Débito
    • Módulo TA (Tarjeta Abierta): conecta transacciones financieras, no financieras y autorizantes al autorizador IC
    • Módulo Fleet Card: permite conectar transacciones de consulta de saldo, ventas, anulaciones y reversas de flota de transporte


¿Qué es la Auditoría transaccional?

La auditoría transaccional es un proceso de intercambio de mensajes entre un POS (punto de venta) y VTOL para cerciorarse que las transacciones procesadas en el POS coinciden en VTOL y viceversa.
De existir alguna diferencia se vuelven atrás las transacciones de más del lado de VTOL.
En la actualidad existen dos mecanismos de auditoría transaccional:

  • Por lote (deprecado)
    • Cuando el POS hace el cierre se envía un mensaje indicando todas las transacciones realizadas en ese periodo (de cierre a cierre). VTOL hace el matching confirmando las que coinciden y rollbackeando las que no.
  • Por transacción (usado en la actualidad)
    • El POS transacción a transacción va confirmado si la transacción se hizo de forma exitosa o no. En ésta modalidad se introduce el "tercer mensaje" que sirve para indicar si la trx fue realizada o no. A continuación se muestra un ejemplo



Además, el CORE provee persistencia de los requerimientos, la comunicación cliente normal y encriptada, el manejo de nodo-tienda-compañía, etc.

¿Qué es el protocolo VTOL?

Synthesis establece un protocolo de comunicación para la interacción POS - VTOL, el cual se denomina "Protocolo VTOL". Dicho protocolo se basa en un esquema recursivo compuesto por campos y separadores.
El formato del protocolo VTOL se basa en la siguiente estructura:



La estructura posee dos partes separadas que son el Header y el Mensaje propiamente dicho.
En cuanto al mensaje en sí, el mismo se componente de un carácter de inicio '{' y uno de fin '}'. Luego internamente existe N duplas separadas por ';'. Cada dupla indica un campo y su valor de la siguiente forma 'campoN:valorN'.
El significado de cada campo N será cuestión de una definición de mensajería.

¿Qué es una Mensajería?

Una mensajería es una especificación de protocolos de comunicación, reglas de negocio y formato de mensajes que vive dentro de VTOL.
Un ejemplo muy común a la hora de hacer un desarrollo en VTOL es pedir "la especificación de la mensajería". Se pretende obtener un documento donde se indique bajo que protocolo, flujos de mensajes y que formatos de mensajes VTOL debe comunicarse con otro sistema. Esto luego se traduce a una especificación técnica de VTOL y una definición de mensajes que se disponen al POS para poder operar.
Entonces una mensajería es un conjunto de reglas de negocio y mensajes que permiten interactuar POS, VTOL y sistemas externos.

¿Qué es un Nodo?

El nodo en VTOL es la representación de una terminal física. Hablar de Nodo o terminal física o punto de venta es lo mismo.

¿Qué es una Terminal?

Normalmente ésta definición se le da a una terminal lógica.
Una terminal lógica es un número de terminal que un autorizador asigna según corresponda. Luego en VTOL se realiza un mapeo de terminal lógica con nodo o terminal física.
Por ejemplo: en crédito débito, un nodo tiene asociada una terminal lógica por cada definición de lote, es decir, un nodo puede tener más de una terminal lógica asociada.

¿Qué es un Canal?

Un canal es una conexión a un centro autorizador por el cual se validan ciertas transacciones. Normalmente está asociado al módulo crédito débito.
A su vez éste canal posee una definición lógica en sintonía con la definición de reglas de negocio del autorizador.

¿Qué es una Tarjeta?

Es la entidad que provee el servicio de financiación a la tarjeta habiente. Ejemplos son: Visa, Mastercard.
Una tarjeta está conformado por los siguientes datos, algunos impresos y otros almacenados en la banda magnética o en el chip:

  • PAN (Primery Account Number o número de tarjeta)
  • CVC (código de seguridad)
  • Track I y II
  • Fecha de expiración
  • Fecha de vigencia
  • Nombre y apellido de titular.

¿Qué es el Tipo de tarjeta?

Es la clasificación que se le asigna a una tarjeta de acuerdo a lo definido por el emisor de la misma. Esta puede ser de crédito o de débito por ejemplo.

¿Qué es un Monedero?

Un monedero o monedero electrónico sirve para almacenar dinero (también pueden ser puntos con alguna equivalencia en dinero) asociado a un número de tarjeta o cuenta.
Por lo general un monedero tienen ciertas operaciones asociadas, como ser:

  • Carga
  • Redención o consumo
  • Consulta saldo
  • Transferencia entre monederos
  • etc

¿Qué es un Cierre?

Un cierre es un proceso en VTOL que se ejecuta en un determinado momento o bajo alguna condición o estímulo. Este proceso se encarga, dependiendo el módulo, de marcar las transacciones realizadas desde el último cierre, agruparlas y moverlas a otro sector de la base de datos. En algunos casos el cierre tiene asociado un mensaje en línea o la generación de un TEF.

¿Qué es un Broker?

Un bróker, o agente en español, normalmente es denominado al centro autorizador que por sí solo no autoriza o aprueba la transacción, sino que la deriva a otro sistema externo que se encarga de autorizar.
Por ejemplo, para tiempo aire, VTOL puede conectarse con las compañías telefónicas directamente hacerlo por medio de algún bróker. La modalidad dependerá de temas comerciales del cliente.

¿Qué es ISO8583?

ISO8583 es una norma muy utilizada en el mundo financiero para el intercambio de mensajes en línea.
Esta norma estandariza la información que un mensaje financiero puede contener, así como el formato de cada uno de ellos.
Además establece flujos de mensajes que se deben intercambiar entre las partes.
Es normal que cada autorizador tome la norma y la adecue a sus necesidades, lo cual deja de ser una norma pura.
Por ejemplo, VISA usa ISO8583 pero posee diferencias con el ISO8583 que usa AMEX.

¿Qué es la Consola de Administración?

La consola de administración es un componte WEB que permite entre otras cosas:

  • Administración de usuarios
  • Registros de auditoría
  • Monitoreo
  • Reportes
  • Configuración
  • Planificación de procesos
  • Etc


Por la naturaleza de éste componente, el mismo corre dentro de un servidor WEB, permitiendo el acceso remoto y sin dependencias de software adicionales (solo hace falta tener un browser)

¿Qué es la Conciliación?

La conciliación es el proceso de coincidir transacción a transacción realizadas por dos o más sistemas con el fin de que todos los extremos tengan la misma información.
El proceso de conciliación, puede ser implementada de diversas formas, por ejemplo:

  • Por mensajería online
  • Por archivos de interfaz

¿Qué es la Liquidación?

Cuando los bancos pagan las transacciones realizadas (cupones en caso de tarjetas) se debe realizar un cruce con las transacciones procesadas este proceso de pago y matching se denomina comúnmente liquidación.

¿Qué es una Interfaz/TEF/Settlement?

Una interfaz es un archivo de cierre que almacena las transacciones autorizadas, el cual servirá para la conciliación con aquellos centros autorizadores que requieran dicho archivo, o bien en ciertos casos, para conciliar con otros sistemas propios del cliente.
Normalmente es un archivo de texto plano donde cada línea representa una transacción. Ésta línea dispone de un formato definido por quién será el receptor de tal archivo.

¿Qué es la modalidad Single Message?

Es una modalidad donde todas las transacciones realizadas online son abonadas por el autorizador/banco.

¿Qué es la modalidad Double Message?

Es una modalidad donde las transacciones realizadas online e informadas por archivos TEF son pagadas. La diferencia con la modalidad "Single Message" es que no se requiere la presentación del archivo TEF.

¿Qué es una Definición de lote?

Cuando hablamos de VTOL Crédito/Débito, existe una definición de lote que es un agrupamiento de uno o más opciones de pago para una determinada tarjeta.

¿Qué es una Opción de pago?

Es una combinación de moneda / plan / cantidad de cuotas / condición de pago para una determinada tarjeta. Una tarjeta puede poseer varias opciones de pago según la combinación ya mencionada. Por ejemplo, se podría crear una opción de pago con la siguiente combinación: Tarjeta: Visa, Código de Plan: 0, Moneda: Pesos, Cantidad de cuotas: 1.
VTOL realiza la validación de las transacciones según las opciones de pago, es por esto que deben estar configuradas todas las opciones habilitadas de cada centro autorizador.

¿Qué es un Número de lote?

El Número de lote es un contador que se contabiliza por Nodo y Definición de Lote.

Este contador se puede observar en la tabla "terminal" de la base de VTOL.

Ejemplo:

Un Local tiene 5 cajas.

  • Se realiza una operación para la Caja 1 con Definición de lote Prisma. 
    • Nro de Lote 1
  • Se realiza una operación para la Caja 2 con Definición de lote Prisma. 
    • Nro de Lote 1
  • Se realiza un Cierre de lote para la Definición de lote Prisma.

Si el Cierre de Lote resulta satisfactorio, entonces se actualiza el Nro de lote de las terminales, quedando de esta manera:

  • Las Cajas 1 y 2 con Definición de lote Prisma, pasarán a tener el Nro de Lote 2.
  • Las Cajas 3, 4 y 5 con Definición de lote Prisma, quedarán con Nro de Lote 1, ya que no tuvieron operaciones.


  • Se realiza una operación para la Caja 3 con Definición de lote Prisma. 
    • Nro de Lote 1
  • Se realiza una operación para la Caja 1 con Definición de lote Prisma. 
    • Nro de Lote 2


¿Qué es un Bin o prefijo?

Un prefijo o BIN (Bank Identification Number) es una identificación conformada por los primeros N dígitos del número de una tarjeta financiera. Estos dígitos identifican a qué red pertenece la tarjeta así como también la entidad que la brinda.

¿Qué es un Centro Autorizador o CA?

Un centro autorizador es la entidad responsable de la autorización de la transacción. VTOL intercambia mensajes con los centros autorizadores de manera de poder determinar si una determinada transacción puede autorizarse o no.

¿Qué es un Boletín protectivo?

Un boletín protectivo es un archivo que contiene números de tarjetas. Es brindado por los proveedores de tarjetas. Los dos propósitos más importantes a los que sirve un boletín protectivo son:
•Autorización off-line: existen boletines que contienen los prefijos de tarjetas que están / no están autorizadas a efectuar transacciones y VTOL CR / DB las empleas cuando se encuentra autorizando en modo off-line, es decir, sin conexión con el centro autorizador.
•Diferenciación de tarjetas de crédito de las de débito: existen algunos proveedores de tarjetas que usan los mismos prefijos para las tarjetas de crédito y débito, por lo cual existen bines que contienen los números de tarjetas que corresponden a débito para permitir diferenciarlas de las de crédito

¿Qué es Offline?

Normalmente se denomina Offline a trabajar sin la presencia de uno de los extremos, o POS o Centro Autorizador.
Si el POS no tiene conexión con VTOL entonces se dice "el POS está offline de VTOL". En cambio si VTOL no tiene conexión con el Centro Autorizador, entonces se dice "VTOL está offline del CA".
Dentro de un proceso de autorización, existen dos caminos a seguir cuando una de los extremos está offline.

  1. Se rechaza la transacción, con opción a que se tome alguna acción manual
  2. Se apruebe la transacción de manera offline, en base a alguna definición, por ejemplo
    1. Validando contra algún límite de piso
    2. Validando contra boletines protectivos
    3. etc

¿Qué es el PIN?

El PIN o Personal Identification Number es una especie de contraseña que solo el titular de una tarjeta conoce. Entonces, al momento de realizar una compra, este debe ser ingresado como medida de seguridad identificando, que quién usa la tarjeta, es realmente el titular.
El PIN normalmente es ingresado por medio de un Pinpad

¿Qué es un Pinpad?

Un Pinpad es un dispositivo de hardware que permite el ingreso del PIN.
Éste dispositivo de hardware permite trabajar con distintos algoritmos de encriptación que permiten cifrar el PIN para una trasmisión. Además permite la inyección de llaves de forma dinámica, transacción a transacción o cada un determinado tiempo.



Pinpad

¿Qué es una terminal financiera?

Una terminal financiera es un dispositivo de hardware que internamente posee un programa denominado "firmware". Este firmware es quién modela la funcionalidad que estará disponible en el dispositivo.
Algunas de las características que poseen éstas terminales son las siguientes:

  • lector de banda magnética o MSR
  • teclado numérico y teclas de función
  • impresora
  • lector de CHIP
  • lector NCF (Near Field Communication)
  • Bluetooth
  • Red TCPIP
  • Comunicación serial RS232
  • Etc


Estas terminales, en algunos casos se integran al POS y en otros casos funcionan de forma autónoma.
Las características de cada terminal financiera dependerá del fabricante y del modelo.

¿Qué es la Integración?

La integración es el proceso de integrar o comunicar dos sistemas o más. En el caso de VTOL, normalmente se refiere al proceso de que se integre el punto de venta implementando las transacciones que facilita VTOL.
Este proceso normalmente implica proveer manuales, librerías y emuladores.

¿Qué es el Proceso de Certificación/Homologación?

Cuando en VTOL se desarrolla una mensajería nueva, o la misma es modificada, o se trata de un cliente nuevo que no operaba con VTOL, los autorizadores piden pasar por un proceso de certificación/homologación donde corroboran el correcto funcionamiento de todas las partes involucradas, VTOL, POS, etc.
Esta validación es llevada a cabo con script de homologación, donde se definen

  • Flujos a probar
  • Formato de voucher
  • Condiciones de borde
  • etc


¿Qué es PEI (Pago Electrónico Inmediato)?

Funcionalidad exclusiva de la región Argentina.


PEI corresponden a las siglas de "Pagos Electrónicos Inmediatos". Estos pagos se efectúan con tarjetas de débito con banda magnética exclusivamente, y se transfieren y acreditan de manera instantánea con un costo inferior a una venta tradicional.

La integración con EVM Kit puede hacerse de dos maneras:

  • Sin interacción con el Pinpad: el mensaje recibido por el POS es enviado directamente a VTOL Server para su posterior autorización con Link. La captura de los datos de la tarjeta (lectura de tracks, ingreso de cvv, etc) queda bajo la responsabilidad del punto de venta.
  • Con interacción con el Pinpad: La captura de los datos de la tarjeta se hará desde los pinpads actuales (de PRISMA y FIRST DATA) siempre y cuando soporten el método de captura requerido, y a través del EMVKit.

Las operaciones soportadas en EMV Kit para PEI son:

  • SalePEI = Permite realizar un pago presencial PEI (transferencia bancaria).
  • RefundPEI = Permite realizar una devolución (parcial o total) de un pago presencial PEI realizado con anterioridad.
  • QueryPEI = Permite realizar una consulta de una operación de pago o de devolución que tuvo como respuesta el error "391 - Error en comunicación" para conocer si fue autorizada la operación y así obtener los datos de la misma por parte del centro autorizador. Este mensaje surge ya que hay una limitante por parte del autorizador que no existe un mecanismo de reversa de transacciones. El mensaje queryPEI debe generarse dentro de la sesión del POS en la cual se realizó la operación de pago o devolución PEI, es decir que previamente se ejecutaron las operaciones de "Leer datos de tarjeta" y "Procesar operación con tarjeta". Esto se debe a que la consulta a Link se deben enviar los track 1 y 2 de la tarjeta.

Nota: La operatoria PEI no posee tercer mensaje, por lo que cada operación queda automáticamente en estado "Commited" (comiteado).


¿Qué es Cuenta DNI?

Funcionalidad exclusiva de la región Argentina.

Cuenta DNI es una operatoria para realizar pagos en los Puntos de Venta utilizando como medio de pago un código de barras o token generado por una aplicación mobile  del Banco Provincia. Una operación con CuentaDNI es una operación PEI, salvo que el modo de ingreso será diferente, ya que no se utilizará ningún tipo de tarjeta. El cliente deberá informar al cajero del POS el código generado por la aplicación mobile. Las operaciones serán presenciales.

En esta operación, EMV Kit no realiza una interacción con el pinpad y el mensaje recibido por el POS es enviado directamente a VTOL Server para su posterior autorización con Link. Tener en cuenta que no se deberá ejecutar previamente la operación "Leer Datos de la Tarjeta".

Las operaciones soportadas en EMV Kit para Cuenta DNI son:

  • SalePEI = Permite realizar un pago presencial con Cuenta DNI, utilizando código de barras o softToken
  • RefundPEI = Permite realizar una devolución (parcial o total) de un pago presencial con Cuenta DNI realizado con anterioridad.
  • QueryPEI = Permite realizar una consulta de una operación de pago o de devolución que obtuvo como respuesta el error "391 - Error en comunicación" o una respuesta de timeout. Este mensaje surge ya que hay una limitante por parte del autorizador que no existe un mecanismo de reversa de transacciones.

Estados de operaciones:

Cuando las transacciones de Cuenta DNI sean aprobadas por el autorizador LINK, el estado de las operaciones quedarán en estado "Commit".

Reintentos

VTOL no efectuará ni manejará reintentos de solicitudes. En caso de que la autorización por parte de LINK no se haya realizado, VTOL no reintentará enviar el request de pago/devolución, sino que le informará al POS la situación de error, denegación o falla. El POS será el responsable de efectuar el reintento.

Reversos

La operación de reversa automática en Link no existe. 


¿Qué es Promociones PEI?

Funcionalidad exclusiva de la región Argentina.


Promociones PEI es una operatoria que permite al Punto de Venta (POS) informar promociones sobre una operación de pago PEI, e informar la devolución de un pago PEI sujeto a promoción.

Actualmente la funcionalidad de Promociones PEI estará vinculada únicamente con transacciones realizadas por CuentaDNI.

Para realizar un mensaje de Promociones PEI, se debe haber realizado previamente un pago y contar con los datos de idOperacion y nroReferenciaBancaria que son devueltos por Link cuando una operación resulta Aprobada.

Las operaciones soportadas en EMV Kit para Promociones PEI son:

  • promoPEI = Permite informar una promoción sobre una operación de pago PEI, y permite informar una devolución de un pago PEI que fue sujeto a promoción.

Cómo informará el POS una Promoción

Luego de realizar una operación de Pago PEI, el POS deberá informar (en caso que aplique) la promoción sobre ese pago. Informará en el campo amount el monto original de la venta y en el campo promoAmount la sumatoria del importe de los productos sujetos a promoción. Si el pago completo está sujeto a promoción, el promoAmount será igual al amount. Si sólo una porción del pago está sujeta a promoción, entonces promoAmount será solamente el importe sujeto a promoción. El cálculo de la promoción lo realizará LINK.

Este mecanismo se ideó para el caso que los comercios tengan solo algunos productos sujetos a promoción, entonces se informará a LINK la porción del pago al cual aplicar promoción.

Cómo informará el POS una Devolución de un pago sujeto a Promoción

Luego de realizar una devolución de un pago PEI, el POS deberá informar (en caso que aplique) la promoción que se aplicó a los productos de esa devolución. Informará en el campo amount la sumatoria del importe de los productos a devolver y en el campo promoAmount la sumatoria del importe de los productos a devolver que fueron informados como promoción en el pago.


2.3 VTOL Store

¿Qué es VTOL Store?

VTOL Store es un "concepto" que implica la utilización de un componente de software entre el POS y VTOL Server.
Al decir que es un concepto, estamos diciendo que no existe una solución cerrada común a cualquier implementación, sino que para cada caso en particular donde se requiera de ésta solución, se evalau y se construye una para tal fin.
Normalmente la necesidad de utilizar VTOL Store pasa por adaptar protocolos, controlar fraude, trabajar offline, comunicar con otros sistemas sin la necesidad de VTOL Server, etc.

¿Qué implementaciones de VTOL Store hay?

Algunas de las implementaciones de VTOL Store son las siguientes:

  1. Comunicar un sistema que "habla" ISO8583, adaptando los flujos de mensajes al protocolo VTOL.
  2. Comunicar con un sistema AS400 y manejando reglas de negocio para trabajar offline.
  3. Registrar y controlar el flujo de transacciones entre POS y VTOL Server con el fin de evitar fraude en las cajas (tiempo aire).
  4. Etc


2.4 EMV Kit

¿Qué es EMV Kit?

Es el componente encargado de capturar los datos de las tarjetas a través del pinpad e iniciar el proceso de autorización contra VTOL Server. Los datos que captura son los siguientes:

  • Tarjeta mediante ingreso manual
  • Tarjeta mediante ingreso por MSR
  • Tarjeta mediante ingreso por CHIP
  • Tarjeta mediante ingreso por Contactless
  • Código de seguridad, CVV o CVV2
  • Fecha de vencimiento
  • Últimos 4 dígitos de la tarjeta
  • PIN

Es una aplicación Java del tipo Stand Alone; es decir, no requiere de ningún servidor de aplicación para poder ejecutarse ni tampoco tiene una interfaz gráfica de usuario, que se encontrará configurada en cada máquina donde se ejecuta la aplicación de punto de venta.
Este componente expone una API de integración del tipo TCPIP bajo el protocolo llamado "protocolo VTOL". A través de esta API, las aplicaciones de punto de venta pueden iniciar una transacción de: venta, devolución, anulación, etc.



Arquitectura de VTOL Client

2.5 Librerías de Integración

¿Qué es la librería de integración?

La librería de integración es un componente de software pequeño que permite a un punto de venta integrarse con VTOL Server de forma rápida y sencilla.
Existen diversas implementaciones en diversos lenguajes de programación con el objetivo de que la integración sea "nativa" con el lenguaje de programación del punto de venta.

¿Qué versiones están disponibles?

Existen implementaciones en:

  • JAVA
  • .NET

¿Qué funcionalidad tienen?

Las librerías más livianas simplemente abstraen al punto de venta de tener que saber cómo establecer conexión con VTOL Server y de cómo se construye/arma el mensaje protocolo VTOL.
Luego existen otras librerías, que además de realizar la funcionalidad anterior, permiten establecer una conexión con los pinpads y comunicarse con ellos, facilitando aún más la integración con VTOL.

2.6 Normas

¿Qué es PCI?

PCI (Payment Card Industry) es un comité fundado y soportado por las principales tarjetas del mundo (Visa, Master, Amex, etc) que ha creado una serie de estándares de seguridad orientados a proteger la seguridad de los datos sensibles de las tarjetas de crédito y débito.

Página oficial: https://www.pcisecuritystandards.org




Dentro de PCI existen una serie de estándares definidos que se deben cumplir cuando una compañía procesa, trasmite o guarda datos de tarjetas, esto son los siguientes:

  • PCI DSS
  • PCI PADSS
  • PCI PTS
  • Otros


Si una compañía debe cumplir el estándar (por transmitir procesar o guardar datos de tarjetas) ésta debe cumplir con la norma PCI DSS (Data Security Standard). A su vez, si la compañía ha contratado una aplicación de un tercero (como es el caso de VTOL), ésta debe cumplir con el estándar PCI PADSS (Paymente Application Data Security Standar). Por último, si se usan dispositivos de ingreso de PIN (Pinpads) éstos deben cumplir con el estándar PCI PTS (PIN Transaction Security).
Las aplicaciones, como VTOL, que deben cumplir con el estándar PCI PADSS, deben certificar cada 4 años, además de certificar cada cambio que se hace a la aplicación.
Las normas de seguridad PCI en general hacen hincapié en:

  • Desarrollar y Mantener una Red Segura
  • Desarrollar y mantener aplicación seguras
  • Proteger los Datos de los propietarios de tarjetas.
  • Mantener un Programa de Gestión de Vulnerabilidades
  • Implementar Medidas sólidas de control de acceso
  • Monitorear (Monitorizar) y Probar regularmente las redes
  • Mantener una Política de Seguridad de la Información
  • Pruebas regulares de las aplicaciones infraestructura.
  • Etc.

Un comercio que trasmite o almacena datos de tarjetas debe cumplir con PCI DSS. Según el volumen de transacciones que hace anualmente, es la exigencia de la norma

  • Nivel 1 y 2 requieren certificar PCI DSS con un QSA On-site
  • Nivel 3 y 4 alcanzaría con un SAQ (Self Attestation Questionary o cuestionario de auto-evaluación)

¿Qué es EMV?

EMV (de Europay Master and Visa), se refieren a un conjunto de especificaciones que definen la forma de llevar a cabo una transacción de crédito y débito con Chip y Contactless. El Chip es un dispositivo de hardware que viene incrustado en la tarjeta como se muestra en la siguiente imagen.



Tarjeta con Chip

¿Cómo se obtienen los datos del Chip?

Los datos del chip se obtienen a través de un dispositivo que tenga lector de Chip, típicamente conocido como Pinpad, éste es proporcionado generalmente por el banco o el procesador.
Por lo general cada pinpad tiene una aplicación propietaria (de quién te da el pinpad) encargada de extraer los datos del chip de las tarjetas bajo el formato y especificación particular. Le mecanismo de puede ser por contacto físico o por lectura inalámbrica (cuando la tarjeta tiene el símbolo )
En todos los casos la comunicación entre el POS y el pinpad es a través de protocolo asíncrono (serial) utilizando los comandos proporcionados para tal propósito.

¿Qué es un TAG?

Es una etiqueta definida por EMV, toda la información contenida dentro del chip se almacena en TAGs.
Algunos tags son usados exclusivamente por las diferentes marcas (MasterCard, Visa, JCB, AMEX) y otros tags son de uso exclusivo de los bancos emisores.
El formato típico de un TAG es el nombre del TAG, su longitud y su valor (TLV)

¿Qué es un Token?

El token es una estructura de datos muy utilizada por los bancos para encapsular varios tags o cualquier otra información propietaria de cada banco.
En México Banamex extrae toda la información del chip a través de Tokens dentro de los cuales almacena tags e información adicional, mientras que Bancomer utiliza directamente TAGS.

¿Cuál es la diferencia entre EMV Early y EMV FULL?

En la modalidad EMV Early no se recibe ninguna respuesta del emisor que tenga que ser almacenada en el chip, mientras que en EMV Full se reciben Scripts que contienen datos para validar que el emisor al que se envió la solicitud de autorización es válido, así como información que tiene que ser almacenada en el chip antes de terminar la transacción

¿Qué es OWASP Top 10?

Es un documento que contiene los diez riesgos de seguridad más importantes en aplicaciones web según la organización OWASP. Cada 3 años se renueva el top 10. OWASP (acrónimo de Open Web Application Security Project, "Proyecto abierto de seguridad de aplicaciones web") es una fundación dedicada a determinar y combatir las causas que hacen que el software sea inseguro.

2.7 Algoritmos y Protocolos

¿Qué es DES?

Data Encryption Standard (DES) es un algoritmo de cifrado de información con un tamaño de clave de 56 bits.

¿Qué es 3DES?

Es un algoritmo de encriptación, desarrollado por IBM en 1998, donde encripta 3 veces usando el algoritmo de encriptación DES.

¿Qué es SSL?

Secure Sockets Layer es un protocolo de encriptación que permite que la información (normalmente datos sensibles) viaje encriptada, evitando de este modo que pueda ser leída por terceros. Es el método que permite garantizar una alta seguridad en el comercio electrónico.

¿Qué es TLS?

Transport Layer Security es un protocolo de encriptación que proporciona comunicaciones seguras por una red.

2.8 Negocio

¿Qué es una transacción presencial?

Es aquella que se origina cuando se utiliza una tarjeta para adquirir bienes y servicios en establecimientos comerciales de manera presencial, como ser locales de puntos de venta en donde se precisa deslizar la tarjeta en un dispositivo de lectura.

¿Qué es una transacción no presencial?

Es aquella transacción que no se precisa deslizar una tarjeta en forma presencial para poder adquirir bienes y servicios; algunos ejemplos son las ventas telefónicas, ventas por Internet u otros canales remotos.

¿Cuáles son los actores de un esquema de pagos con tarjetas?

Los esquemas de pagos con tarjetas generalmente involucran los siguientes actores:

  • Tarjetahabiente o Cliente: Persona que firma un contrato con un emisor para obtener una tarjeta.
  • Comercio o Punto de venta: Establecimiento que vende bienes o servicios y acepta la tarjeta como medio de pago.
  • Emisor: Es la entidad que emite la tarjeta de débito o crédito, financia y asume los riesgos en caso de mora del cliente. El plástico de la tarjeta lleva impreso el logo del Banco Emisor.
  • Adquirente: Es una entidad financiera que suscribe el contrato con los comercios para que estos acepten la tarjeta como medio de pago. Es decir, le permite a los comercios procesar transacciones de tarjetas de crédito y débito. Cuando el adquiriente recibe la petición de autorización, éste la rutea al emisor correspondiente para que apruebe o deniega la transacción
  • Centros autorizadores: Entidad que otorga licencia de marca a los emisores y adquirentes para la operación de sistemas de tarjetas de aceptación internacional (Visa, MasterCard, American Express, entre otros).


¿Cómo es el proceso de un esquema de pagos con tarjetas?

  1. El Cliente inicia el proceso de pago ofreciendo su tarjeta al Punto de Venta
  2. El Punto de Venta ingresa los datos de la tarjeta mediante un terminal de captura o un PinPad
  3. Se procesa la información de la tarjeta y se envía al Banco Adquirente correspondiente
  4. El Banco Adquirente realiza una solicitud de autorización a la Administradora local de la marca (Visa, Mastercard, etc)
  5. Si la transacción es local, la envía al Banco emisor local, caso contrario la manda al autorizador internacional.
  6. El Banco Emisor aprueba o deniega la autorización de la transacción y envía la respuesta al Banco Adquirente, a través del administrador
  7. El Banco Adquirente le entrega la respuesta de la autorización al Punto de Venta
  8. El Banco Emisor le envía periódicamente al Cliente un resumen con los consumos de sus operaciones



  • Sem rótulos