Skip to main content
Los webhooks te permiten recibir notificaciones HTTP automáticas cuando ocurren eventos en tu cuenta (pagos aprobados, dispersiones procesadas, cargos fallidos, etc.), sin necesidad de consultar la API constantemente.

¿Cómo funcionan?

1

Registra una URL

Crea un webhook con la URL de tu servidor y los eventos que quieres escuchar.
2

OnePay envía el evento

Cada vez que ocurra un evento seleccionado, OnePay enviará un POST a tu URL con el payload del evento en formato JSON.
3

Responde con 200

Tu servidor debe responder con un código HTTP 200 en menos de 30 segundos. Si no, OnePay reintentará la entrega.
4

Verifica la firma

Valida el header x-onepay-signature con tu secret para asegurarte de que la petición proviene de OnePay.

Autenticación de los eventos

Cada entrega llega con estos headers:
string
El token estático que definiste al crear el webhook (campo header). Se envía siempre.
string
El tipo de evento, por ejemplo charge.paid. Se envía siempre.
string
HMAC-SHA256 en hexadecimal del cuerpo JSON, calculado con tu secret. Solo se envía si el webhook tiene un secret configurado; si lo creaste sin secret, las entregas no van firmadas.
Versiones anteriores de esta página decían que la firma viajaba en x-onepay-signature. Ese header no existe: la firma va en Signature y el token estático en x-webhook-token. Si implementaste la verificación contra x-onepay-signature, nunca encontró el header y es probable que tu endpoint esté procesando eventos sin autenticar.
Valida siempre con comparación en tiempo constante, y rechaza la petición si no coincide.
JavaScript
Python
PHP
cURL
Guarda tu secret de forma segura. Solo se muestra una vez al crear el webhook. Si lo pierdes, deberás eliminarlo y crear uno nuevo.

Eventos disponibles

Pagos

Cargos

Dispersiones

Suscripciones

Cuentas bancarias

Facturas

Facturación electrónica (DIAN)

El timbrado es asíncrono: estos eventos son la forma de enterarte del resultado. Ver Facturas electrónicas.

Otros

Endpoints

Listar webhooks

Consulta todos los webhooks registrados en tu cuenta.

Ver webhook

Obtén el detalle de un webhook específico.

Crear webhook

Registra una nueva URL y selecciona los eventos a escuchar.

Actualizar webhook

Modifica la URL, nombre o eventos de un webhook existente.

Eliminar webhook

Elimina un webhook de tu cuenta.

Ejemplos de payloads

Revisa la estructura de cada evento que recibirás.