11.- Manejo de reversos en terminales por integración API

Un reverso es una transacción aprobada que se anula justo antes de entregar la respuesta en la terminal debido a un corte en la comunicación entre el servidor de NetPay y la terminal que provoca que exista incongruencia de estatus. Es decir el servidor de NetPay logra aprobar la transacción, pero la terminal no logra enterarse de que la transacción aprobó por el corte de comunicación por lo que la terminal devolverá un Error de Comunicación.

🚧

A nivel productivo, contarán con un portal web de NetPay que visualiza los estatus de las transacciones casi en tiempo real, sin embargo es muy importante siempre dar prioridad a lo que indica la terminal en pantalla y ticket impreso ya que las transacciones con tarjeta presente dependen mucho del hardware donde se realizó la operación. Esto conlleva a que el consumo de APIs / plataformas web de NetPay como Manager y otras alternativas ajenas a la terminal, pueden presentar incongruencias de estatus en reversos por la naturaleza de la situación que corta la comunicación de una transacción e impide que finalice con éxito.

¿Cuáles son las causas que provocan el reverso de una transacción en la terminal de NetPay?

A continuación, presentamos las formas que puede generarse un problema de comunicación y posible reverso.

1.- Retiro de tarjeta durante el procesamiento de pago, en específico en la pantalla de "Esperando Autorización" que se presenta justo de ingresar el NIP.

2.- Por intermitencias e internet inestable.

3.- Escenarios aislados y poco comúnes que interrumpan justo en el momento exacto del procesamiento de la transacción.

¿Como se deben manejar los reversos de las transacciones realizadas en la terminal de NetPay?

Actualmente NetPay con la aplicación de Smart PinPad que se encarga del procesamiento de pagos con tarjeta presente en terminal maneja los reversos de la siguiente forma:

1.- Si existen ligeras intermitencias en la conexión a internet ó se retira la tarjeta durante el proceso de transacción, la Smart PinPad en su versión 2.0.p.p de forma interna realiza 3 reintentos para reversar la transacción de forma automática, por lo cuál la terminal seguirá marcando el error de "SIN COMUNICACIÓN" sin embargo en el portal web Manager aparecerá como estatus "Reversada".
Este proceso de reverso automático debería ser suficiente para validar que la transacción se cerró y no se aprobará ó cobrará al cliente por el corte de comunicación que interrumpió la transacción.

🚧

Los reversos automáticos se realizan internamente en NetPay, cuando ocurren ligeras intermitencias a internet y en movimientos de la tarjeta o retiro de la tarjeta durante el procesamiento de pago, que son las situaciones más comunes. La Smart PinPad 2.0 internamente realiza 3 reintentos para reversarla en ese mismo instante, sin embargo si fracasan estos 3 reintentos se debe seguir el punto #2.

2.- Si la conexión a internet es completamente inestable y el ancho de banda es menor a lo recomendado (3mb a 5mb de subida y bajada) los 3 reintentos de la Smart PinPad 2.0.p.p podrían no ejecutarse con éxito lo que conlleva a tener que manejar los reversos de forma Manual, es decir, se tiene que realizar una siguiente transacción a partir de 1 centavo con cualquier tarjeta para que la anterior transacción con problema de comunicación sea reversada.

❗️

Para este segundo punto de reverso manual es muy importante manejarlo correctamente ya que de no realizarse una siguiente transacción con cualquier tarjeta y apartir de 1 centavo, puede no reversarse la transacción anterior con problema de comunicación y el cliente puede irse con el servicio o producto sin que se le cobre.

Como se puede identificar un posible reverso desde la terminal de NetPay?

Teniendo el contexto previo de los puntos anteriores mencionados, se anexa un ejemplo de cómo la Smart PinPad anuncia en pantalla este tipo de situaciones cuando se genera un corte en la comunicación entre el servidor de NetPay que logra aprobar la transacción pero la terminal no logra enterarse por que se retira la tarjeta antes de tiempo durante el proceso de pago ó durante intermitencias en la conexión a internet que intervienen en el flujo de la transacción

El ticket oficial de NetPay puede mostrar el error de "ERROR AL LEER LA TARJETA", "SIN COMUNICACIÓN ó "ERROR DE CONEXIÓN" y en el JSON de respuesta que la terminal le entrega al punto de venta o aplicación del comercio que integra se presenta de la siguiente forma:

{
    "affiliation": "7389108",
    "amount": "175.0",
    "authAmount": "175.0",
    "bankName": "HSBC",
    "bin": "",
    "cardType": "C",
    "cardNumber": "4604",
    "cardTypeName": "VISA",
    "cityName": "Guadalupe NUEVO LEON",
    "responseCode": "05",
    "internalNumber": "",
    "isRePrint": false,
    "message": "SIN COMUNICACIÓN",
    "moduleCharge": "102",
    "moduleLote": "1",
    "terminalId": "2840223334",
    "rePrintDate": "2.0.p.p_20240729",
    "rrnNumber": "100913354463",
    "spanRoute": "4604",
    "storeId": "9194",
    "streetName": "AVE PABLO LIVAS 7200",
    "tableId": "",
    "ticketDate": "OCT. 09, 24 12:30:29 ",
    "traceability": {
        "idTienda": "1234",
        "idCliente": "3326",
        "idInterno": "1"
    },
    "transType": "A"
}

Mecanismo de defensa o funcionalidad para conocer el estatus de los reversos mediante la terminal por API.

Documentación Reimpresión por Folio para integración API