Publicación técnica
Herramientas para la integración de dispositivos de pago: Parsomatic
Integrar un periférico de pago en una aplicación de TPV (u otra aplicación de pago) puede ser todo un reto, incluso en las mejores circunstancias. Contar con una buena documentación ayuda. Y disponer de buenas herramientas, todavía más.
ID TECH ofrece varias herramientas gratuitas para facilitar el proceso de integración. Una de las más populares, Parsomatic, está alojada en este sitio (haz clic aquí). Otra herramienta muy utilizada, tanto por los clientes como por el equipo de soporte interno de ID TECH, es nuestra herramienta de Cifrado/Descifrado (haz clic aquí). También disponemos de una utilidad basada en Windows (.NET), compatible con todos los productos de ID TECH en producción actual (y con algunos más antiguos), a la que llamamos UDemo (o Universal SDK Demo). Está disponible, junto con muchas otras demos y utilidades, en nuestra página de descargas.
Si estás empezando una integración, o si eres nuevo en EMV y necesitas una utilidad rápida de búsqueda de tags que también pueda analizar bloques arbitrarios de datos TLV, te interesará echar un vistazo a Parsomatic.
Parsomatic es una de las herramientas más populares de ID TECH. Se trata de una página HTML autónoma (sin dependencias externas ni lógica de servidor) que puedes usar en cualquier navegador web, en cualquier plataforma, con o sin conexión. Por lo general, se utiliza en uno de estos tres escenarios.
- Si te preguntas qué hace un determinado tag de EMV, utiliza el pequeño campo de búsqueda de tags situado en la parte superior de la página para realizar una consulta rápida. En la captura de pantalla anterior, hemos introducido «5F20», que corresponde a Cardholder Name (nombre del titular de la tarjeta). Se trata de un tag estándar definido por EMVCo. Pero también puedes usar Parsomatic para consultar tags propietarios de ID TECH, de los cuales hay más de 100.
- Si dispones de un bloque de datos en hexadecimal que contiene datos TLV (tag-length-value), puedes pegarlos en el área de texto principal y, a continuación, marcar la casilla «TLVs only» (como se muestra arriba; fíjate bien) y hacer clic en el botón Parse. Parsomatic incorpora un analizador por descenso recursivo que procesará todos los TLV, incluidos los anidados, y mostrará los resultados de dos formas distintas (véase más abajo).
- Si has ejecutado una transacción en un dispositivo de ID TECH (ya sea magstripe, EMV con contacto o sin contacto), el dispositivo generará un bloque de datos considerable, envuelto en un wrapper de protocolo. Parsomatic puede analizar esos datos y mostrarlos gráficamente, de forma que puedas ver con exactitud qué significa cada byte.
Tras analizar los datos, Parsomatic los muestra de dos maneras. La primera sección de la visualización presenta varias líneas de datos hexadecimales con texto codificado por colores: los tags TLV en azul, los valores de longitud en naranja, los datos en negro y todo aquello que no se haya podido analizar en rojo. Si pasas el cursor sobre cualquiera de los elementos coloreados, verás un tooltip estilizado con CSS que explica lo que estás viendo. En la captura anterior, el cursor está sobre el tag TLV 5F2A. El tooltip indica que se trata del Transaction Currency Code (código de moneda de la transacción). (En los datos mostrados, el código es 0840, correspondiente al dólar estadounidense).
La segunda forma en que Parsomatic muestra los datos es en una gran tabla:
El texto está (de nuevo) codificado por colores: los nombres de los tags en azul, las longitudes en naranja, etc.
Si has pegado datos de transacción en la ventana, esos datos son datos EMV (de tags) y contienen el Tag 95, todos los bit flags del Tag 95 se mostrarán en la parte inferior de la página:
Ten en cuenta que el Tag 95 contiene cinco bytes de datos; en el ejemplo anterior solo se muestran los tres primeros.
En las transacciones con tarjeta chip, el Tag 95 es clave para determinar si una transacción se aprueba o se rechaza. Algunos de los posibles motivos de rechazo se muestran en la captura de pantalla. En este ejemplo, el bit más alto del byte 3 está activado, lo que indica «Cardholder verification was not successful» (la verificación del titular de la tarjeta no fue correcta), y también está activado el bit 5, que indica «PIN entry required and PIN pad not present or not working» (se requiere introducir el PIN y el teclado PIN no está presente o no funciona). Parsomatic resalta automáticamente en amarillo cualquier bit activado, para que puedas ver de un vistazo lo que ocurre.
La lógica de Parsomatic está escrita íntegramente en JavaScript y todo el código se encuentra en el archivo HTML, por lo que puedes consultar el código fuente fácilmente con cualquier editor. Cabe destacar que el parser está diseñado para ser failsoft: cualquier byte que no se pueda interpretar simplemente se ignorará (aunque se mostrará en pantalla en rojo), en lugar de provocar que el análisis se interrumpa con una excepción. El parser intentará ignorar los bytes desconocidos y continuar el análisis, partiendo de la idea de que probablemente quieras saber qué significa el resto de tus datos, aunque alguna parte no se haya analizado correctamente.
Parsomatic es una excelente herramienta de aprendizaje si estás empezando a usar productos de ID TECH o a desarrollar aplicaciones de pago EMV. También resulta muy útil para resolver problemas. (¡Y es gratuita! ¿Qué más se puede pedir?)
¿Tienes preguntas sobre tecnología de pago? Llama a nuestros expertos: marca el 1-800-984-1010 cuando quieras.
