Recibir eventos de webhook
MONEI notifica a tu servidor cuando ocurre algo con un pago, una devolución o una suscripción — para que puedas completar pedidos, actualizar tu base de datos o enviar recibos sin tener que consultar continuamente. Hay dos formas de recibir estas notificaciones.
Webhooks de cuenta
Los webhooks de cuenta envían todos los eventos a los que te suscribas, de toda tu actividad. Configúralos en Panel → Ajustes → Webhooks:
- Añade una URL de destino del webhook — una URL
https://en tu servidor. - Selecciona los tipos de evento que quieres recibir.
- Actívalo.
Puedes añadir más de un destino — por ejemplo, uno para pagos y otro para suscripciones.
Cada entrega es un sobre de evento en JSON:
{
"id": "evt_...",
"type": "charge.succeeded",
"object": {"id": "...", "status": "SUCCEEDED"}
}
Lee type para saber qué ha ocurrido, y object para obtener el recurso afectado (un pago, una devolución o una suscripción).
Callback de pago (callbackUrl)
Al crear un pago, puedes establecer un callbackUrl. MONEI envía entonces el objeto Payment directamente (no un sobre) a esa URL cuando el pago alcanza un estado final — incluso si el cliente cierra el navegador durante la redirección. Úsalo cuando solo te interese el resultado de un pago concreto.
Consulta Verificar firma para ver ejemplos listos para usar en Node, PHP y Python que gestionan el callback.
Tipos de evento
Un charge es un pago, así que los eventos charge.* reflejan el ciclo de vida del pago.
| Grupo | Eventos |
|---|---|
| Pagos (charges) | charge.succeeded, charge.failed, charge.pending, charge.pending_processing, charge.authorized, charge.captured, charge.canceled, charge.expired, charge.refunded, charge.partially_refunded, charge.paid_out, charge.chargeback, charge.updated |
| Devoluciones | refund.succeeded, refund.failed, refund.pending |
| Suscripciones | subscription.activated, subscription.updated, subscription.canceled, subscription.paused, subscription.past_due, subscription.trialing, subscription.pending, subscription.expired |
Verifica cada solicitud
Cada webhook y callback incluye una cabecera MONEI-Signature — una firma -SHA256 calculada con tu clave de API. Verifica siempre la firma antes de confiar en la carga útil y responde con un estado 200 para confirmar la recepción.
Si eres socio de MONEI Connect, configura los webhooks en el Partner Dashboard — consulta MONEI Connect para desarrolladores.