Por qué webhooks
En vez de polear/v1/refresh_intents/{id}, suscríbete a eventos. Rail te avisa cuando un sync termina, un link expira, o aparecen movs nuevos.
Setup
Crea un endpoint en el dashboard (dashboard.rail.cl → Para desarrolladores → Webhooks) o via API:secret — guárdalo, lo necesitas para verificar firmas.
Verificar firma
Cada delivery viene con headerRail-Signature: t=<timestamp>,v1=<hex>. Verifica con HMAC-SHA256:
Eventos disponibles
Los eventos
institution.* sirven para mostrar en tus conexiones existentes cuándo
un banco está fuera. Ver la guía Estados de banco.Estructura del payload
data siempre contiene el recurso afectado en su forma actual (post-update).
Retry policy
Si tu endpoint devuelve != 2xx, Rail reintenta con backoff exponencial:
Después del 6to fallo, marcamos la delivery como
failed. Puedes ver el historial en el dashboard o vía GET /v1/webhook_deliveries.
Redeliver manual
Si tu endpoint estuvo caído y quieres re-recibir un evento específico:Idempotency
Tu handler debe ser idempotente: Rail puede entregar el mismo evento más de una vez (cuando hay timeouts, retries, redelivers). Usa elevent.id como dedup key en tu DB.