Protocolo de Conexión

Anuncio
Pasarela de Pagos – Payment Gateway
Avda. La Industria 4  NATEA Business Park  28108 ALCOBENDAS (Madrid)  902-305 308 – 91-490 01 50
Protocolo de Conexión
Versión 1.5 – Español
12/05/2015
Protocolo de Conexión C le ar O N E versión 1.5
Página 1 (41)
Pasarela de Pagos – Payment Gateway
Avda. La Industria 4  NATEA Business Park  28108 ALCOBENDAS (Madrid)  902-305 308 – 91-490 01 50
Aviso Legal y Responsabilidades
El presente documento es un documento privado de propiedad de ClearONE. La marca ClearONE
está registrada en el proceso de patentar. Queda totalmente prohibido copiar, duplicar, escanear, etc.
todo o partes del presente documento sin el permiso por escrito de ClearONE.
El receptor acepta y declara haber comprendido el significado de la firma del Contrato de
Confidencialidad (NDA), proceso llevado a cabo junto con ClearONE previo a la entrega del presente
documento.
Este documento ha sido elaborado por el Dpto. de Desarrollo de ClearONE, y las personas
responsables son:
Arquímedes Palacios – Jefe de Desarrollo, [email protected].
Paul Zander – Director General, [email protected].
12/05/2015
Protocolo de Conexión C le ar O N E versión 1.5
Página 2 (41)
Pasarela de Pagos – Payment Gateway
Avda. La Industria 4  NATEA Business Park  28108 ALCOBENDAS (Madrid)  902-305 308 – 91-490 01 50
Indice
1. ClearONE – Pasarela de Pagos con Servicio de TEF
1.1
1.2
Servicios Ofrecidos por ClearONE
Canales de Conexión
2. Operativa en el Punto de Venta
2.1
2.2
2.3
2.4
2.5
2.6
2.7
2.8
2.9
2.10
2.11
2.12
2.13
Venta
Devolución
Reserva de Fondos y Confirmación de Reserva
Recarga Telefónica
Anulaciones
Detalle de Operaciones y Datos Ultima Operación
Consulta de Totales
Fin de Día
Lectura de Tarjeta Privada
Venta TNA y Venta con DCC
Estado del Sistema
Selección de idioma
Captura de firma
3. Instalación y Configuración del Servicio
4. Como Integrar ClearONE en un Programa de Gestión
4.1
Un Ejemplo en C++
5. Formato de las Tramas de Datos
5.1
5.2
5.3
5.4
Tramas de Petición
Tramas de Respuesta
Trama de ACK
Diálogos Extendidos: Detalle Operaciones, venta TNA y
venta DCC.
6. Formato de los Tickets a Generar
12/05/2015
Protocolo de Conexión C le ar O N E versión 1.5
Página 3 (41)
Pasarela de Pagos – Payment Gateway
Avda. La Industria 4  NATEA Business Park  28108 ALCOBENDAS (Madrid)  902-305 308 – 91-490 01 50
1.ClearONE
ClearONE es una empresa que ofrece un servicio de Pasarela de Pagos a todos los actores en el
mercado con la necesidad de aceptar tarjetas de crédito y débito. Nuestro servicio de Pasarela ofrece
a los clientes distintas soluciones de conexión con los Centros Autorizadores. Nuestro trabajo consiste
en facilitar a nuestros clientes el hardware y software necesarios para que puedan conectar sus
puntos de venta con los centros autorizadores que operan en el territorio nacional. A través de dichas
conexiones, se canaliza principalmente el denominado servicio TEF (Transferencia Electrónica de
Fondos) y también se puede incorporar servicios de recarga telefónica y otros servicios. Con “puntos
de venta” en este contexto nos referimos a los sistemas de cobro en distintos sectores:
Supermercados, Hipermercados, Tiendas, Moda, Textil, Restaurantes, Bares, Hoteles, Discotecas,
Tiendas Especializadas, Farmacias, Gasolineras, Ayuntamientos, Recintos Feriales, Aviones, Trenes,
Autobuses, Cines, Ticketing, Parkings, Kioskos, Páginas WEB, etc., etc.
Tenemos líneas de conexión de alta capacidad que mantienen nuestros centros de servicio
permanentemente conectados con los Centros Autorizadores más importantes: Redsýs, CECA, AMEX,
etc. Fuimos la primera empresa española en certificar una conexión Price Servidores con Redsýs
(SERMEPA en aquel momento). Nuestro compromiso de continuo desarrollo en las distintas
modalidades en medios de pago así como nuestra dedicación a la seguridad avanzada de nuestros
sistemas nos permite ser una empresa líder en ofrecer soluciones EMV integradas.
1.1. Servicios Ofrecidos
Nuestro principal objetivo es dar al mercado la capacidad de integrar el cobro con tarjeta (el TEF) en
su aplicación de gestión del punto de venta. Esto le permite olvidarse del datafono del banco,
sustituyéndolo por un dispositivo integrado, un Pin-Pad que muchas veces es más ligero y versátil, en
el punto de venta. El proceso de cobro es más rápido porque se hace a través de ADSL y más fiable
porque no hay que teclear de forma manual el importe en un dispositivo externo: el importe a cobrar
es automáticamente transferido de la aplicación de venta (o de gestión) al Pin-Pad.
El hecho de no necesitar el datafono del banco tiene otras dos ventajas adicionales. En primer lugar es
posible negociar mejores precios y comisiones con el banco, ya que el banco se ahorra el coste del
datafono y el posterior mantenimiento del mismo. En segundo lugar permite al comercio trabajar con
varios bancos de forma simultánea (“multibanco”), utilizando un dispositivo único para todos. Así se
ahorra espacio en el punto de venta al eliminar los datafonos y se da al comercio mayor posibilidad de
negociación con los bancos. En una configuración multibanco, el comercio sigue teniendo la
posibilidad de elegir de forma manual el banco al que quiere enviar cada transacción. Pero lo habitual
es automatizar esa decisión para evitar errores, permitiendo que sea ClearONE quien determine el
banco al que debe ir cada transacción a partir de las condiciones indicadas por el cliente y sus bancos.
Además del cobro con tarjeta, hay otros servicios que funcionan de forma similar y pueden interesar a
muchos comercios. Uno de ellos es la venta de recargas telefónicas. ClearONE ha integrado dicho
servicio en su aplicación y lo ofrece junto con el servicio TEF a todos sus clientes. Otro servicio
disponible es el tratamiento de la venta “libre de impuesto” (Tax free) para personas procedentes de
países fuera de la Comunidad Europea. Consúltenos para más información.
12/05/2015
Protocolo de Conexión C le ar O N E versión 1.5
Página 4 (41)
Pasarela de Pagos – Payment Gateway
Avda. La Industria 4  NATEA Business Park  28108 ALCOBENDAS (Madrid)  902-305 308 – 91-490 01 50
También ponemos a disposición de todos nuestros clientes el acceso a nuestra plataforma WEB de
informes, denominada WRP (Web Reporting Platform). Es una herramienta de consulta que funciona
en tiempo real permitiendo al usuario obtener multitud de informes, desde un sencillo listado de
transacciones para una sola tienda hasta complejos y elaborados informes que aportan a la dirección
comercial y/o financiera de las empresas la información que necesitan para sus decisiones
comerciales, de marketing y también para sus negociaciones con las entidades bancarias. Como
opción también existe la posibilidad de automatizar el traspaso de los datos transaccionales
directamente al sistema del cliente. De esta forma es posible integrar los datos en procesos ya
definidos para el cliente en cuestión.
Para dar acceso a todos estos servicios, ClearONE ha diseñado un módulo de software en el que se
acumula toda la experiencia de un equipo de personas que lleva más de 15 años trabajando en el
sector de los medios de pago y las comunicaciones. Dicho software se ha encapsulado en un servicio
Windows, compatible con cualquier plataforma a partir de Windows 98. El servicio se instala en cada
uno de los puntos de venta que se quiera conectar con la plataforma de ClearONE y la aplicación de
venta, o de gestión, se comunica con dicho servicio mediante sockets TCP/IP. Desde Junio de 2011
disponemos también de una versión Linux del ejecutable, con lo que podemos ofrecer el mismo
servicio a todos los clientes que trabajan en esta plataforma.
1.2. Canales de Conexión
El único requisito para poder conectar cualquier punto de venta (detallado anteriormente) con
ClearONE es que la conexión se haga mediante TCP/IP. Esto incluye conexiones por internet, GPRS,
3G, LMDS, etc.
La conexión más habitual es el ADSL. Sus principales ventajas son el bajo coste y el hecho de ser una
conexión permanente, evitando así el tiempo de conexión que es lo que hace tan lentos a los
habituales datafonos de los bancos. Utilizando este tipo de conexión el tiempo de proceso de una
transacción TEF suele estar en el orden de 1-2 segundos, frente a los 20-40 segundos que puede tardar
un datafono (si consigue conectar a la primera).
En cualquier caso, la posibilidad de conexión con ClearONE no es una lista cerrada. Nuestro interés
está en que los clientes se conecten a nuestra plataforma y por ello siempre estamos abiertos a
estudiar cualquier sistema de conexión que pueda beneficiar a nuestros clientes. Por ejemplo,
tenemos clientes que utilizan su red privada (VPN), creando puntos de acceso en las instalaciones de
ClearONE para aprovechar la fiabilidad y seguridad que este tipo de redes ofrece.
En la siguiente página mostramos un esquema funcional de nuestro servicio.
12/05/2015
Protocolo de Conexión C le ar O N E versión 1.5
Página 5 (41)
Pasarela de Pagos – Payment Gateway
Avda. La Industria 4  NATEA Business Park  28108 ALCOBENDAS (Madrid)  902-305 308 – 91-490 01 50
Esquema Funcional de la Pasarela de Pagos Cl ea r O N E
2. Operativa en el Punto de Venta
Como ya hemos dicho antes, nuestro software ofrece conexión con distintos servicios (TEF, recargas,
Tax free, etc.) y cada uno de ellos permite realizar distintos tipos de transacciones desde el punto de
venta. Dichas transacciones pueden resultar muy familiares para algunos usuarios, pero en otros casos
puede ser la primera vez que las vean. Por ello, describimos a continuación el funcionamiento lógico
de las mismas desde el punto de vista del punto de venta.
2.1. Venta
La operación de venta es la más habitual de todas. Lo que hace esta operación es solicitar al centro
autorizador que transfiera un importe determinado desde la cuenta asociada a la tarjeta del cliente
hasta la cuenta del comercio (de aquí viene el nombre de Transferencia Electrónica de Fondos).
El centro autorizador verifica la tarjeta, comprueba que tenga fondos, verifica los datos del comercio y
si todo es correcto, realiza el cargo en la cuenta del cliente y el abono en la cuenta del comercio. El
momento exacto en que se realizan el cargo y el abono depende de varios factores como el tipo de
tarjeta (crédito o débito) o la configuración del comercio (cierre automático o manual) pero para
entender el funcionamiento lógico del sistema, podemos afirmar que el cargo y el abono se hacen
simultáneamente en el momento en que se procesa la operación.
12/05/2015
Protocolo de Conexión C le ar O N E versión 1.5
Página 6 (41)
Pasarela de Pagos – Payment Gateway
Avda. La Industria 4  NATEA Business Park  28108 ALCOBENDAS (Madrid)  902-305 308 – 91-490 01 50
Para realizar esta operación, el programa de gestión del punto de venta manda al servicio de
ClearONE una petición con el importe, numero de ticket y otros datos necesarios. El servicio se
encarga de leer la tarjeta del cliente con el Pin-Pad y pedir la autorización al centro autorizador,
devolviendo el resultado (autorizada/denegada) al programa de gestión para que actúe en
consecuencia.
Si la respuesta es ‘denegada’, aunque los motivos pueden ser muy diversos (no hay fondos, no hay
conexión, tarjeta no válida,...) el resultado siempre es el mismo: la operación no se ha realizado. Es
decir, el cliente aún no ha pagado. Por tanto, el programa de gestión deberá estar preparado para esa
posibilidad, volviendo al estado anterior para permitir que se pueda pagar la operación con otra forma
de pago (normalmente efectivo) o bien volverlo a intentar con una tarjeta distinta.
Si la respuesta es ‘aceptada’, el programa de gestión deberá considerar que la transferencia ya está
realizada y podrá terminar la transacción de venta. Al cliente siempre hay que entregarle un ticket o
factura que incluya toda la información de la operación TEF. El comercio por su parte puede
imprimirse también una copia de ese ticket o simplemente guardarse la información necesaria en su
programa de gestión sin emitir ningún ticket adicional. Solo será necesario imprimir un ticket para el
comercio cuando la operación requiera la firma del cliente y no se esté utilizando un Pin-Pad con
captura de firma, ya que en ese caso el ticket firmado por el cliente es el justificante que da validez a
la transacción y el comercio puede necesitarlo ante una posible reclamación.
2.2. Devolución
La operación de devolución es la operación contraria a la venta descrita en el punto anterior. Aquí lo
que se hace es solicitar al centro autorizador que transfiera un importe determinado desde la cuenta
ligada al comercio hasta la cuenta asociada a la tarjeta del cliente.
La operativa en el punto de venta es igual: el programa de gestión manda al servicio ClearONE una
petición, el servicio lee la tarjeta del cliente, solicita la autorización al centro autorizador y devuelve el
resultado al programa de gestión, que estará preparado para los dos posibles resultados: aceptada o
denegada. Al igual que con la venta, también aquí hay que emitir siempre un ticket o factura para el
cliente. La diferencia está en la copia para el comercio, que en este caso nunca va a requerir firma ya
que ahora es el comercio quien transfiere dinero de su propia cuenta a la cuenta del cliente y no al
revés. Por ese motivo, lo más lógico sería guardarse la información necesaria en el programa de
gestión y no imprimir la copia del ticket.
Aunque el tratamiento contable de estas operaciones es igual al de las ventas, hay una diferencia que
se debe tener en cuenta para evitar malentendidos o reclamaciones de los clientes al comercio. La
diferencia está en que el ingreso del dinero en la cuenta del cliente puede demorarse algunos días,
aunque el cargo en la cuenta del comercio sí se realiza en el momento de procesar la operación.
Normalmente el ingreso no se suele demorar más de dos o tres días y de hecho, lo habitual es que el
ingreso se haga el mismo día. Sin embargo, podemos encontrarnos con transacciones que no se
completan hasta pasados seis o siete días o incluso más, dando lugar a que el cliente pueda reclamar a
la tienda. Ante esta situación no hay más remedio que pedirle paciencia al cliente: si el dinero ha
salido de la cuenta del comercio, tarde o temprano llegará a la del cliente. El motivo de este
funcionamiento está fuera del alcance de ClearONE, ya que depende de las relaciones entre los
distintos centros autorizadores (Redsýs, CECA, etc.).
12/05/2015
Protocolo de Conexión C le ar O N E versión 1.5
Página 7 (41)
Pasarela de Pagos – Payment Gateway
Avda. La Industria 4  NATEA Business Park  28108 ALCOBENDAS (Madrid)  902-305 308 – 91-490 01 50
Otro aspecto a tener en cuenta es la relación entre la devolución y la venta. Dependiendo del tipo de
comercio, esta relación puede variar desde el extremo de considerarlas dos operaciones totalmente
independientes hasta el extremo opuesto de no permitir una devolución si no existe una venta previa
con la misma tarjeta y por el mismo importe. El servicio ofrecido por ClearONE pretende adaptarse
al mayor número de clientes posible y para ello, partimos de una configuración básica que es la menos
restrictiva: la venta y la devolución son dos operaciones independientes. A partir de aquí y en función
de las necesidades de cada cliente, se puede configurar el sistema para que enlace la devolución con la
venta comprobando para ello los datos que se estime convenientes (número de ticket, código de TPV,
tarjeta, importe, etc.).
2.3. Reserva de Fondos y Confirmación de Reserva
Las operaciones de reserva de fondos y confirmación de reserva se usan conjuntamente y tienen el
mismo resultado que la venta descrita en el punto 2.1. La diferencia es que usando estas dos
transacciones, el proceso se divide en dos fases o etapas. La primera etapa es hacer una reserva de
fondos para garantizar al comercio que va a poder cobrar el importe correspondiente. La segunda
etapa es confirmar esa reserva para hacer efectivo el cobro.
Esta operativa se suele utilizar en hoteles y agencias de alquiler de vehículos. En este tipo de
comercios, no hay una venta de bienes o servicios que se pueda cobrar en el momento. Lo que se hace
es dar un servicio al cliente, que lo disfruta durante algunos días y al final del periodo se le cobra por
dicho servicio. Para dar ese servicio, el comercio tiene que estar razonablemente seguro de que lo va a
poder cobrar. Esa seguridad se la da la operación de reserva de fondos.
Cuando el cliente contrata el servicio, el comercio le hace un presupuesto con el importe aproximado
del mismo. Luego, para tener una garantía de que va a poder cobrarlo, le pide la tarjeta al cliente y se
hace una petición de reserva de fondos. Esta operación bloquea el importe solicitado en la cuenta de
crédito del cliente, pero sin hacer ningún cobro. El comercio no ingresa ningún importe en su cuenta y
al cliente tampoco se le realiza ningún cargo. Simplemente se le bloquea el importe como garantía de
pago para el comercio.
Mientras la reserva está activa, se pueden pedir modificaciones de la misma para aumentar o reducir
el importe reservado. Así se puede ir ajustando el importe de la reserva al coste real que finalmente se
cobrará. Por ejemplo, cuando el cliente de un hotel decide quedarse unos días más, se pide una
ampliación del importe de la reserva para garantizar el cobro de esos días adicionales.
Una vez que el cliente ha disfrutado del servicio y se va a proceder al pago del mismo, el comercio
calcula el importe final a cobrar, que debe ser igual o inferior al importe de la reserva. Se le pide de
nuevo la tarjeta al cliente y se envía una confirmación de reserva haciendo referencia a la reserva
original e indicando el importe que finalmente se va a cobrar. En ese momento es cuando el importe
se transfiere de la cuenta del cliente a la del comercio.
El tiempo que puede transcurrir entre la reserva de fondos y la confirmación de la misma depende de
muchos factores, pero en general se puede decir que hay un plazo límite de 21 días. Si no se manda la
confirmación en ese plazo, la reserva “caduca” automáticamente y se libera el saldo bloqueado en la
cuenta de crédito del cliente.
12/05/2015
Protocolo de Conexión C le ar O N E versión 1.5
Página 8 (41)
Pasarela de Pagos – Payment Gateway
Avda. La Industria 4  NATEA Business Park  28108 ALCOBENDAS (Madrid)  902-305 308 – 91-490 01 50
Es importante destacar que esta operativa tiene algunas limitaciones. En primer lugar, no todos los
bancos y/o centros autorizadores la admiten. CECA, por ejemplo, no tiene esta funcionalidad, de
forma que si el comercio quiere trabajar con alguna entidad de CECA, no podrá hacer uso de ella. La
otra limitación es el tipo de tarjeta sobre la que se puede aplicar. Por definición, la reserva de fondos
solo tiene sentido con tarjetas de crédito, que son las que tienen un crédito sobre el que se puede
aplicar la reserva sin hacer un cargo. Las tarjetas de débito, como las Maestro por ejemplo, quedan
excluidas de esta operativa, salvo alguna excepción puntual como las estaciones de servicio y algún
otro tipo de comercio donde las marcas sí admiten ésta operativa. Por todo ello, hay que evaluar las
necesidades reales del comercio y valorar las ventajas y desventajas de utilizar esta operativa en lugar
de la operativa normal de venta descrita en el punto 2.1
2.4. Recarga Telefónica
Una recarga telefónica es una transacción mediante la cual el cliente incrementa el saldo de su
teléfono móvil prepago en un importe determinado. El comercio le cobra dicho importe al cliente y lo
abona a la operadora telefónica según el convenio que tenga establecido con ella, quedándose
normalmente una comisión.
La operativa en el punto de venta es relativamente simple. Los datos que se necesitan son el importe
de la recarga, la operadora telefónica y el número del teléfono móvil. El programa de gestión del
punto de venta debe obtener esos datos y a continuación enviar una petición al servicio de
ClearONE para solicitar que se realice la recarga. El servicio se encarga de todo el trabajo de
conexión y mensajería necesario, devolviendo el resultado, que nuevamente puede ser ‘aceptada’ o
‘denegada’.
Si la respuesta es ‘denegada’, aunque los motivos pueden ser muy variados (teléfono incorrecto,
importe no válido, el teléfono no es de la operadora indicada, no hay conexión,...) el resultado
siempre es el mismo: la operación no se ha realizado y al cliente no se le ha cargado el saldo en su
teléfono. El programa de gestión deberá estar preparado para esa posibilidad y en ese caso volver al
estado anterior para permitir que se introduzcan de nuevo los datos para un nuevo intento o
simplemente cancelar la operación.
Si la respuesta es ‘aceptada’, la recarga se ha completado y el cliente recibirá en su teléfono móvil un
SMS informándole de que su saldo se ha incrementado en el importe correspondiente. Lo normal es
que el mensaje lo reciba en unos segundos, cuando la transacción todavía está en curso en el punto de
venta. Pero en determinadas ocasiones el mensaje puede tardar en llegar más de lo normal, llegando
a ocurrir que el programa de gestión del punto de venta complete la transacción cuando el teléfono
aún no ha recibido el mensaje. Por ese motivo, se debe imprimir un ticket con los datos de la
operación para que el cliente tenga un justificante de que ha pagado el importe y la recarga realmente
se ha realizado. En ese justificante se incluyen entre otras cosas un número de referencia que facilita
la operadora y le sirve al cliente para cualquier posible reclamación.
Además del proceso de recarga, también hay que tener en cuenta en el punto de venta el proceso de
cobro. Lo normal es realizar primero el cobro y a continuación gestionar la recarga. Si la recarga
funciona no hay problema. Si falla, hay que devolver el importe al cliente y cancelar la transacción. En
caso de que el cobro se haya realizado con una venta TEF, para devolver el importe al cliente habrá
que hacer una devolución o una anulación TEF.
12/05/2015
Protocolo de Conexión C le ar O N E versión 1.5
Página 9 (41)
Pasarela de Pagos – Payment Gateway
Avda. La Industria 4  NATEA Business Park  28108 ALCOBENDAS (Madrid)  902-305 308 – 91-490 01 50
La decisión sobre qué es mejor (cobrar antes o después de la recarga) depende del funcionamiento de
cada programa de gestión del punto de venta. Lo que hacemos nosotros aquí es poner de manifiesto
el problema para que se tenga en cuenta y que cada desarrollador le dé la mejor solución posible
según sus necesidades.
2.5. Anulaciones
Todas las operaciones anteriores (venta, devolución, reserva de fondos, confirmación de reserva y
recarga) pueden ser anuladas. La anulación se emplea cuando ocurre algo que obliga al comercio a
retroceder o eliminar una operación completada con éxito.
Por ejemplo en una recarga puede ocurrir que el operario se equivoque al teclear el teléfono,
enviando el importe de la recarga a otro teléfono distinto. En ese caso hay que anular la recarga para
hacerla de nuevo con el teléfono correcto.
En el caso de la venta o la devolución, podría ocurrir que la aplicación de gestión tuviese mal
configurados los precios y se realizase una venta o una devolución con un importe incorrecto.
También en ese caso se podría anular la operación, para realizarla de nuevo con el importe correcto.
En el caso de las reservas, siempre puede ocurrir que el cliente decida no utilizar el servicio y haya que
liberar el importe que se le ha retenido.
Hay que tener en cuenta que las anulaciones tienen ciertas restricciones. En el caso de las operaciones
TEF (venta y devolución) solo se pueden anular el mismo día en que se hacen. Esto es así porque el
importe de dichas transacciones todavía no se ha transferido a la cuenta del comercio (no se ha
cerrado la sesión contable). Una vez realizado el fin de día, ya no hay posibilidad de anular ventas o
devoluciones del día anterior. La única opción sería hacer una devolución o una venta que compensara
la operación incorrecta, pero para ello tendría que estar presente el cliente con su tarjeta.
En el caso de las recargas, los requisitos varían con cada operadora. Pero en general, no se pueden
anular recargas si han transcurrido más de 48 horas o el saldo recargado ya se ha empezado a
consumir.
En cualquiera de los casos, la anulación es una transacción cuyo uso debería estar restringido en el
programa de gestión del punto de venta. Su finalidad es únicamente la de corregir errores que,
aunque pueden darse, son poco habituales y por ello se debe utilizar con cuidado.
Otro punto a tener en cuenta es el servicio de aviso por SMS que algunos bancos ofrecen a sus
clientes. Al activar dicho servicio, el banco envía al cliente un SMS cada vez que se realiza un cargo a su
tarjeta. Pero son pocos los bancos que envían ese mismo aviso cuando lo que se hace es una
devolución y no hay prácticamente ninguno que mande SMS cuando la operación realizada es una
anulación. Esto suele llevar a confusión a los clientes, que al no recibir el SMS piensan que la
operación no se ha realizado. Ante esta situación, el personal del comercio debe tener claro que la
información correcta es siempre la que le devuelve su sistema de gestión.
12/05/2015
Protocolo de Conexión C le ar O N E versión 1.5
Página 10 (41)
Pasarela de Pagos – Payment Gateway
Avda. La Industria 4  NATEA Business Park  28108 ALCOBENDAS (Madrid)  902-305 308 – 91-490 01 50
2.6. Detalle de Operaciones y Datos Ultima Operación
Estas transacciones se utilizan para obtener información de las operaciones procesadas por el sistema.
Se pueden realizar cuantas veces sea necesario porque no generan ningún movimiento de fondos.
El detalle de operaciones es una consulta que devuelve un listado con todas las transacciones
realizadas en el día. Se puede usar para comparar con los datos que tiene el programa de gestión del
punto de venta y confirmar que no hay ninguna discrepancia, para detectar y solucionar errores
debidos a cortes de corriente o similar.
La consulta sobre la última operación sirve para recuperar la respuesta del servicio a la última petición
procesada. Se puede utilizar cuando algún problema en el punto de venta hace que no se pueda
imprimir el ticket correspondiente. Usando esta transacción se recupera la información necesaria para
generar el ticket.
2.7. Consulta de Totales
La consulta de totales es una operación para obtener información. Se puede realizar cuantas veces sea
necesario porque no genera ningún movimiento de fondos. Su utilidad es la de obtener en el punto de
venta información sobre el número de operaciones de cada tipo (venta, devolución y recarga)
realizadas así como la suma del importe de las mismas.
Normalmente esta operación se realiza al final del día, cuando se está cuadrando la caja, para verificar
que los importes contabilizados por los centros autorizadores coinciden con los contabilizados en el
punto de venta (lo normal es que siempre coincidan). También puede servir para confirmar si una
operación se ha realizado, cuando algún problema grave en el punto de venta ha podido cortar una
transacción en proceso.
La consulta de totales está ligada con la operación de fin de día por el hecho de que los totales se
contabilizan siempre entre dos operaciones de fin de día. Así, el sistema empieza con los totales a cero
y cada transacción de venta, devolución o recarga va incrementando los contadores correspondientes
hasta que se realiza un fin de día, momento en que los totales se ponen de nuevo a cero.
ClearONE puede contabilizar los totales a tres niveles distintos: punto de venta, tienda o cliente. El
concepto de tienda se usa para agrupar los totales de varios puntos de venta situados en un mismo
establecimiento. Así podemos tener los totales de cada punto de venta por separado o bien la suma
de todos ellos. El concepto de cliente se usa para hacer una agrupación similar sobre las tiendas. Así
cuando hay un cliente con varios establecimientos, podemos facilitarle los totales de cada
establecimiento (tienda) por separado, o bien los totales sumados de todas las tiendas.
Y en cualquiera de los casos anteriores, los totales de operaciones TEF (venta y devolución) se
desglosan por banco o número de cuenta, pudiendo así saber la cantidad e importe de operaciones
procesadas a través de cada banco.
12/05/2015
Protocolo de Conexión C le ar O N E versión 1.5
Página 11 (41)
Pasarela de Pagos – Payment Gateway
Avda. La Industria 4  NATEA Business Park  28108 ALCOBENDAS (Madrid)  902-305 308 – 91-490 01 50
2.8. Fin de Día
Como ya adelantábamos al describir la operación de venta, el movimiento de fondos asociado a cada
venta o devolución no se efectúa al procesar la operación. Lo que hace el banco es acumular todas las
operaciones realizadas a lo largo del día (lo que ellos llaman una ‘sesión contable’) para realizar un
único movimiento al final del día por el total del importe correspondiente. Para que ese movimiento
se realice es para lo que se usa la operación de fin de día.
Además de hacer el cierre con el banco y poner a cero los contadores, el Fin de día devuelve
información igual que la consulta de totales, contabilizando a tres niveles (punto de venta, tienda y
cliente) y desglosando siempre por banco o número de cuenta.
Normalmente esta operación no se realiza en el punto de venta de forma manual. Es ClearONE
quien diariamente la realiza de forma automática a una hora previamente acordada con el cliente. Al
automatizar la operación, se evita la posibilidad de errores u olvidos que podrían causar que el ingreso
no se realizara en el momento debido, acumulando los importes al ingreso de días posteriores.
Pero hay determinados tipos de comercio que necesitan controlar desde el punto de venta el
momento exacto en que se realiza el fin de día. Para estos comercios es para los que tiene sentido
utilizar la operación de fin de día.
Normalmente son grandes cadenas con muchos establecimientos que trabajan 24 horas al día y
debido al volumen de transacciones procesadas, no tienen posibilidad de cuadrar las cajas si no es
haciendo coincidir la fecha contable del establecimiento con la del banco.
En todo caso, hay que saber que no todos los bancos o centros autorizadores permiten controlar el
momento del cierre. Hay casos en los que el centro autorizador realiza el cierre de forma unilateral a
la hora que ellos deciden, normalmente a partir de las 22:00 o las 23:00. Y también hay centros que
solo admiten una operación de fin de día por cada día natural. Si se hace un fin de día a fecha uno de
Enero (digamos a las 23:00) y a continuación se intenta realizar de nuevo (por ejemplo a las 23:30), la
operación fallará ya que el día 1 de Enero ya está cerrado.
Por todo ello, hay que valorar si realmente es necesario utilizar la transacción de Fin de día desde el
punto de venta. En la mayoría de los casos, la consulta de totales es más que suficiente. Pero el Fin de
día existe y se puede utilizar.
2.9. Lectura de Tarjeta Privada
Hay comercios que utilizan tarjetas de banda magnética para fines distintos al pago (tarjetas de
fidelización, de puntos, para identificación de los operarios, etc.). Para que estas operativas funcionen,
el programa de gestión del punto de venta necesita obtener los datos grabados en la banda magnética
de la tarjeta y para ello se suele utilizar un lector de banda magnética conectado al TPV y controlado
directamente por el programa de gestión del punto de venta.
Cuando el punto de venta tiene también el cobro con tarjeta activado, tendrá normalmente un lector
Pin-Pad para leer las tarjetas de crédito/débito y teclear el PIN en aquellas que lo requieran. Como
estos lectores incluyen siempre un lector de banda magnética, se plantea la posibilidad de usar este
lector para todo, eliminando así la necesidad de tener dos lectores distintos.
12/05/2015
Protocolo de Conexión C le ar O N E versión 1.5
Página 12 (41)
Pasarela de Pagos – Payment Gateway
Avda. La Industria 4  NATEA Business Park  28108 ALCOBENDAS (Madrid)  902-305 308 – 91-490 01 50
Nuestro sistema permite esta arquitectura, utilizando el lector Pin-Pad para las operaciones de pago y
también para leer tarjetas de fidelización, de puntos, etc. Para ello hemos definido la transacción
“Lectura tarjeta privada” mediante la cual el programa de gestión del punto de venta manda una
petición al servicio de ClearONE para que active el lector, gestione la lectura de una tarjeta privada y
le devuelva los datos de la tarjeta leída.
La única limitación está en que las tarjetas privadas deben tener una configuración muy concreta para
que no haya conflicto con las tarjetas de pago: deben tener la información grabada en la pista 2 y la
numeración de las mismas no puede empezar por 3, 4, 5 ni 6. Si la tarjeta no cumple esas reglas el
lector considera que se trata de una tarjeta de pago y está obligado a aplicar las medidas de seguridad
impuestas por los bancos y centros autorizadores, cifrando los datos obtenidos de la tarjeta para que
nadie salvo el centro autorizador pueda tener acceso a ellos.
2.10. Venta TNA y Venta DCC
La operación de venta definida en el punto 2.1 se basa en un diálogo muy sencillo entre la aplicación
de gestión y el servicio de ClearONE: la aplicación manda una petición al servicio con el importe a
cobrar y algunos datos más, el servicio hace todo el trabajo y devuelve la respuesta a la aplicación.
Esta operativa es válida para la mayoría de los casos, pero hay ocasiones en las que no sirve. Un
ejemplo son los entornos no atendidos (máquinas vending, expendedoras de tickets, cajeros de
parking, kioscos autoservicio, etc.) en los que la aplicación que gestiona el punto de venta necesita
obtener más información del proceso de pago: si se vende un refresco o un billete de tren y el pago se
puede hacer en efectivo o tarjeta, el equipo debe activar ambos sistemas de pago, pero en cuanto se
mete una tarjeta en el lector y comienza el proceso de pago con tarjeta, el cajero debe saberlo para
desactivar el pago en efectivo.
Otro caso en el que no se puede aplicar el diálogo de la venta normal es cuando el importe a cobrar
depende de la tarjeta que se utiliza para el pago. Si el pago con una determinada tarjeta lleva asociado
un descuento, no es posible determinar el importe a cobrar hasta que comienza la transacción de
pago y se lee la tarjeta. Pero para activar el pago hay que enviar una petición al servicio y la petición
de venta normal incluye el importe a cobrar.
Para esas situaciones hemos creado la operativa “Venta TNA” que contablemente es idéntica a la
venta descrita en el punto 2.1, pero se diferencia de ella en que el diálogo entre el programa de
gestión del punto de venta y el servicio de ClearONE incluye más tramas. En esta operativa, la
petición inicial es más sencilla y no incluye el campo importe. Al recibir esa petición el servicio de
ClearONE activa el lector Pin-Pad y espera hasta que se introduzca una tarjeta. Una vez introducida,
el servicio envía al programa de gestión una trama de respuesta indicándole el resultado de la lectura
y el BIN (los primeros 6 dígitos) de la tarjeta leída. A continuación, el programa de gestión manda una
nueva trama al servicio indicándole el importe a cobrar y algunos datos adicionales. A partir de aquí la
transacción continúa como una venta normal, se envía la petición al centro autorizador, se recibe y
procesa la respuesta y finalmente se envía al programa de gestión una trama de respuesta con el
mismo formato que la venta descrita en el punto 2.1.
La otra operativa que se ha añadido al servicio es la venta DCC. Al igual que en la venta TNA, la
diferencia principal respecto a la venta “normal” es que el dialogo entre el programa de gestión y el
servicio se amplía con nuevas tramas.
12/05/2015
Protocolo de Conexión C le ar O N E versión 1.5
Página 13 (41)
Pasarela de Pagos – Payment Gateway
Avda. La Industria 4  NATEA Business Park  28108 ALCOBENDAS (Madrid)  902-305 308 – 91-490 01 50
DCC es la abreviatura de “Dynamic Currency Conversion” (Conversión Dinámica de Divisa, o Moneda).
Esta operativa suele estar presente en los datafonos que los bancos facilitan a sus comercios y se
utiliza para permitir al cliente pagar en su propia moneda en lugar de en Euros. El comercio siempre
recibe el importe en Euros en su cuenta, independientemente de que se aplique DCC o no. La
diferencia está en que cuando hay DCC, la conversión de Euros a divisa la hace el banco con el que
trabaja el comercio, mientras que sin DCC es Visa Internacional o MasterCard quien realiza ese
cambio.
Usando ésta operativa, el proceso de pago en el punto de venta se modifica, mostrando el Pin-Pad un
menú de selección de moneda en el que el cliente ve el importe en euros, el contravalor en su divisa y
se le pide que seleccione la moneda con la que quiere pagar. Además, si el Pin-Pad no tiene una
pantalla con capacidad suficiente para mostrar toda la información que Visa y MasterCard consideran
necesaria, el programa de gestión del punto de venta tiene que generar un ticket informativo con toda
esta información (comisión aplicada, Mark-up, entidad que realiza el cambio, etc.) para que el
operario lo entregue al cliente.
La operativa quedaría por tanto así: el programa de gestión manda petición al servicio de ClearONE
(en este caso sí se incluye el importe a cobrar, siempre en euros). El servicio activa el Pin-Pad, lee
tarjeta, pide pin (si es necesario) y manda la petición al centro autorizador.
El centro autorizador detecta que la tarjeta es extranjera y devuelve información con el cambio a
aplicar. En ese punto el servicio manda una respuesta al programa de gestión con la información
relativa al cambio.
El programa de gestión emite el ticket informativo (si es necesario) y manda un ‘ACK’ al servicio para
que continúe la transacción. Ahora el Pin-Pad muestra el menú de selección de moneda y el cliente
elige la moneda a utilizar. Esa selección se manda al centro autorizador y la transacción se completa,
generándose la respuesta final que el servicio envía al programa de gestión en un formato muy similar
al de una venta normal.
2.11. Estado del Sistema
Esta transacción se utiliza para preguntarle al servicio de ClearONE en qué estado se encuentra el
sistema de pago. Se suele utilizar en terminales no atendidos, en los que el programa de gestión tiene
que chequear regularmente todos los módulos que componen el sistema para verificar que se
encuentran operativos, activando las correspondientes alarmas en caso contrario.
La petición se puede enviar al servicio tantas veces como sea necesario, respondiendo éste a cada
petición con una trama de respuesta en la que se informa del estado. Si todo está bien, la trama de
respuesta es un simple “TODO OK”. Si algo falla, la trama de respuesta indica el componente que está
fallando (Pin-Pad, acceso a la red, conexión con el servidor del servicio TEF, etc.)
Es importante destacar que todas las comprobaciones que se hacen con esta transacción, ya las hace
el sistema de forma automática al procesar otras transacciones como la venta o la devolución. Por
tanto, no sirve de nada lanzar una consulta de estado antes de cada venta, ya que lo único que
conseguimos es hacer dos veces lo mismo y por consiguiente, hacer que la transacción sea más lenta.
La consulta de estado del sistema solo debe usarse para aquello para lo que se ha pensado: consultar
el estado de un sistema no atendido cuando nadie lo está usando.
12/05/2015
Protocolo de Conexión C le ar O N E versión 1.5
Página 14 (41)
Pasarela de Pagos – Payment Gateway
Avda. La Industria 4  NATEA Business Park  28108 ALCOBENDAS (Madrid)  902-305 308 – 91-490 01 50
2.12. Selección de idioma
Esta transacción se utiliza para indicarle al Pin-Pad el idioma que debe utilizar en la próxima
transacción que va a procesar. Se suele utilizar en kioscos o en terminales no atendidos, en los que el
programa de gestión del punto de venta admite varios idiomas y permite al cliente seleccionar el
idioma a utilizar (por ejemplo pulsando sobre la bandera de su país). Con esta transacción, se consigue
que el Pin-Pad muestre sus mensajes en el mismo idioma que el programa de gestión, ofreciendo al
usuario un interfaz más coherente y unificado.
Sin embargo, hay que tener en cuenta que no todos los Pin-Pad admiten ésta operativa. Y en aquellos
que sí la soportan, tampoco hay un comportamiento uniforme (algunos siguen con el idioma
seleccionado hasta que hay una nueva selección, otros vuelven a un idioma por defecto al completar
la transacción, etc.). Por ello, antes de usar esta operativa hay que asegurarse del Pin-Pad que se va a
utilizar y de las capacidades del mismo.
2.13. Captura de firma
Entre los distintos tipos de Pin-Pad que se pueden conectar al servicio, hay algunos que tienen una
pantalla táctil con la que se puede capturar la firma del cliente. Normalmente esta captura de firma va
asociada a las operaciones de pago con tarjeta, siendo un proceso gestionado por el servicio de
ClearONE de forma transparente al programa de gestión del punto de venta. Sin embargo, hay casos
en los que el programa de gestión puede requerir la firma del cliente para operaciones que no están
directamente relacionadas con el pago con tarjeta. Para estas operaciones es para las que se utiliza la
transacción de captura de firma.
Con esta transacción, el programa de gestión del punto de venta le pasa un texto al servicio de
ClearONE y el servicio se encarga de mostrar ese texto en la pantalla del Pin-Pad y activar el proceso
de captura de firma. Una vez completada la captura, el servicio deja la firma en el archivo que el
programa de gestión del punto de venta le ha indicado y a partir de ese momento la gestión de la
firma ya es responsabilidad del programa de gestión (evidentemente, hay que proteger esa firma con
todas las medidas de seguridad necesarias para que no se pueda hacer un mal uso de ella).
3. Instalación y Configuración del Servicio
Como ya se avanzaba en el punto 1.1, la conexión de cada punto de venta con la plataforma de
ClearONE se realiza mediante un servicio Windows (disponible también en Linux). Dicho servicio es
un programa llamado “CoServiceEMV.exe” que ClearONE facilita a sus clientes y colaboradores para
que lo instalen en los puntos de venta a conectar.
El ejecutable del servicio se acompaña con un fichero de configuración llamado “CoServiceEMV.cfg”.
Ambos ficheros deben copiarse en una carpeta del equipo, normalmente ‘\ClearOne’, aunque no es
estrictamente necesario que se llame así.
En la siguiente página mostramos un esquema funcional del servicio/componente CoServiceEMV.
12/05/2015
Protocolo de Conexión C le ar O N E versión 1.5
Página 15 (41)
Pasarela de Pagos – Payment Gateway
Avda. La Industria 4  NATEA Business Park  28108 ALCOBENDAS (Madrid)  902-305 308 – 91-490 01 50
Esquema Funcional del Servicio/Componente CoServiceEMV
Lo primero que hay que hacer una vez copiados ambos ficheros es editar el de configuración. Es un
fichero de texto que se puede ver con cualquier editor, por ejemplo el ‘bloc de notas’ de Windows.
Contiene una serie de secciones identificadas por un nombre entre corchetes, seguidas de una o varias
líneas de información. El carácter # se usa para incluir comentarios, de forma que toda línea que
empieza con # se ignora. Las secciones del fichero y la información que contienen se describen a
continuación.
[CONEXION] Esta sección puede tener varias líneas, hasta un máximo de 20, en las que se indican los
datos de conexión que el servicio necesita para conectarse a la plataforma de ClearONE. Cada línea
contiene una dirección IP, un puerto y un timeout de conexión, separando los campos el carácter ‘:’.
La información de esta sección es dinámica, el servicio la puede modificar con la información recibida
del servidor cambiando líneas, borrándolas o añadiendo nuevas líneas con datos de conexión para
backup.
[PROXY] Esta sección contiene la información necesaria para que el servicio pueda funcionar a través
de un Proxy. Es una única línea en la que se indica la URL o la IP del proxy, el puerto a utilizar y un
timeout de conexión, separando los campos con el carácter ‘:’.
[PUERTO] Esta sección solo tiene una línea en la que se especifica un valor numérico. Es el puerto TCP
en el que el servicio se pone a la escucha para recibir las peticiones del software de gestión del punto
de venta.
12/05/2015
Protocolo de Conexión C le ar O N E versión 1.5
Página 16 (41)
Pasarela de Pagos – Payment Gateway
Avda. La Industria 4  NATEA Business Park  28108 ALCOBENDAS (Madrid)  902-305 308 – 91-490 01 50
[PROTOCOLO] Esta sección solo tiene una línea en la que se especifica un valor numérico. Es el
protocolo de comunicaciones que debe utilizar el servicio. El valor por defecto es 1, que se
corresponde con el protocolo descrito en este documento.
[CTLSRESP] Esta sección solo tiene una línea en la que se especifica un valor numérico. La utilizamos
para gestionar la nueva funcionalidad contactless manteniendo la compatibilidad con versiones
anteriores. Si se configura a 1, las tramas de respuesta del servicio cambian con respecto a versiones
anteriores para incluir los nuevos campos necesarios para el contactless. Si se pone cualquier otro
valor, el servicio mantiene las tramas de respuesta utilizadas en versiones anteriores, siendo así
compatible con todas las instalaciones realizadas hasta la fecha.
[NUMTICKRESP] Poniendo un “1” en esta sección, se modifican las tramas de respuesta que devuelve
el servicio (descritas en el punto 5.2), añadiendo un campo con el número de ticket recibido en la
petición.
[BINRESP] Poniendo un “1” en esta sección, se modifican las tramas de respuesta que devuelve el
servicio (descritas en el punto 5.2), añadiendo un campo con el ‘BIN’ de la tarjeta procesada. El BIN
son los primeros 6 dígitos de la tarjeta, que se utilizan para identifican al banco emisor de la misma.
[TAXFREERESP] Poniendo un “1” en esta sección, se modifican las tramas de respuesta que devuelve
el servicio (descritas en el punto 5.2), añadiendo el campo ‘TaxFree’ de la tarjeta procesada.
[FICHEROS] Esta sección solo tiene una línea en la que se especifica una ruta para intercambio de
ficheros.
[CLIENTE], [TIENDA], [TPV] Estos tres campos se usan para que ClearONE identifique el punto de
venta. Cada equipo en el que se instale el servicio tendrá asignado un trío de valores Cliente-TiendaTpv que le identifique de forma única. Estos valores los asigna ClearONE para cada instalación.
Es importante destacar aquí que ClearONE asocia en sus bases de datos la información de “ClienteTienda-TPV” con el MAC de la tarjeta de red del equipo. Esta asociación se hace de forma automática
la primera vez que el servicio se conecta con ClearONE, controlando así el equipo físico en el que se
instala cada servicio. Así garantizamos que nunca se pueda suplantar la identidad de un punto de
venta (Cliente,Tienda,Tpv) enviando transacciones en su nombre, ya que si la petición viene de otro
equipo distinto, el MAC de la tarjeta de red no coincidirá y se le rechazaran las peticiones. Este control
forma parte de los requisitos de seguridad que exigen los centros autorizadores. Hay que tener en
cuenta que lo que estamos haciendo es conectar el punto de venta con las redes de los centros
autorizadores y ello requiere altos niveles de seguridad.
El inconveniente es que cada vez que se cambia físicamente un equipo, o se le cambia la tarjeta de
red, hay que avisar a ClearONE para que permita la conexión del nuevo equipo.
[PINPAD] Esta sección tiene una línea en la que se indica el tipo de Pin-Pad que se va a conectar al PC,
así como el tipo de conexión (USB o serie).
[TPV_PINPAD] Esta sección se utiliza en sustitución de [TPV] + [PINPAD] para configurar un único
servicio que atienda las peticiones de todos los TPV´s de una tienda de forma simultánea. En esta
configuración el servicio no se instala en cada TPV, sino en un servidor de tienda que recibe y procesa
de forma centralizada las peticiones de pago de todos los TPV´s de la tienda.
12/05/2015
Protocolo de Conexión C le ar O N E versión 1.5
Página 17 (41)
Pasarela de Pagos – Payment Gateway
Avda. La Industria 4  NATEA Business Park  28108 ALCOBENDAS (Madrid)  902-305 308 – 91-490 01 50
[TIENDA_PINPAD] Esta sección se utiliza en sustitución de [TIENDA] + [TPV] + [PINPAD] para
configurar un servicio que atienda las peticiones de todos los TPV´s de múltiples tiendas de forma
simultánea. En esta configuración el servicio se instala en un servidor centralizado que recibe y
procesa las peticiones de pago de todos los TPV´s de varias tiendas.
[TPV_PSERIE] Esta sección es similar a TPV_PINPAD, pero añadiendo la información necesaria para
comunicar con un programa de TPV por conexión serie en lugar de la conexión TCP descrita en este
documento.
[CAB_TICKET] En esta sección se pueden configurar hasta 6 líneas de texto de un máximo de 40
caracteres cada una para utilizarlas como cabecera en los tickets que generan los Pin-Pad que tienen
impresora.
[DEBUG] Esta sección tiene una única línea en la que se especifica un valor numérico entre 0 y 4. Si se
pone a cero, no aparece ningún mensaje en el fichero de log. Si se pone a 4, aparecen en el log la
mayor cantidad posible de mensajes, para tener un registro de lo que hace el servicio. La
recomendación de ClearONE es usar siempre el valor 4. El tamaño del fichero log está limitado para
que no crezca indefinidamente, por lo que nunca habrá problemas de espacio debido a este fichero.
En cuanto al contenido del mismo, tampoco genera ningún problema de seguridad o privacidad. La
información que se graba en el fichero cumple con todos los requisitos derivados del PCI-DSS, de
forma que no hay información sensible que pueda ser utilizada por ningún usuario malintencionado.
Una vez tengamos el fichero de configuración revisado, podemos pasar a instalar el servicio. Para ello
hay que abrir una ventana MS-DOS, situarse en el directorio en el que se han copiado ambos ficheros
y ejecutar “CoServiceEMV –i”. Si todo es correcto, se mostrará en pantalla el mensaje “Servicio
correctamente instalado” y aparecerá un fichero llamado ‘CoServiceEMV.log’ en el que el servicio deja
un log de las operaciones realizadas. A continuación podemos abrir el administrador de servicios de
Windows y poner en marcha el servicio. Si todo es correcto, el servicio se conectará con ClearONE,
intercambiaran las claves necesarias para trabajar y se creará el fichero ‘CoServiceEMV.bin’ en el que
se guarda toda esa información. A partir de ese momento, la conexión con ClearONE ya está
disponible y el servicio está a la escucha para recibir y procesar las peticiones que le envíe el software
de gestión del punto de venta.
4. Cómo Integrar ClearONE en un Programa de Gestión
El servicio descrito en el punto anterior tiene la misión de recibir peticiones del programa de gestión y
procesarlas devolviendo la respuesta correspondiente al mismo. Toda la información intercambiada
entre las dos aplicaciones se codifica en tramas de datos con formato ASCII, que se envían y reciben a
través de sockets TCP/IP. Para ello, el servicio abre un puerto de escucha TCP en la dirección local del
PC (127.0.0.1) utilizando el número de puerto definido en el fichero de configuración. Y cada vez que
el programa de gestión requiere los servicios de ClearONE, se conecta al socket del servicio, le
manda la trama de petición con toda la información necesaria y espera la respuesta por la misma
conexión.
12/05/2015
Protocolo de Conexión C le ar O N E versión 1.5
Página 18 (41)
Pasarela de Pagos – Payment Gateway
Avda. La Industria 4  NATEA Business Park  28108 ALCOBENDAS (Madrid)  902-305 308 – 91-490 01 50
La decisión de utilizar un servicio y comunicaciones TCP para enlazar el software de gestión con
ClearONE se ha tomado después de valorar detenidamente otras posibles opciones como el uso de
librerías DLL o drivers OPOS. Y lo que se pretende con dicha decisión es permitir una fácil integración
al mayor número de desarrolladores posible. Si hubiésemos optado por generar una DLL, estaríamos
limitando la conexión a los programas desarrollados en un lenguaje determinado, a menos que
generásemos tantas DLL’s como lenguajes hay en el mercado. Además, los tipos de datos que utiliza
cada lenguaje de programación son distintos, causando multitud de problemas en el proceso de
integración. En cuanto a los drivers OPOS, no hay ningún tipo de dispositivo estándar en las
especificaciones que se adapte a lo que ofrece nuestro servicio. Y en caso de que lo hubiera, también
tendríamos que generar varios drivers distintos (OPOS estándar, OPOS para Java, OPOS para .NET,
etc.)
4.1. Un Ejemplo en C++
Lo más gráfico para cualquier programador es ver un ejemplo en código. A continuación mostramos
una sencilla función que establece conexión con el servicio, le envía una trama de datos previamente
generada, espera la respuesta del servicio y una vez recibida la confirma con una trama de ACK y cierra
la conexión. El código del ejemplo está escrito en C++ porque ese es el lenguaje que ClearONE utiliza
habitualmente para sus desarrollos. Pero es suficientemente intuitivo como para que cualquier
programador lo entienda, independientemente del lenguaje en el que trabaje.
Lo primero que hace la función es crear un socket y establecer conexión con la IP 127.0.0.1 y el puerto
‘port’ que recibe en los parámetros. Se supone que en esa IP y puerto está escuchando el servicio.
Una vez conectados con el servicio, le mandamos la trama de petición, un array de caracteres que la
función recibe en ‘pet’ y se supone que contiene la información necesaria para pedirle al servicio que
procese una determinada transacción. Más adelante en este mismo documento se describe el formato
de las tramas a utilizar.
Después de enviar la petición, hacemos una llamada a ‘recv’ que termina cuando el servicio nos envía
la respuesta correspondiente (o cuando se cierra o se pierde la conexión). Comprobamos a
continuación que realmente hemos recibido la respuesta y si es así, generamos una trama de
aceptación y la mandamos al servicio para confirmarle que hemos recibido la respuesta
correctamente. Finalmente, cerramos el socket y terminamos, devolviendo el tamaño de la respuesta
recibida.
Ver el ejemplo de código en la siguiente página
12/05/2015
Protocolo de Conexión C le ar O N E versión 1.5
Página 19 (41)
Pasarela de Pagos – Payment Gateway
Avda. La Industria 4  NATEA Business Park  28108 ALCOBENDAS (Madrid)  902-305 308 – 91-490 01 50
int ProcesaTRN ( char *pet, int tampet, char *resp, int tamresp, short port )
{
SOCKET
sock;
structsockaddr_in
dir;
int
tam;
char
ack[5];
tam = 0;
sock = socket ( AF_INET , SOCK_STREAM , 0 );
dir.sin_family = AF_INET;
dir.sin_addr.S_un.S_un_b.s_b1 = 127;
dir.sin_addr.S_un.S_un_b.s_b2 = 0;
dir.sin_addr.S_un.S_un_b.s_b3 = 0;
dir.sin_addr.S_un.S_un_b.s_b4 = 1;
dir.sin_port = htons ( port );
if ( connect ( sock , (SOCKADDR *)&dir, sizeof(dir) ) !=0 )
{
if (send (sock, pet, tampet, 0) == tampet)
{
if ( (tam = recv (sock, resp, tamresp, 0)) > 0)
{
ack[0] = 0x02;
ack[1] = ‘A’;
ack[2] = ‘C’;
ack[3] = ‘K’;
ack[4] = 0x03;
send (sock, ack, 5, 0);
}
}
closesocket ( sock );
}
return tam;
}
12/05/2015
Protocolo de Conexión C le ar O N E versión 1.5
Página 20 (41)
Pasarela de Pagos – Payment Gateway
Avda. La Industria 4  NATEA Business Park  28108 ALCOBENDAS (Madrid)  902-305 308 – 91-490 01 50
5. Formato de las tramas de datos
Todas las tramas intercambiadas entre la aplicación de gestión del punto de venta y el servicio de
ClearONE tienen la misma estructura. Son cadenas de caracteres ASCII que empiezan con un
carácter de cabecera, siguen con una serie de campos de longitud variable separados entre sí por un
separador de campos y terminan con un carácter de fin de trama:
[STX]Campo1;Campo2;…;CampoN[ETX]
El carácter de cabecera es el [STX] (Start of text) , que tiene el valor ASCII 2. El carácter de fin de trama
es el [ETX] (End of text), con el valor ASCII 3. Y el separador de campos es el punto y coma, el ASCII 59.
Lógicamente, los campos de la trama no pueden incluir ninguno de los tres caracteres anteriores, pues
de lo contrario se interpretarían mal los límites de los campos o de la propia trama.
Por último, resaltar el hecho de que el último campo de la trama no va seguido de un separador. El
carácter de fin de trama que le sigue es el que marca el límite de dicho campo y también de la trama.
El diálogo normal que se utiliza en prácticamente todas las transacciones procesadas por el servicio
consiste siempre en el intercambio de tres tramas: una petición del programa de gestión al servicio,
una respuesta del servicio al programa de gestión y una trama de confirmación o “ACK” del programa
de gestión al servicio. Estas tramas se describen en los tres puntos siguientes.
Las tramas utilizadas por ciertas transacciones que requieren un diálogo extendido distinto al anterior,
se describen en el punto 5.4
5.1. Tramas de petición
Las tramas de petición tienen una cabecera común y luego ‘datos adicionales’, una serie de campos
que dependen del tipo de trama. El formato de estas tramas es:
[STX]Cliente;Tienda;Tpv;Operario;Ticket;TipoOp[DatosAdicionales][ETX]
Los campos de la cabecera sirven para identificar el origen de la transacción y el tipo de la misma. Este
es el significado de cada uno de ellos:
Cliente,Tienda,Tpv: Son campos numéricos, en el rango 1-999999999, que asigna ClearONE en cada
instalación para identificar de forma única a cada punto de venta que se conecta con la plataforma.
Operario: Es el código del operario que está trabajando en el punto de venta. Es un campo de texto
que puede tener desde 0 hasta 20 caracteres.
Ticket: Es el número de ticket que asigna el software de gestión del punto de venta a la transacción en
curso. Es un campo de texto entre 0 y 20 caracteres. Este campo es el que se devuelve en la trama de
respuesta cuando se activa la sección [NUMTICKRESP] en el fichero cfg.
12/05/2015
Protocolo de Conexión C le ar O N E versión 1.5
Página 21 (41)
Pasarela de Pagos – Payment Gateway
Avda. La Industria 4  NATEA Business Park  28108 ALCOBENDAS (Madrid)  902-305 308 – 91-490 01 50
TipoOp: Es un campo numérico que indica el tipo de operación que se está solicitando al servicio. Los
valores posibles son:
1-Venta
2-Devolución
3-Recarga telefónica
4-Reserva de fondos
5-Confirmación de reserva
6-Taxfree*
11-Anula venta
12-Anula Devolución
13-Anula Recarga
14-Anula reserva
15-Anula confirmación reserva
16-Anula taxfree*
21-Totales Cliente
22-Totales Tienda
23-Totales Tpv
31-FinDiaCliente
32-FinDiaTienda
33-FinDiaTpv
41-Detalle de operaciones
42-Datos última operación
43-Lectura tarjeta privada
44-Venta TNA
45-Estado Sistema
46-Venta DCC
47-Selección de idioma
48-Captura de firma
* Estas transacciones se describen en detalle en el documento “Anexo Tax Free”.
Y en función del tipo de operación, los datos adicionales pueden ser cero, uno o varios campos,
siempre con el formato estándar y separados por el separador de campos ‘;’. Estos son los campos
para cada tipo de operación:
1-Venta:
2-Devolucion:
3-Recarga:
4-Reserva:
5-Conf.Res.:
11-Anul.Vta:
12-Anul.Dev:
13-AnulRec:
14-Anul.Res.:
15-Anul.Conf:
21,22,23-Totales:
31,32,33-FinDia:
41-Detalle OP’s:
42-Ultima OP.:
43-Lect.Trj.Priv:
44-Venta TNA:
45-Estado sist.:
46-Venta DCC:
47-Sel.Idioma:
48-Captura Firma:
12/05/2015
;Importe;Banco;PagoAplazado;;;PAN;Caducidad;CVV
;Importe;Banco;;;PAN;Caducidad;NumOpOrg;FechaOpOrg
;Importe;Operadora;Telefono
;Importe;Banco;NumOpCO;;;PAN;Caducidad;CVV
;Importe;NumOpCO;;;PAN;Caducidad;CVV
;Importe;NumOpCO;NumOpBco;CodAut
;Importe;NumOpCO;NumOpBco;CodAut
;Importe;NumOpCO;LocalRef;OperatorRef
;Importe;NumOpCO;NumOpBco;CodAut
;Importe;NumOpCO;NumOpBco;CodAut
;FechaConsulta
[;FechaConsulta[;Ticket]]
;Importe;Banco;PagoAplazado
;Idioma
;NomFich;TextoLibre
Protocolo de Conexión C le ar O N E versión 1.5
Página 22 (41)
Pasarela de Pagos – Payment Gateway
Avda. La Industria 4  NATEA Business Park  28108 ALCOBENDAS (Madrid)  902-305 308 – 91-490 01 50
Nota: Página anterior: Como se puede ver, en las tramas 1, 2, 4 y 5 aparecen tres “;” consecutivos.
No es ninguna errata, son campos que en la actualidad no se utilizan pero que mantenemos
en las tramas por compatibilidad con versiones previas.
Y a continuación se explica el formato de cada campo:
Importe: Campo numérico en el rango 1-999999999. No lleva signo ni separador decimal y las dos
últimas cifras se entienden como decimales. Así, el valor 1 significa 0,01€, el valor 100 significa 1,00€ y
el máximo posible, 999999999, equivale a 9.999.999,99 €.
Banco: Campo numérico en el rango 1-9999 que se usa para indicar que la transacción debe enviarse a
un banco determinado. Con esto permitimos que el punto de venta pueda trabajar con varios bancos
y elegir en cada operación el banco que debe procesarla. La codificación de este campo se basa en la
establecida por el banco de España en el “Registro oficial de entidades”, accesible vía internet:
http://www.bde.es/servicio/regis/regent.htm. En ciertas configuraciones especiales, se utiliza este
campo como ‘Código de empresa’, siendo en ese caso un campo texto de hasta 8 caracteres que se
utiliza para identificar los distintos comercios disponibles e indicar cuál de ellos debe utilizarse en la
transacción actual.
PagoAplazado: Campo numérico en el rango 0-9999 que se utiliza en las tarjetas privadas para indicar
desde el punto de venta la forma de pago a utilizar (debito, crédito, pago aplazado a 3 meses, etc.) La
codificación exacta depende del tipo de tarjeta.
PAN: Personal Account Number, el número de la tarjeta del cliente. Se utiliza en entornos WEB
cuando la captura de los datos de la tarjeta se hace en la página del comercio. La longitud de este
campo está entre 0 y 19 dígitos.
Caducidad: Se utiliza en conjunto con el campo anterior para realizar la transacción en entornos WEB.
El formato es MMAA, tal como viene impreso en el relieve de las tarjetas.
CVV: Campo numérico entre 0 y 5 dígitos, que se utiliza junto con los dos anteriores para dar mayor
seguridad a las transacciones realizadas con tecleo de tarjeta. Es el valor numérico que figura en el
reverso de las tarjetas y se suele utilizar en la compra por internet.
NumOpOrg: Es un campo que se usa únicamente en las devoluciones para ligarlas con una operación
de venta previa. Aquí se debe enviar el número de operación asignado por el banco a la venta original.
Dependiendo del banco con el que se trabaje, puede ser necesario utilizar este campo para poder
hacer devoluciones.
FechaOpOrg: Como el anterior, este campo solo se utiliza en devoluciones. Aquí se indica la fecha de
la venta original. El formato es ddmmaa. Y del mismo modo que el anterior, solo se utiliza con
determinados bancos.
12/05/2015
Protocolo de Conexión C le ar O N E versión 1.5
Página 23 (41)
Pasarela de Pagos – Payment Gateway
Avda. La Industria 4  NATEA Business Park  28108 ALCOBENDAS (Madrid)  902-305 308 – 91-490 01 50
Operadora: Un campo numérico para identificar a las operadoras telefónicas. Se utiliza en las recargas
telefónicas y los valores permitidos a fecha de hoy son:
1-Movistar
2-Vodafone
3-Orange
4-Yoigo
5-Euskaltel
6-Lebara Móviles
7-Carrefour
8-Masmovil
9-E-Plus
10-Llamaya
11-Simyo
12-Blau
13-DIGI.mobil
14-Lycamobile
15-Orbitel Móvil
16-Ortel
17-Tuenti
18-GT Mobile
19-hits mobile
20-happy móvil
21-JAZZTEL
22-MovilDIA
Telefono: Número de teléfono al que se hace la recarga. El formato del campo es el de los números de
teléfono de los móviles españoles: 9 dígitos, empezando siempre por 6 ó 7.
NumOpCO: Campo numérico en el rango 1-999999999. Se utiliza en las transacciones de reserva y las
anulaciones, para hacer referencia a la transacción original. Este es el número de operación que asigna
ClearONE a cada transacción que procesa.
NumOpBco: Campo numérico en el rango 1-9999999. Se utiliza en las anulaciones de venta o
devolución para identificar la transacción que se quiere anular. Es el número de operación que asigna
el banco o centro autorizador a cada transacción que procesa.
CodAut: Campo de texto entre 1 y 6 caracteres (ojo: puede incluir el carácter espacio, ASCII 32). Se
utiliza en las anulaciones de venta o devolución para identificar la transacción que se quiere anular. Es
el código de autorización que asigna el banco o centro autorizador a cada transacción que procesa y
acepta.
LocalRef: Campo de texto de hasta 20 caracteres (ojo: puede incluir el carácter espacio, ASCII 32). Se
utiliza en las anulaciones de recargas para identificar la transacción que se quiere anular. Es el
identificador de transacción que asigna el centro autorizador a cada transacción que procesa.
OperatorRef: Campo de texto de hasta 20 caracteres (ojo: puede incluir el carácter espacio, ASCII 32).
Se utiliza en las anulaciones de recargas para identificar la transacción que se quiere anular. Es el
código de autorización que asigna el centro autorizador a cada transacción que procesa y acepta.
FechaConsulta: Campo numérico en formato aaaammdd. Se utiliza en las consultas de totales para
indicar la fecha de la consulta, pudiendo así obtener los totales de días anteriores ya cerrados. Si no se
utiliza, se entiende que la consulta es para el día actual. Opcionalmente se puede usar también en el
detalle de operaciones para obtener los datos de días anteriores.
Ticket: Se usa en el detalle de operaciones para obtener solo aquellas que en la trama de petición
tenían ese valor en el campo del mismo nombre. Al igual que ‘FechaConsulta’ es un campo opcional,
pero en este caso no se puede usar de forma individual: si se quiere utilizar, es obligatorio utilizar
también ‘FechaConsulta’.
12/05/2015
Protocolo de Conexión C le ar O N E versión 1.5
Página 24 (41)
Pasarela de Pagos – Payment Gateway
Avda. La Industria 4  NATEA Business Park  28108 ALCOBENDAS (Madrid)  902-305 308 – 91-490 01 50
Idioma: Es un campo numérico que identifica el idioma a utilizar por el Pin-Pad. La lista de idiomas
disponibles actualmente es:
0-Español
1-Ingles
2-Francés
3-Alemán
4-Catalán
5-Valenciano
6-Euskera
7-Gallego
8-Portugués
9-Italiano
10-Español (México)
NomFich: Campo texto de hasta 100 caracteres. Se usa en la captura de firma, es el nombre del
fichero de salida que contendrá la firma capturada por el Pin-Pad.
TextoLibre: Campo texto de hasta 120 caracteres. Se usa en la captura de firma, es el texto que el PinPad mostrará en su pantalla al solicitar la firma del cliente. El texto se muestra en 4 líneas de 30
caracteres cada una de ellas.
A continuación mostramos algunas tramas de ejemplo:
[STX]9999;100;1;LUIS;P-1234;1;1520;;;;;;;[ETX]
Esta trama es una petición del cliente 9999, tienda 100, TPV 1, que está utilizando el operario ‘LUIS’ y
está generando el ticket ‘P-1234’. En la trama se pide autorización para una venta de 15,20 € sin
especificar ni el banco al que se debe mandar, ni los datos de la tarjeta. Ante esta petición, el servicio
activará el Pin-Pad para que el cliente introduzca su tarjeta y procesará la transacción enviándola al
banco que tenga configurado por defecto el punto de venta indicado.
La siguiente trama es una petición para realizar una recarga telefónica de 20,00 € al teléfono
666666666, de la operadora Vodafone (2). En este caso se está generando el ticket 000001 pero no se
indica el código o nombre de operario, lo cual es perfectamente válido.
[STX]9999;100;1;;000001;3;2000;2;666666666[ETX]
En la siguiente trama, se solicita la anulación de una devolución. La devolución era de 15,30 €, tenía el
número de operación 123456 para ClearONE, el número de operación 654321 para el centro
autorizador y el código de autorización ‘1F349D’
[STX]9999;100;1;;;12;1530;123456;654321;1F349D[ETX]
Por último, una trama para consultar los totales contabilizados a nivel de tienda el día 2 de Enero de
2015, podría ser la siguiente:
[STX]9999;100;1;;;22;20150102[ETX]
12/05/2015
Protocolo de Conexión C le ar O N E versión 1.5
Página 25 (41)
Pasarela de Pagos – Payment Gateway
Avda. La Industria 4  NATEA Business Park  28108 ALCOBENDAS (Madrid)  902-305 308 – 91-490 01 50
5.2. Tramas de respuesta
Las tramas de respuesta tienen una cabecera común con dos campos y luego una serie de campos que
dependen del tipo de trama. El formato de estas tramas es:
[STX]CodResult;Texto[DatosAdicionales][ETX]
CodResult: Es el resultado de la transacción procesada. Es un campo numérico que puede tener signo.
El valor 0 siempre indica operación aceptada o procesada correctamente. Cualquier otro valor indica
que la operación no se ha podido realizar.
Texto: Contiene un literal que explica el resultado de la transacción. Es un campo que el programa de
gestión del punto de venta debería mostrar tal cual al operario para que éste pueda ver el motivo por
el que la operación no se ha realizado.
Y en función del tipo de transacción en proceso, los datos adicionales son unos u otros. A continuación
se detallan los campos para cada tipo de operación:
Venta (tipo 1, no TNA ni DCC), Devolución, Reserva de fondos, Confirmación de reserva y anulación de
todas ellas (con la configuración contactless activada, [CTLSRESP] a 1):
;Ticket;NumOpCO;FechaContable;TipoOp;Importe;Moneda;AID;LBL;BIN;
Tarjeta(enmascarada);TxtMarca;Titular;Pais;Emisor;Red;TipoTarjeta;TaxFree;Comercio;
Terminal;IdSesion;TxtBanco;ARC;NumOpBco;CodAut;NumRefTP;TipoLectura;CVM
Si no se activa la configuración contactless, los campos son los mismos que en versiones anteriores:
[;Ticket];NumOpCO;TipoOp;Importe;AID;LBL[;BIN];Tarjeta(enmascarada);
TxtMarca;Titular[;TaxFree];Comercio;Terminal;TxtBanco;ARC;NumOpBco;
CodAut;NumRefTP;PedirFirma
Recarga y Anulación de recarga:
[;Ticket];NumOpCO;TipoOp;Operadora;Telefono;Importe;
Comercio;Terminal;NumOpCO*);LocalRef;OperatorRef
* NumOpCO aparece dos veces en la trama, está así por compatibilidad con versiones anteriores.
Consultas de totales y Fines de día:
[;Ticket];NumOpCO;TipoOp;
NumDesgloses[Desglose-1...Desglose-N];NumRecargas;ImpRecargas
y el formato de cada desglose es:
;NomBanco;NumVentas;ImpVentas;NumDevols;ImpDevols
Detalle de operaciones: se explica en el punto 5.4
12/05/2015
Protocolo de Conexión C le ar O N E versión 1.5
Página 26 (41)
Pasarela de Pagos – Payment Gateway
Avda. La Industria 4  NATEA Business Park  28108 ALCOBENDAS (Madrid)  902-305 308 – 91-490 01 50
Última operación: el mismo formato que la venta o la recarga, dependiendo de cuál haya sido la
última transacción realizada
Lectura de tarjeta privada:
[;Ticket];Pista2
Venta TNA: se explica en el punto 5.4.
Estado del sistema: no tiene datos adicionales.
Venta DCC: se explica en el punto 5.4.
Selección de idioma: no tiene datos adicionales.
Captura de firma: no tiene datos adicionales.
Hay que tener en cuenta que los campos de datos adicionales solo aparecen con total seguridad en las
tramas de respuesta cuando la transacción se acepta, es decir, cuando CodResult es 0. Si la
transacción se ha denegado, los datos adicionales pueden aparecer o no en la trama según el motivo
por el que se haya denegado la operación. La aplicación de gestión del punto de venta debe tener esto
en cuenta, para aceptar como válidas las respuestas en las que no hay ningún dato adicional,
independientemente del tipo de transacción en proceso.
A continuación explicamos el formato de cada uno de los campos anteriores
Ticket: Este campo aparece en la trama de respuesta cuando está activada la configuración contactless
o cuando se ha activado la sección [NUMTICKRESP] en el fichero cfg, como ya se ha explicado
anteriormente. El servicio de ClearONE devuelve en este campo el valor recibido en la trama de
petición, para que el programa de gestión del punto de venta pueda ligar la respuesta con la petición
original.
NumOpCO: Campo numérico en el rango 1-999999999. Este campo es el identificador único que
ClearONE asigna a la transacción procesada. Con este valor se puede identificar de forma única la
transacción en las bases de datos de ClearONE para posteriores consultas, anulaciones, etc.
FechaContable: Es la fecha que asigna Clea rONE a la transacción procesada, teniendo en cuenta el
horario de cierre de cada cliente, las operaciones de Fin de día y todo lo que se ha explicado en puntos
anteriores. Se envía en formado AAAA/MM/DD
TipoOp: Campo de texto que indica el tipo de operación procesada (VENTA, DEVOLUCION, RECARGA,
etc.)
Importe: Campo numérico en el rango 1-999999999. No lleva signo ni separador decimal y las dos
últimas cifras se entienden como decimales. Así, el valor 1 significa 0,01€, el valor 100 significa 1,00€ y
el máximo posible, 999999999, equivale a 9.999.999,99 €. Es el importe autorizado en la transacción.
12/05/2015
Protocolo de Conexión C le ar O N E versión 1.5
Página 27 (41)
Pasarela de Pagos – Payment Gateway
Avda. La Industria 4  NATEA Business Park  28108 ALCOBENDAS (Madrid)  902-305 308 – 91-490 01 50
Moneda: Campo de texto de 3 caracteres que indica la moneda en la que se ha realizado la
transacción. Tendrá siempre el valor ‘EUR’ salvo en los casos en que se aplica el DCC, descrito más
adelante en este mismo documento.
AID: Campo de texto que identifica la aplicación de la tarjeta chip con la que se ha realizado la
transacción. Tiene una longitud máxima de 32 caracteres.
LBL: Campo de texto que contiene un nombre descriptivo asociado al AID anterior. Tiene una longitud
máxima de 16 caracteres.
BIN: Este campo aparece en la trama de respuesta cuando está activada la configuración contactless o
cuando se ha activado la sección [BINRESP] en el fichero cfg. Es un campo numérico de 6 dígitos que
contiene el BIN de la tarjeta utilizada en la transacción. A partir de esta información se puede
identificar el banco emisor de la tarjeta, su nacionalidad y algunos datos más que pueden resultar de
utilidad para el comercio.
Tarjeta(enmascarada): Campo de texto en el que aparece el número de la tarjeta del cliente
formateado tal como exigen los bancos por motivos de seguridad, ocultando todos los dígitos con el
carácter ‘*’ salvo los 4 últimos. Puede tener hasta 19 caracteres, ya que esa es la máxima longitud
válida para una tarjeta de pago.
TxtMarca: Campo de texto que contiene la marca de la tarjeta utilizada en la transacción (Visa,
Mastercard, Amex, etc.). Puede tener hasta 30 caracteres.
Titular: Campo de texto de hasta 26 caracteres. Es el nombre del titular de la tarjeta.
Pais: Campo numérico de 3 dígitos que indica el país emisor de la tarjeta. La codificación de este
campo se corresponde con el estándar ISO 3166, que asigna un código numérico de tres dígitos a cada
país.
Emisor: Campo numérico de 4 dígitos que identifica el banco emisor de la tarjeta (cuando es
conocido). Para las tarjetas emitidas por bancos nacionales, utilizamos la misma codificación que se ha
descrito antes para el campo ‘Banco’ de las tramas de petición (el registro oficial de entidades del
banco de España). Para el resto de tarjetas, se manda siempre el valor 9999 que indica “emisor
desconocido”.
Red: Campo numérico de un dígito que identifica la red a la que pertenece la tarjeta, de acuerdo a la
codificación establecida en la siguiente tabla:
1-Servired
2-4B
3-Euro 6000
12/05/2015
Protocolo de Conexión C le ar O N E versión 1.5
Página 28 (41)
Pasarela de Pagos – Payment Gateway
Avda. La Industria 4  NATEA Business Park  28108 ALCOBENDAS (Madrid)  902-305 308 – 91-490 01 50
TipoTarjeta: Campo de texto de 2 caracteres que indica el tipo de la tarjeta utilizada en la transacción.
El primer carácter indica si la tarjeta es de crédito o de débito. El segundo dice si se trata de una
tarjeta de empresa o de particular. Los valores que utilizamos para ambos datos son:
C-Tarjeta de crédito
D-Tarjeta de débito
O-Otras
E- Tarjeta de Empresa
C- Consumo (tarjeta de un particular)
O- Otras
TaxFree: Campo numérico que puede tomar los valores 0 o 1. Cuando está a 1 indica que la tarjeta
utilizada en la transacción es de algún país al que se puede hacer TaxFree. Esta operativa se describe
en detalle en el documento “Anexo Tax Free”.
Comercio: Campo de texto de hasta 15 caracteres. Es el número de comercio que el centro
autorizador asigna al establecimiento o comercio en el que se realiza la transacción.
Terminal: Campo de texto de hasta 11 caracteres. Junto con el número de comercio anterior,
identifica el punto de venta de cara al banco o centro autorizador.
IdSesion: Campo numérico de 9 dígitos que identifica la sesión contable en la que el banco ha
contabilizado esta transacción.
TxtBanco: Campo de texto de hasta 30 caracteres. Es el nombre del banco a través del que se ha
procesado la transacción.
ARC: Campo de texto de 2 caracteres. Es el resultado de la transacción EMV.
NumOpBco: Campo numérico en el rango 1-9999999. Este número lo asigna el centro autorizador
para identificar esta transacción.
CodAut: Campo de texto entre 1 y 6 caracteres (ojo: puede incluir el carácter espacio, ASCII 32). Es el
código de autorización que asigna el banco o centro autorizador a la transacción cuando la acepta.
NumRefTP: Campo numérico en el rango 1-9999999. Este número lo asigna el centro autorizador para
identificar esta transacción. Se usa en Tarjetas Privadas.
TipoLectura: Campo numérico de un dígito que indica la forma en que el Pin-Pad ha leído la tarjeta.
Los valores posibles se indican en la siguiente tabla:
1-Chip
2-Banda magnética
3-Tecleo manual
4-Tarjeta Contactless
5-Móvil NFC
CVM: Campo numérico de un dígito que indica la forma en que se ha verificado la identidad del titular
de la tarjeta. Los valores posibles se indican en la siguiente tabla:
1-Operación con PIN, firma no necesaria
2-Operación contactless, firma no necesaria
3-Firma capturada por el Pin-Pad
4-Hay que pedir firma en el ticket
12/05/2015
Protocolo de Conexión C le ar O N E versión 1.5
Página 29 (41)
Pasarela de Pagos – Payment Gateway
Avda. La Industria 4  NATEA Business Park  28108 ALCOBENDAS (Madrid)  902-305 308 – 91-490 01 50
PedirFirma: Campo numérico que puede tomar los valores 0 o 1. El 1 indica que hay que pedir la firma
del titular de la tarjeta. El 0 indica que no es necesario, normalmente porque la operación se ha
realizado con PIN.
Operadora: Campo de texto de hasta 20 caracteres. Contiene el nombre de la operadora con la que se
ha gestionado la recarga telefónica
Telefono: Número de teléfono que se ha recargado. El formato del campo es el de los números de
teléfono españoles: 9 dígitos, empezando siempre por 6 ó 7.
LocalRef: Campo de texto de hasta 20 caracteres. Es el identificador de transacción que asigna el
centro autorizador a cada transacción que procesa.
OperatorRef: Campo de texto de hasta 20 caracteres. Es el código de autorización que asigna el centro
autorizador a la transacción cuando la acepta.
NumDesgloses: Campo numérico en el rango 0-9999. Es un contador que indica el número de
desgloses que vienen a continuación en la trama.
NomBanco: Campo de texto de hasta 30 caracteres. Es el nombre del banco al que pertenecen los
totales de este desglose.
NumVentas: Campo numérico en el rango 0-999999999. Es el número de ventas aceptadas por el
banco indicado en el campo anterior.
ImpVentas: Campo numérico de hasta 18 dígitos. Es el importe sumado de todas las ventas aceptadas
por el banco.
NumDevols: Campo numérico en el rango 0-999999999. Es el número de devoluciones aceptadas por
el banco.
ImpDevols: Campo numérico de hasta 18 dígitos. Es el importe sumado de todas las devoluciones
aceptadas por el banco.
NumRecargas: Campo numérico en el rango 0-999999999. Es el número de recargas telefónicas
aceptadas por el centro autorizador.
ImpRecargas: Campo numérico de hasta 18 dígitos. Es el importe sumado de todas las recargas
telefónicas aceptadas por el centro autorizador.
Pista2: Datos obtenidos por el lector de banda magnética al utilizar la transacción de lectura de tarjeta
privada.
12/05/2015
Protocolo de Conexión C le ar O N E versión 1.5
Página 30 (41)
Pasarela de Pagos – Payment Gateway
Avda. La Industria 4  NATEA Business Park  28108 ALCOBENDAS (Madrid)  902-305 308 – 91-490 01 50
A continuación mostramos algunas tramas de ejemplo:
[STX]-301;Error de sesion con el servidor[ETX]
La trama anterior es una respuesta válida del servicio, en la que se indica que no ha podido procesar la
transacción solicitada porque no ha podido establecer una sesión de comunicaciones con el servidor
ClearONE.
[STX]0;OPERACION ACEPTADA;Tick001;2889041;2015/03/16;VENTA;123;EUR;
A0000000031010;Visa Credit;459988;************3006;VISA;LOPEZ PEREZ/JESUS;
724;0182;1;DC;0;123456789;00000001;150316001;CaixaBank;00;583246;747663;0;1;1[ETX]
La trama anterior es la respuesta a una petición de venta de 1,23 € para el ticket ‘Tick001’. En este
caso, se ha aceptado la transacción, asignándole ClearONE la fecha contable 2015/03/16 y el
número de transacción 2889041. El banco por su parte ha contabilizado la transacción en la sesión
contable 150316001 con número de operación 583246 y código de autorización 747663. La tarjeta
que se ha utilizado era española (724), emitida por BBVA (0182) y el valor ‘DC’ indica que era de débito
y de un particular. El 1;1 al final de la trama indica que es una tarjeta chip y que el titular ha tecleado
su PIN.
La siguiente trama es la respuesta que habría generado el servicio para la misma petición si no tuviera
activado el [CTLSRESP].
[STX]0;OPERACION ACEPTADA;2889041;VENTA;123;A0000000031010;
Visa Credit;************3006;VISA;LOPEZ PEREZ/JESUS;
123456789;00000001;CaixaBank;00;583246;747663;0;1[ETX]
Y la siguiente trama es la respuesta a una consulta de totales a nivel de tienda. En este caso, el
establecimiento ha trabajado con dos bancos, BBVA y CaixaBank. Con BBVA se han realizado 10 ventas
que suman un total de 230,45€. Con CaixaBank se han procesado 5 ventas por un total de 180,00€ y 1
devolución de 15,90€. Además, se han realizado 3 recargas telefónicas que suman un total de 40,00€.
[STX]0;OPERACION ACEPTADA;123456789;TOTALES TIENDA;2;
BBVA;10;23045;0;0;CaixaBank;5;18000;1;1590;3;4000[ETX]
5.3. Trama de ACK
El ACK es un mensaje que la aplicación de gestión del punto de venta manda al servicio para
confirmarle que ha recibido la respuesta. La misión de esta trama es controlar los errores que pueden
darse en cualquier comunicación entre dos procesos independientes.
Si el servicio procesa una transacción y manda la respuesta al programa de gestión, pero no recibe la
trama de confirmación, se entiende que la respuesta no ha llegado correctamente al programa de
gestión. Esto puede ocurrir si el programa de gestión se bloquea o corta la conexión por cualquier
motivo. Si la operación procesada es venta, devolución, reserva de fondos o recarga y el centro
autorizador la ha aceptado, el servicio generará una anulación automática, ya que la transacción no se
ha podido completar puesto que el programa de gestión no ha recibido correctamente la información.
12/05/2015
Protocolo de Conexión C le ar O N E versión 1.5
Página 31 (41)
Pasarela de Pagos – Payment Gateway
Avda. La Industria 4  NATEA Business Park  28108 ALCOBENDAS (Madrid)  902-305 308 – 91-490 01 50
El formato de la trama es fijo, su única utilidad es garantizar que la conexión sigue abierta y el proceso
de gestión del punto de venta ha recibido la respuesta. La trama de ACK es siempre igual:
[STX]ACK[ETX]
Siendo ACK tres caracteres ASCII, la ‘A’, la ‘C’ y la ‘K’.
5.4. Diálogos extendidos: detalle de operaciones, venta TNA y venta DCC
Como ya se ha comentado antes, hay transacciones en las que el diálogo estándar (petición-respuestaack) no es suficiente. Una de ellas es la 41-Detalle de operaciones. En esta transacción, el programa de
gestión del punto de venta solicita al servicio de ClearONE un listado con todas las operaciones
procesadas el día actual o en una fecha concreta. Para devolver esa información, una sola trama de
respuesta del servicio es insuficiente. Lo que se hace en este caso es enviar una trama por cada
transacción esperando un ACK del programa de gestión antes de enviar la siguiente. El diálogo queda
por tanto así:
---> [STX]Cliente;Tienda;Tpv;Operario;Ticket;41…[ETX]
<--- [STX]aaaa/mm/ddhh:mm:ss[DatosAdicionales][ETX]
---> [STX]ACK[ETX]
<--- [STX]aaaa/mm/ddhh:mm:ss[DatosAdicionales][ETX]
---> [STX]ACK[ETX]
.
.
.
<--- [STX]aaaa/mm/ddhh:mm:ss[DatosAdicionales][ETX]
---> [STX]ACK[ETX]
<--- [STX][ETX]
---> [STX]ACK[ETX]
Las tramas de datos que manda el servicio son iguales a las que mandó al aceptar la operación original
(descritas en el punto 5.2), pero sustituyendo los campos iniciales “CodResult” y “Texto” por un campo
con la fecha y hora en que se procesó la transacción.
Como el detalle solo devuelve los datos de operaciones aceptadas, los campos “CodResult” y “Texto”
no aportan nada (siempre serían “0;Operación aceptada”). Por ese motivo los eliminamos y ponemos
en su lugar la fecha y hora que es un dato que sí aporta información útil.
El servicio siempre manda una última trama en la que no hay datos, solo [STX][ETX]. Esa trama es la
que indica que ya se han enviado todas las transacciones y no hay más datos por enviar. Al recibir esa
trama, el programa de gestión debe confirmarla con el correspondiente ACK y cerrar el socket, porque
el diálogo ya ha concluido.
En caso de que el listado de transacciones esté vacío (no hay ninguna operación), la primera trama de
respuesta del servicio será [STX][ETX], indicando así que no hay transacciones que cumplan con los
datos de la consulta.
12/05/2015
Protocolo de Conexión C le ar O N E versión 1.5
Página 32 (41)
Pasarela de Pagos – Payment Gateway
Avda. La Industria 4  NATEA Business Park  28108 ALCOBENDAS (Madrid)  902-305 308 – 91-490 01 50
El segundo caso en el que se utiliza un diálogo extendido es en la venta TNA, que como ya hemos
descrito anteriormente se utiliza en terminales no atendidos y también en los casos en los que el
importe a cobrar no se puede determinar hasta que se ha leído la tarjeta. El diálogo aquí es el
siguiente:
---> [STX]Cliente;Tienda;Tpv;Operario;Ticket;44[ETX]
<--- [STX]CodResult;Texto[;BIN][ETX]
---> [STX]Importe;Banco;PagoAplazado[ETX]
<--- [STX]CodResult;Texto[DatosAdicionales][ETX]
---> [STX]ACK[ETX]
La petición inicial del programa de gestión al servicio ya se ha descrito en puntos anteriores. La
respuesta del servicio a esa petición es una trama con el formato estándar: un código de respuesta, un
texto asociado y unos datos adicionales. Si ‘CodResult’ es 0, la transacción se está procesando
correctamente: el servicio ha activado el Pin-Pad, el cliente ha introducido su tarjeta y en el campo BIN
se informa al programa de gestión de la tarjeta leída. Lo que debe hacer el programa de gestión es
enviar la segunda trama de petición para informar al servicio de los datos necesarios para completar la
venta (Importe, Banco y PagoAplazado, campos ya descritos en el punto 5.1). A partir de aquí el
diálogo es idéntico al utilizado en la venta normal. La respuesta del servicio es la misma que la descrita
en el punto 5.2 para la venta (tipo 1) y el programa de gestión debe aceptar esa respuesta con el
correspondiente ACK para confirmar la transacción.
Si el campo ‘CodResult’ en la primera respuesta del servicio es distinto de 0, la tarjeta no se ha podido
leer y la transacción no se puede llevar a cabo, por lo que no tiene sentido continuar el proceso. En
ese caso, el campo BIN no está presente en la respuesta y el servicio no espera la segunda trama de
petición del programa de gestión sino el ACK final. El dialogo quedaría por tanto reducido a un diálogo
estándar de tres tramas: petición-respuesta_error-ack.
El tercer y último caso en el que se utiliza un diálogo extendido es en la venta DCC. Igual que en la
venta TNA se utiliza un diálogo con 5 tramas que puede quedar reducido a tres en ciertas condiciones.
Estas son las tramas utilizadas.
---> [STX]Cliente;Tienda;Tpv;Operario;Ticket;46;Importe;Banco;PagoAplazado[ETX]
<--- [STX]198;INFO DCC;DatosAdicionalesDCC[ETX]
---> [STX]ACK_DCC[ETX]
<--- [STX]CodResult;Texto[;Moneda][DatosAdicionales][ETX]
---> [STX]ACK[ETX]
La petición inicial del programa de gestión al servicio ya se ha descrito en puntos anteriores. La
respuesta a esa petición será normalmente una trama con información DCC en la que el servicio
informa al programa de gestión que la operación se puede realizar en divisa. Si es necesario, el
programa de gestión emitirá el ticket informativo DCC para entregar al cliente y a continuación enviará
la trama ‘ACK_DCC’ al servicio para que continúe el proceso. Una vez completada la transacción, el
servicio envía la trama de respuesta final, que en caso de estar activada la configuración contactless
será idéntica a la descrita en el punto 5.2 para la venta (tipo 1). Si no es así (no se ha activado
[CTLSRESP]), la respuesta generada difiere de la descrita en el punto 5.2 únicamente en el campo
‘Moneda’, que se añade en la posición indicada arriba porque la trama descrita en el punto 5.2 para
esta configuración no incluye dicho campo.
12/05/2015
Protocolo de Conexión C le ar O N E versión 1.5
Página 33 (41)
Pasarela de Pagos – Payment Gateway
Avda. La Industria 4  NATEA Business Park  28108 ALCOBENDAS (Madrid)  902-305 308 – 91-490 01 50
También puede ocurrir que la tarjeta del cliente no admita la operativa DCC y en ese caso no hay
información que enviar al programa de gestión. En esa situación el dialogo se reduce a tres tramas
como el de la venta normal. El programa de gestión del punto de venta puede diferenciar estos dos
casos por el código de respuesta. Si envía la petición y recibe una respuesta con código 198, se trata
de una trama de información DCC y el dialogo es de 5 tramas. Si la respuesta que recibe tras enviar la
petición tiene cualquier otro valor distinto a 198, no se ha podido activar el proceso DCC y se trata de
un diálogo de 3 tramas.
La trama de información DCC tiene siempre el valor 198 seguido por el texto “INFO DCC” y a
continuación unos datos adicionales con la información DCC. Estos datos adicionales siguen la
codificación estándar de todas las tramas, siendo una serie de campos separados por ‘;’:
;Importe;ImporteFC;ExchangeRate;MarkUp;Commission;EntidadGestora
Todos ellos deben aparecer en el ticket informativo que se entrega al cliente cuando el Pin-Pad no
tiene capacidad para mostrar toda la información necesaria. Y también deben estar en el ticket final
que se entrega al cliente al completar el pago cuando éste ha seleccionado su moneda en lugar del
Euro, aplicando por tanto el DCC. En el próximo punto se pueden ver algunos tickets de ejemplo y a
continuación mostramos también una trama de ejemplo en la que se puede ver cómo envía el servicio
la información:
[STX]198;INFO DCC;EUR: 12,90;USD: 17,80;1,00 USD = 0,81557 EUR;3,00 %;0,00 %;CaixaBank[ETX]
La trama ACK_DCC es como el ACK normal pero añadiendo los 4 caracteres ASCII que completan el
texto “ACK_DCC”: el carácter subrayado, la letra ‘D’, la letra ‘C’ y de nuevo la letra ‘C’.
Comentar por último que en la trama de respuesta final, el campo ‘Moneda’ (cuyo formato ya se ha
descrito anteriormente) indica al programa de gestión cuál ha sido la elección del cliente. El texto
‘EUR’ indica que el pago se ha hecho en euros y por tanto no se ha aplicado DCC. Cualquier otro valor
en ese campo indica que se ha pagado en divisa y por tanto el ticket que se emite para el cliente debe
incluir toda la información relativa al proceso DCC.
6. Formato de los Tickets a Generar
En las transacciones de Venta, Devolución, Reserva/Confirmación y Recarga telefónica, el programa
de gestión del punto de venta debe generar un ticket para el cliente. Dicho ticket debe incluir la
información que el servicio envía en la trama de respuesta.
Excluyendo los campos ‘CodResult’, ‘Texto’ y algunos más que son simplemente información de
control o datos estadísticos para la aplicación, la mayor parte de los campos que el servicio manda en
la trama de respuesta deberían aparecer en el ticket que se entrega al cliente.
En el caso de las recargas telefónicas, no hay un control demasiado estricto. Pero en las operaciones
TEF, es extremadamente importante generar el ticket con toda la información necesaria. El formato
del ticket (la posición en la que aparece cada campo) no es importante, lo realmente importante es
que todos los datos necesarios aparezcan en él. De ello depende que ante una reclamación, la
operación se considere válida y el banco o la marca emisora de la tarjeta asuman su responsabilidad.
12/05/2015
Protocolo de Conexión C le ar O N E versión 1.5
Página 34 (41)
Pasarela de Pagos – Payment Gateway
Avda. La Industria 4  NATEA Business Park  28108 ALCOBENDAS (Madrid)  902-305 308 – 91-490 01 50
A continuación mostramos varios tickets de ejemplo que contemplan las distintas operativas que el
servicio puede utilizar. En todos los casos vamos a mostrar siempre dos tickets: la copia para el cliente
y la copia para el establecimiento. La copia del cliente siempre se debe generar, mientras que la del
establecimiento solo es necesaria cuando el cliente tiene que firmar y el Pin-Pad utilizado no tiene
captura de firma.
El primer ejemplo es el caso más habitual: una venta normal realizada con una tarjeta chip. En este
caso, el ticket para el cliente tiene en primer lugar los datos de la compra (artículos vendidos, importe,
etc.) y a continuación los datos de la operación de pago. En el ticket para el establecimiento solo
mostramos los datos de la operación de pago y el texto “Operación con PIN, firma no necesaria”, ya
que la operación se ha validado con PIN.
12/05/2015
Protocolo de Conexión C le ar O N E versión 1.5
Página 35 (41)
Pasarela de Pagos – Payment Gateway
Avda. La Industria 4  NATEA Business Park  28108 ALCOBENDAS (Madrid)  902-305 308 – 91-490 01 50
El segundo ejemplo es una operación con tarjeta contactless en la que el importe es inferior al “CVM
limit” y por ello el Pin-Pad no solicita al usuario que introduzca el PIN y tampoco debe pedírsele firma.
Por eso el texto que aparece es “Operación contactless, firma no necesaria”. También es importante
notar que en este ticket aparece el logo contactless. Esto es así porque así lo piden expresamente las
marcas internacionales (Visa, MasterCard, etc.): toda operación que se haga con una tarjeta de este
tipo debe llevar el logo correspondiente en el ticket. Por ese motivo se ha añadido el campo
“TipoLectura” en las nuevas tramas de respuesta del servicio, para que el programa de gestión del TPV
sepa si se ha utilizado una tarjeta de este tipo y en ese caso pueda incluir el logo correspondiente en el
ticket. De acuerdo a lo que se ha descrito en puntos anteriores, el logo debería aparecer siempre que
el campo “TipoLectura” tenga el valor 4 (tarjeta contactless) o 5 (móvil NFC)
12/05/2015
Protocolo de Conexión C le ar O N E versión 1.5
Página 36 (41)
Pasarela de Pagos – Payment Gateway
Avda. La Industria 4  NATEA Business Park  28108 ALCOBENDAS (Madrid)  902-305 308 – 91-490 01 50
El tercer ejemplo es un ticket pagado también con tarjeta chip pero en el que el cliente no ha tecleado
su PIN, bien porque tiene configurada su tarjeta así o bien porque ha realizado un “bypass” dándole al
OK varias veces sin teclear su PIN. En este caso, la respuesta del servicio incluirá los valores apropiados
para indicar al programa de gestión del TPV que debe pedir la firma del cliente (si no se ha capturado
ya en el propio Pin-Pad).
12/05/2015
Protocolo de Conexión C le ar O N E versión 1.5
Página 37 (41)
Pasarela de Pagos – Payment Gateway
Avda. La Industria 4  NATEA Business Park  28108 ALCOBENDAS (Madrid)  902-305 308 – 91-490 01 50
Y a continuación mostramos otro ticket en el que se ha utilizado un tipo especial de tarjeta contactless
que funciona igual que una tarjeta de banda magnética. La tarjeta se identifica como contactless y por
eso aparece el logo correspondiente en el ticket. Pero al ser equivalente a una tarjeta de banda, no
hay campos AID, LBL ni ARC y tampoco aparece el nombre del titular porque la tarjeta no se lo ha
enviado al terminal.
12/05/2015
Protocolo de Conexión C le ar O N E versión 1.5
Página 38 (41)
Pasarela de Pagos – Payment Gateway
Avda. La Industria 4  NATEA Business Park  28108 ALCOBENDAS (Madrid)  902-305 308 – 91-490 01 50
Por último, mostramos también los tickets generados en un par de operaciones DCC. La primera se ha
hecho con una tarjeta visa de banda magnética asociada a una cuenta en Dólares. La segunda es una
MasterCard con chip ligada a una cuenta en Libras. En ambos casos hay un primer ticket informativo
que siempre tiene el mismo formato:
Los datos de ese ticket salen de la primera trama de respuesta que el servicio manda al programa de
gestión del punto de venta en la operativa DCC, tal como se ha descrito en el punto 5.4. Los textos en
inglés deben aparecer exactamente igual, no se pueden cambiar porque son los que las marcas (Visa y
MasterCard) han aprobado para esta operativa.
Si la operación se realiza finalmente en euros, los tickets a generar son los que ya hemos visto antes.
Al no aplicarse el proceso DCC no hay nada más que mostrar en el ticket del cliente o del comercio.
Pero si la operación se realiza en divisa, entonces los tickets para cliente y establecimiento deben
tener el formato que mostramos a continuación.
12/05/2015
Protocolo de Conexión C le ar O N E versión 1.5
Página 39 (41)
Pasarela de Pagos – Payment Gateway
Avda. La Industria 4  NATEA Business Park  28108 ALCOBENDAS (Madrid)  902-305 308 – 91-490 01 50
En el ticket que se lleva el cliente se debe mostrar el importe que finalmente ha pagado en su
moneda, el equivalente en euros y la misma información del cambio que se ha mostrado en el ticket
informativo anterior. Además deben aparecer los textos ‘Disclosure’ que como se puede ver son
distintos según el tipo de tarjeta (Visa o Mastercard).
12/05/2015
Protocolo de Conexión C le ar O N E versión 1.5
Página 40 (41)
Pasarela de Pagos – Payment Gateway
Avda. La Industria 4  NATEA Business Park  28108 ALCOBENDAS (Madrid)  902-305 308 – 91-490 01 50
El ticket que se queda el comercio incluye la misma información que el del cliente, pero en este caso
incluye un cuadro de firma que siempre debe estar presente, aunque la venta se haya validado con
PIN. Esa firma es la que garantiza a Visa y MasterCard que el cliente acepta los ‘Disclaimer’ y textos
legales que aparecen en el ticket.
12/05/2015
Protocolo de Conexión C le ar O N E versión 1.5
Página 41 (41)
Descargar