Integracja Webhooks

Każda synchronizacja wysyła żądaniem POST podpisany JSON do punktu końcowego HTTPS: transakcje, salda, pozycje i transakcje giełdowe z 14 tys.+ banków, weryfikowane własnym sekretem podpisu.

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  ]}
Jedna dostawa transactions.delta z Chase Checking i Amex Gold, podpisana sekretem whsec_ w formacie Standard Webhooks.

Z banku na serwer w trzech krokach.

  1. 01

    Połącz punkt końcowy

    Wklej publiczny adres URL HTTPS. BankSync jednorazowo pokaże sekret podpisu whsec_ i wyśle zdarzenie testowe.

    URLhttps://api.yourapp.com/…
    Sekretwhsec_••••••••••••
    Zdarzenie testowe● 200 w 142 ms
  2. 02

    Skieruj do niego feed

    Wybierz konta i typ danych. Nie trzeba niczego mapować: dane przychodzą w wersjonowanej kopercie JSON.

    TransakcjeSaldaPozycjeKupno/sprzedażKredyty
    Zdarzenietransactions.delta
    MapowanieBrak, podgląd ładunku
  3. 03

    Weryfikuj każdą dostawę

    Sprawdź podpis dowolną biblioteką Standard Webhooks, a następnie wykonaj upsert wierszy po id.

    server.js

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

Konfiguracja narzędzia Webhooks od początku do końca.

Konfiguracja narzędzia Webhooks w BankSync, nagrana na przykładowych kontach.

Co trafia do punktu końcowego.

id
Unikalne dla każdej dostawy i stałe przy ponowieniach. Klucz idempotencji, taki sam jak nagłówek webhook-id.
type
transactions.delta dla nowych lub zmienionych transakcji; salda, pozycje, transakcje giełdowe, zlecenia i kredyty przychodzą jako *.snapshot.
apiVersion
Kontrakt ładunku przypięty do daty, obecnie 2026-06-01.
feed
Id, nazwa i typ danych feedu, który wysłał dostawę.
job
Przebieg, do którego należy, i co go uruchomiło: scheduled, manual, api, test lub redelivery.
batch
Miejsce partii w przebiegu, aby można było je uporządkować.
data
Wiersze. Transakcje zawierają id, datę, opis, kwotę ze znakiem, walutę, kategorię, status oczekiwania i konto.
Tabele pól dla każdego typu danych i kod weryfikacji w kilku językach są w dokumentacji webhooków.

Punkt końcowy to jeden przystanek. Nie cała trasa.

Webhooks w skrócie.

Dane
Transakcje, salda, pozycje, transakcje giełdowe, zlecenia i kredyty – jeden typ danych na feed.
Podpisywanie
Standard Webhooks: HMAC-SHA256 z id, znacznika czasu i treści. Po rotacji sekretu stary pozostaje ważny przez 24 godziny.
Dostarczanie
Co najmniej raz. 408, 425, 429, 5xx i przekroczenia czasu są ponawiane z rosnącym odstępem; 410 wyłącza punkt końcowy.
Punkty końcowe
Tylko publiczne HTTPS. Adresy prywatne, pętli zwrotnej i wewnętrzne są odrzucane.
Harmonogram
Automatyczna synchronizacja co godzinę, codziennie lub co tydzień, zależnie od planu, albo ręczna synchronizacja w dowolnym momencie.
Plan
Plan Standard lub wyższy, razem z API i MCP.
Konfiguracja
Około 5 minut. Podpisany JSON trafia do własnego endpointu; bez kosztów zewnętrznych usług.
Status
Dostępna już dziś.

Pytania i odpowiedzi.

Jak zweryfikować webhook BankSync?

Każda dostawa zawiera nagłówki webhook-id, webhook-timestamp i webhook-signature w formacie Standard Webhooks. Należy je zweryfikować sekretem whsec_ za pomocą dowolnej biblioteki Standard Webhooks i odrzucać znaczniki czasu starsze niż 5 minut.

Co się dzieje, gdy punkt końcowy jest niedostępny?

Dostarczanie odbywa się co najmniej raz. Odpowiedzi 408, 425, 429, 5xx i przekroczenia czasu są ponawiane z wykładniczo rosnącym odstępem pod tym samym id, dlatego należy deduplikować po id. Odpowiedź 410 wyłącza punkt końcowy.

Jakie zdarzenia wysyła BankSync?

transactions.delta dla nowych lub zmienionych transakcji; balances.snapshot, holdings.snapshot, trades.snapshot, orders.snapshot i loans.snapshot dla bieżącego stanu; sync.completed lub sync.failed na koniec każdego przebiegu oraz endpoint.test dla zdarzeń testowych.

Czy można wysyłać webhooki na localhost lub do sieci prywatnej?

Nie. Punkty końcowe muszą być publicznymi adresami https://. Adresy rozwiązywane do zakresów prywatnych, pętli zwrotnej, link-local lub wewnętrznych są odrzucane przy zapisie.

Który plan obejmuje webhooki?

Webhooki są dostępne w planie Standard i wyższych, razem z API i MCP.

Dane bankowe w punkcie końcowym.

BankSync nie jest powiązany z marką Webhooks, nie jest przez nią wspierany ani nie jest jej oficjalnym partnerem. Znaki towarowe marki Webhooks należą do ich właścicieli.