Integración con Webhooks

Cada sincronización envía por POST JSON firmado a su endpoint HTTPS: transacciones, saldos, posiciones y operaciones de 14 mil+ bancos, verificado con su propio secreto de firma.

POST api.yourapp.com/webhooks/banksync200 OK · 142 ms
webhook-id:        evt_job-7q2_0_1_1webhook-timestamp: 1792501320webhook-signature: v1,K5oZfzN95Z9UVu1EsfQmfVNQhnkZ2pj9o9NDN/H/pI4=content-type:      application/json {  "id": "evt_job-7q2_0_1_1",  "type": "transactions.delta",  "apiVersion": "2026-06-01",  "createdAt": "2026-10-20T13:02:00.000Z",  "feed": { "id": "feed_9d1", "name": "Chase to Webhook", "dataType": "transactions" },  "job": { "id": "job_7q2", "trigger": "scheduled" },  "batch": { "sequence": 1 },  "data": [    { "id": "10a4d071832649a", "date": "2026-10-19", "amount": 4200.00, … },    { "id": "4bdd8e6931727cd", "date": "2026-10-19", "amount": -86.42, … },    …1 more  ]}
Una entrega transactions.delta de Chase Checking y Amex Gold, firmada con su secreto whsec_ en el formato Standard Webhooks.

Del banco a su servidor en tres pasos.

  1. 01

    Conecte un endpoint

    Pegue una URL HTTPS pública. BankSync muestra una sola vez un secreto de firma whsec_ y envía un evento de prueba.

    URLhttps://api.yourapp.com/…
    Secretowhsec_••••••••••••
    Evento de prueba● 200 en 142 ms
  2. 02

    Dirija un feed hacia él

    Elija las cuentas y un tipo de datos. No hay nada que asignar: recibe un sobre JSON versionado.

    TransaccionesSaldosPosicionesOperacionesPréstamos
    Eventotransactions.delta
    AsignaciónNinguno, una vista previa del payload
  3. 03

    Verifique cada entrega

    Compruebe la firma con cualquier biblioteca de Standard Webhooks y luego inserte o actualice las filas por id.

    server.js

    import { Webhook } from 'standardwebhooks'const wh = new Webhook(secret)const event = wh.verify(body, headers)// deduplicar por event.id

Configure Webhooks, de principio a fin.

Configuración de Webhooks en BankSync, grabada con cuentas de ejemplo.

Lo que llega a su endpoint.

id
Único por entrega y estable entre reintentos. Es su clave de idempotencia, igual que la cabecera webhook-id.
type
transactions.delta para transacciones nuevas o modificadas; saldos, posiciones, operaciones, órdenes y préstamos llegan como *.snapshot.
apiVersion
El contrato de payload fijado por fecha, actualmente 2026-06-01.
feed
El id, el nombre y el tipo de datos del feed que la envió.
job
La ejecución a la que pertenece y qué la inició: scheduled, manual, api, test o redelivery.
batch
La posición del lote en la ejecución, para que pueda ordenarlos.
data
Las filas. Las transacciones incluyen id, fecha, concepto, importe con signo, divisa, categoría, estado pendiente y la cuenta.
Encontrará tablas de campos para cada tipo de datos y código de verificación en varios lenguajes en la referencia de webhooks.

Su endpoint es una parada más. No el recorrido completo.

Webhooks, en resumen.

Datos
Transacciones, saldos, posiciones, operaciones, órdenes y préstamos, un tipo de datos por feed.
Firma
Standard Webhooks: HMAC-SHA256 sobre el id, la marca de tiempo y el cuerpo. Al rotar el secreto, el anterior sigue siendo válido durante 24 horas.
Entrega
Al menos una vez. Las respuestas 408, 425, 429, 5xx y los tiempos de espera agotados se reintentan con espera progresiva; un 410 desactiva el endpoint.
Endpoints
Solo HTTPS público. Se rechazan las direcciones privadas, de loopback e internas.
Programación
Elija sincronizaciones automáticas cada hora, a diario o semanalmente según su plan, o ejecute una sincronización manual en cualquier momento.
Plan
Plan Standard o superior, junto con la API y MCP.
Configuración
Aproximadamente 5 minutos. Envío de JSON firmado a su propio endpoint; sin costes de terceros.
Estado
Disponible ya.

Preguntas, respondidas.

¿Cómo verifico un webhook de BankSync?

Cada entrega incluye las cabeceras webhook-id, webhook-timestamp y webhook-signature en el formato Standard Webhooks. Verifíquelas con su secreto whsec_ usando cualquier biblioteca de Standard Webhooks y rechace las marcas de tiempo de más de 5 minutos.

¿Qué ocurre si mi endpoint no está disponible?

La entrega se realiza al menos una vez. Las respuestas 408, 425, 429 y 5xx y los tiempos de espera agotados se reintentan con espera exponencial con el mismo id, así que deduplique por id. Una respuesta 410 desactiva el endpoint.

¿Qué eventos envía BankSync?

transactions.delta para transacciones nuevas o modificadas; balances.snapshot, holdings.snapshot, trades.snapshot, orders.snapshot y loans.snapshot para el estado actual; sync.completed o sync.failed al final de cada ejecución, y endpoint.test para los eventos de prueba.

¿Puedo enviar webhooks a localhost o a una red privada?

No. Los endpoints deben ser URL https:// públicas. Las direcciones que se resuelven en rangos privados, de loopback, de enlace local o internos se rechazan al guardarlas.

¿Qué plan incluye webhooks?

Los webhooks se incluyen en el plan Standard y superiores, junto con la API y MCP.

Datos bancarios en su endpoint.

BankSync no está afiliado a Webhooks, no cuenta con su respaldo ni es socio oficial de Webhooks. Las marcas de Webhooks pertenecen a sus respectivos titulares.