אינטגרציה עם Webhooks
כל סנכרון שולח בקשת POST עם JSON חתום לנקודת הקצה שלך ב-HTTPS: תנועות, יתרות, אחזקות ועסקאות מ-14K+ בנקים, מאומת בסוד החתימה שלך.
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 ]}
מהבנק לשרת שלך בשלושה שלבים.
- 01
חיבור נקודת קצה
מדביקים כתובת HTTPS ציבורית. BankSync מציג סוד חתימה whsec_ פעם אחת ושולח אירוע בדיקה.
URLhttps://api.yourapp.com/…סודwhsec_••••••••••••אירוע בדיקה● 200 תוך 142ms - 02
הפניית פיד אליה
בוחרים חשבונות וסוג נתונים. אין מה למפות: מקבלים מעטפת JSON עם גרסה.
תנועותיתרותאחזקותעסקאותהלוואותאירועtransactions.deltaמיפויאין, תצוגה מקדימה של ה-payload - 03
אימות כל מסירה
בודקים את החתימה עם כל ספריית Standard Webhooks, ואז מבצעים Upsert לשורות לפי id.
server.js
import { Webhook } from 'standardwebhooks'const wh = new Webhook(secret)const event = wh.verify(body, headers)// סינון כפילויות לפי event.id
הגדרת Webhooks, מההתחלה ועד הסוף.
הגדרת Webhooks ב-BankSync, צולם עם חשבונות לדוגמה.
מה מגיע לנקודת הקצה שלך.
- id
- ייחודי לכל מסירה ויציב בין ניסיונות חוזרים. מפתח ה-idempotency שלך, זהה לכותרת webhook-id.
- type
- transactions.delta לתנועות חדשות או ששונו; יתרות, אחזקות, עסקאות, פקודות והלוואות מגיעות כ-*.snapshot.
- apiVersion
- חוזה ה-payload המוצמד לתאריך, כרגע 2026-06-01.
- feed
- המזהה, השם וסוג הנתונים של הפיד ששלח אותו.
- job
- ההרצה שהוא שייך אליה, ומה הפעיל אותה: scheduled, manual, api, test או redelivery.
- batch
- המיקום של האצווה בהרצה, כדי שאפשר יהיה לסדר את האצוות.
- data
- השורות. תנועות כוללות מזהה, תאריך, תיאור, סכום עם סימן, מטבע, קטגוריה, סטטוס המתנה והחשבון.
נקודת הקצה שלך היא רק תחנה אחת. לא כל הסיפור.
Webhooks, בקצרה.
- נתונים
- תנועות, יתרות, אחזקות, עסקאות, פקודות והלוואות, סוג נתונים אחד לכל פיד.
- חתימה
- Standard Webhooks: HMAC-SHA256 על המזהה, חותמת הזמן והגוף. בהחלפת הסוד, הסוד הישן נשאר תקף 24 שעות.
- מסירה
- לפחות פעם אחת. 408, 425, 429, 5xx וחריגות זמן נשלחים שוב עם backoff; תגובת 410 משביתה את נקודת הקצה.
- נקודות קצה
- HTTPS ציבורי בלבד. כתובות פרטיות, loopback ופנימיות נדחות.
- לוח זמנים
- אפשר לבחור סנכרון אוטומטי כל שעה, כל יום או כל שבוע בהתאם לתוכנית, או להריץ סנכרון ידני בכל עת.
- תוכנית
- תוכנית Standard ומעלה, לצד ה-API וה-MCP.
- הגדרה
- בערך 5 דקות. שליחת JSON חתום לנקודת קצה משלך; בלי עלות לצד שלישי.
- סטטוס
- זמין כבר היום.
שאלות ותשובות.
איך מאמתים webhook של BankSync?
כל מסירה כוללת כותרות webhook-id, webhook-timestamp ו-webhook-signature בפורמט Standard Webhooks. מאמתים אותן עם סוד ה-whsec_ שלך בכל ספריית Standard Webhooks, ודוחים חותמות זמן ישנות מ-5 דקות.
מה קורה אם נקודת הקצה שלי לא זמינה?
המסירה מתבצעת לפחות פעם אחת. תגובות 408, 425, 429, 5xx וחריגות זמן נשלחות שוב עם backoff מעריכי תחת אותו מזהה, ולכן כדאי לסנן כפילויות לפי id. תגובת 410 משביתה את נקודת הקצה.
אילו אירועים BankSync שולח?
transactions.delta לתנועות חדשות או ששונו; balances.snapshot, holdings.snapshot, trades.snapshot, orders.snapshot ו-loans.snapshot למצב הנוכחי; sync.completed או sync.failed בסוף כל הרצה; ו-endpoint.test לאירועי בדיקה.
אפשר לשלוח webhooks ל-localhost או לרשת פרטית?
לא. נקודות קצה חייבות להיות כתובות https:// ציבוריות. כתובות שמפנות לטווחים פרטיים, loopback, link-local או פנימיים נדחות בעת השמירה.
איזו תוכנית כוללת webhooks?
Webhooks כלולים בתוכנית Standard ומעלה, יחד עם ה-API וה-MCP.
נתוני בנק בנקודת הקצה שלך.
BankSync אינו קשור ל-Webhooks, אינו מאושר על ידו ואינו שותף רשמי שלו. הסימנים המסחריים של Webhooks שייכים לבעליהם.
