Ciclo de vida de la sesión e inicio de sesión

Una sesión de API Local es el período entre un Inicio de sesión y un Cierre de sesión. Las transacciones solo pueden ejecutarse dentro de una sesión abierta. Esto se aplica a los transportes HTTP y TCP/IP; la API en la nube no tiene sesión.

Inicio de sesión

POST /login abre la sesión. Envíe los detalles de su SaleSoftware (nombre de la aplicación, proveedor, versión). En el Inicio de sesión, el POS anuncia la versión más alta del protocolo que soporta; el terminal responde con la versión que usará para la sesión.

Un Response.Result de Success confirma que la sesión está abierta. Si el mensaje entrante no puede ser analizado, el terminal devuelve una EventNotification con EventToNotify: Reject en su lugar.

Trabajo dentro de la sesión

  • Solo se ejecuta un diálogo de servicio a la vez. Iniciar un segundo pago antes de que termine el primero devuelve una condición Busy o NotAllowed (HTTP 403 en el endpoint de pago mientras uno está en progreso).
  • Guarde el POITransactionID de cada pago completado para posteriores reversos, reembolsos y consultas de estado.

Detección de cambio de hardware

Guarde el número de serie del terminal en el primer inicio de sesión (disponible mediante una llamada Diagnosis) y verifíquelo en inicios de sesión posteriores. Un cambio de serie significa que el terminal físico detrás de la misma dirección fue intercambiado — un riesgo de fraude y conciliación que su POS debería señalar.

Cierre de sesión

POST /logout cierra la sesión. Vuelva a iniciar sesión después de cualquier reinicio del terminal o actualización de firmware. Las operaciones enviadas después de un cierre de sesión, o después de que la sesión expire, devuelven la condición LoggedOut.

Nota

Consulte la referencia de la API Local en MuleSoft para los esquemas de Inicio y Cierre de sesión.