Skip to main content

Arquitectura

El sistema central inicia todas las llamadas hacia la IP y el puerto configurados en el Wiseasy P5L. Pay-me PinPAD muestra la pantalla de pago, coordina la tarjeta o genera el QR con su transacción pendiente, procesa el pago y devuelve la respuesta cruda del SDK en autorización. La consulta del cobro lee la pasarela; cancelación y extorno usan modelos propios con status. La comunicación de Pay-me PinPAD con el procesador o banco es transparente para el sistema central.

Responsabilidades

Requisitos de red

Antes de integrar, verifica lo siguiente:
  • El sistema central y el Wiseasy P5L están en la misma red local y existe conectividad entre ambos.
  • El punto de acceso no usa AP Isolation o Client Isolation entre el sistema central y el terminal.
  • El puerto TCP configurado en Pay-me PinPAD es accesible desde el sistema central. El valor predeterminado es 8080.
  • El terminal mantiene una IP estable, preferiblemente mediante una reserva DHCP o una dirección estática.
  • Las reglas de firewall permiten tráfico desde el sistema central hacia la IP y el puerto del terminal.
  • La aplicación Pay-me PinPAD permanece abierta y en estado listo durante la operación.
La URL base sigue este formato:
Ejemplo:
La dirección del ejemplo es ilustrativa. Confirma la IP y el puerto de cada terminal. Si cambia la IP del Wiseasy P5L, actualiza la configuración del sistema central.

Verificación desde el sistema central

Primero verifica alcance IP y después la aplicación:
Una respuesta válida de la aplicación es:
Si ping responde pero GET /health no, revisa el puerto, el firewall y que Pay-me PinPAD esté abierta. Algunos entornos bloquean ICMP; en ese caso, usa GET /health como prueba definitiva de la aplicación. La configuración inicial se realiza una vez por terminal e incluye la IP, el puerto, la verificación de conectividad y la inyección de llaves. Todas las respuestas usan Connection: close: abre una conexión por petición y no reutilices keep-alive. Usa un timeout superior a aproximadamente 90 segundos en los POST y cubre los 12–15 segundos de la consulta a la pasarela.

Trazabilidad

Por cada intento, registra únicamente información no sensible:
  • operationNumber;
  • amount, currency y paymentMethod enviados;
  • código HTTP recibido;
  • success, resultCode, resultMessage y result.state o transaction.state en cobro;
  • status, authorizationCode y completedAt en cancelación o extorno, cuando existan;
  • transactionID de autorización o transactionId y authorizationCode de consulta, cuando existan;
  • fecha y hora del envío, la respuesta y las consultas;
  • timeouts, pérdidas de conexión y reintentos de consulta;
  • solicitud de cancelación, cierre visual y consultas posteriores;
  • resultado de cancelación y evidencia del extorno CARD independiente, registrados por separado del cobro.
La autorización puede incluir transactionID, paymentMethod, stateReason, processorResponse y lifecycle dentro de result. La consulta devuelve transaction y no expone processorResponse ni methodDetail crudos. Consulta el contrato por endpoint y sanitiza las evidencias.

Seguridad y protección de datos

  • Mantén la red local controlada y restringe el puerto a los sistemas autorizados mediante segmentación y reglas de firewall.
  • No expongas el puerto de Pay-me PinPAD a Internet.
  • No incluyas nombres, documentos, placa u otros datos personales dentro de operationNumber.
  • No registres PAN completo, CVV, PIN, PIN Block, Track 1, Track 2 ni datos EMV sensibles.
  • Protege los logs y limita su acceso según la política de retención de tu organización.
  • Conserva operationNumber y authorizationCode para conciliación y comprobantes.
La versión vigente documenta HTTP dentro de la red local y no define headers de autenticación para la interfaz entre el sistema central y Pay-me PinPAD. Consulta Autenticación y control de acceso antes de incorporar controles adicionales.