Skip to main content

Visión general

Al terminar el ciclo de pago (exitoso, rechazado o abandonado), Zonapagos redirige al usuario a una URL que tú defines. Es un GET con parámetros en la query string.
Este endpoint lo expone tu comercio, no Zonapagos. Esta página documenta qué recibes y cómo procesarlo.

Cómo se configura la URL de retorno

Tienes dos formas:
Al activar tu comercio, el equipo de Zonapagos configura la URL de retorno en tu perfil. Se usa para todos los pagos que inicies, a menos que envíes el código 104.

Parámetros que recibes

El callback no incluye el estado del pago ni ningún dato del pagador. Solo te notifica que “el usuario terminó algo”. Siempre debes llamar /VerificacionPago para saber qué pasó realmente.

Ejemplo de request entrante

Cómo procesarlo correctamente

1

Valida que id_comercio coincida con el tuyo

Si alguien intenta hacerte un callback con un id_comercio ajeno, rechaza.
2

Busca el pedido en tu base de datos

Usa el id_pago para recuperar el pedido asociado.
3

Llama POST /VerificacionPago

Esta es la única fuente de verdad sobre el estado del pago.
4

Actualiza tu BD según el estado

Solo cuando int_estado_pago === 1, marca el pedido como pagado y entrega el producto.
5

Muestra al usuario un estado amigable

Redirige a una página de confirmación, rechazo o pendiente según corresponda.

Ejemplo de implementación (Node.js / Express)

Consideraciones de seguridad

El callback no incluye una firma verificable. Un atacante que conozca tu URL de retorno y un id_pago válido podría disparar un GET falso.Mitigación obligatoria: siempre verifica el estado con /VerificacionPago antes de entregar valor. Nunca entregues un producto basándote solo en la llegada del callback.[Pendiente con TI: evaluar incorporación de firma HMAC al callback.]
Usa HTTPS en tu URL de retorno.
Rate-limit el endpoint para evitar abusos.
Loguea todos los callbacks recibidos con timestamp e IP de origen (la IP de ZonaPagos).
Idempotencia: si recibes el callback dos veces para el mismo id_pago, no entregues el producto dos veces.

Ver también

Verificar estado

Guía completa de post-callback.

Seguridad del callback

Patrones de seguridad adicionales.