Integrazione Webhooks

Ogni sincronizzazione invia con POST un JSON firmato al suo endpoint HTTPS: transazioni, saldi, posizioni e operazioni da 14K+ banche, verificabili con il suo secret di 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 consegna transactions.delta da Chase Checking e Amex Gold, firmata con il suo secret whsec_ nel formato Standard Webhooks.

Dalla banca al suo server in tre passaggi.

  1. 01

    Colleghi un endpoint

    Incolli un URL HTTPS pubblico. BankSync mostra una sola volta un secret di firma whsec_ e invia un evento di test.

    URLhttps://api.yourapp.com/…
    Secretwhsec_••••••••••••
    Evento di test● 200 in 142 ms
  2. 02

    Indirizzi un feed all’endpoint

    Scelga i conti e un tipo di dati. Non c’è nulla da mappare: riceve un envelope JSON con versione.

    TransazioniSaldiPosizioniOperazioniPrestiti
    Eventotransactions.delta
    MappaturaNessuna, un’anteprima del payload
  3. 03

    Verifichi ogni consegna

    Controlli la firma con una qualsiasi libreria Standard Webhooks, poi esegua l’upsert delle righe in base all’id.

    server.js

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

Configurare Webhooks, dall’inizio alla fine.

Configurazione di Webhooks in BankSync, girata con conti di esempio.

Che cosa arriva al suo endpoint.

id
Univoco per ogni consegna e stabile tra i tentativi. La sua chiave di idempotenza, uguale all’header webhook-id.
type
transactions.delta per le transazioni nuove o modificate; saldi, posizioni, operazioni, ordini e prestiti arrivano come *.snapshot.
apiVersion
Il contratto del payload legato a una data, attualmente 2026-06-01.
feed
ID, nome e tipo di dati del feed che l’ha inviato.
job
L’esecuzione a cui appartiene e che cosa l’ha avviata: scheduled, manual, api, test o redelivery.
batch
La posizione del batch nell’esecuzione, per poterli ordinare.
data
Le righe. Le transazioni includono id, data, descrizione, importo con segno, valuta, categoria, stato in sospeso e conto.
Le tabelle dei campi di ogni tipo di dati e il codice di verifica in diversi linguaggi si trovano nel riferimento webhook.

Il suo endpoint è una tappa. Non l’intero percorso.

Webhooks, in breve.

Dati
Transazioni, saldi, posizioni, operazioni, ordini e prestiti, un tipo di dati per feed.
Firma
Standard Webhooks: HMAC-SHA256 su id, timestamp e body. Dopo la rotazione del secret, quello precedente resta valido per 24 ore.
Consegna
Almeno una volta. 408, 425, 429, 5xx e timeout vengono ritentati con backoff; 410 disattiva l’endpoint.
Endpoint
Solo HTTPS pubblici. Gli indirizzi privati, di loopback e interni vengono rifiutati.
Pianificazione
Scelga sincronizzazioni automatiche orarie, giornaliere o settimanali in base al suo piano, oppure avvii una sincronizzazione manuale in qualsiasi momento.
Piano
Piano Standard o superiore, insieme all’API e a MCP.
Attivazione
Circa 5 minuti. Invio di JSON firmato al suo endpoint; nessun costo di terze parti.
Stato
Disponibile già oggi.

Domande e risposte.

Come verifico un webhook di BankSync?

Ogni consegna include gli header webhook-id, webhook-timestamp e webhook-signature nel formato Standard Webhooks. Li verifichi con il suo secret whsec_ usando una qualsiasi libreria Standard Webhooks e rifiuti i timestamp più vecchi di 5 minuti.

Che cosa succede se il mio endpoint non è raggiungibile?

La consegna avviene almeno una volta. Le risposte 408, 425, 429, 5xx e i timeout vengono ritentati con backoff esponenziale con lo stesso id, quindi deduplichi in base all’id. Una risposta 410 disattiva l’endpoint.

Quali eventi invia BankSync?

transactions.delta per le transazioni nuove o modificate; balances.snapshot, holdings.snapshot, trades.snapshot, orders.snapshot e loans.snapshot per lo stato attuale; sync.completed o sync.failed al termine di ogni esecuzione; ed endpoint.test per gli eventi di test.

Posso inviare webhook a localhost o a una rete privata?

No. Gli endpoint devono essere URL https:// pubblici. Gli indirizzi che si risolvono in intervalli privati, di loopback, link-local o interni vengono rifiutati al salvataggio.

Quale piano include i webhook?

I webhook sono inclusi nel piano Standard e superiori, insieme all’API e a MCP.

Dati bancari sul suo endpoint.

BankSync non è affiliato a Webhooks, non è approvato da Webhooks e non è un suo partner ufficiale. I marchi Webhooks appartengono ai rispettivi proprietari.