Skip to main content
Developers

Webhooks

Webhooks let your own apps and services get a signed notification from Synci as soon as something changes in your account, instead of polling the API.

Written By Matias

Last updated 2 days ago

Webhooks let Synci tell your own app or service the moment something changes in your account, so you don't have to keep polling the API. Synci sends a signed POST request to your HTTPS endpoint when, for example, new transactions arrive, a balance changes, an account is added or removed, or a bank connection needs attention.

Webhooks need an active Synci subscription. Each endpoint counts toward your plan's webhook endpoint allowance. On plans priced per connection, the allowance grows with the number of connections you pay for. Paused endpoints still count when you add a new one, so delete the ones you no longer need. Zaps that use Synci triggers create endpoints too and share the same allowance (see Zapier). Active n8n workflows with the Synci Trigger do the same (see n8n).

Adding a webhook endpoint

  1. In the Synci Dashboard, open Developers > Webhooks and click Add endpoint.

  2. Enter the HTTPS URL Synci should send events to, and choose what the payloads include. Turn on Omit sensitive identifiers from payloads if your endpoint doesn't need IBANs and similar details.

  3. Choose your events: pick only the changes your integration needs.

  4. Choose which accounts to include: all financial accounts (including ones you add later), or specific accounts.

  5. Review your webhook and click Create endpoint.

  6. Copy the signing secret right away. It's only shown once, and you'll need it to verify deliveries.

Each endpoint then has its own page with two tabs:

  • Deliveries: recent events sent to the endpoint, with the payload, your endpoint's response and every delivery attempt.

  • Configuration & testing: change the URL, events and account access, send a test event, and rotate the signing secret.

Testing webhooks

Open your endpoint, go to Configuration & testing, pick an event and either one of your accounts or sample data, then click Send test event. Test events use the saved endpoint settings, so save any changes first. They're sent once, without retries, and signed just like real deliveries.

Security: Verifying signatures

Every delivery includes an X-Synci-Signature header, an HMAC-SHA256 hash of the raw request body using your endpoint's signing secret. Check it before you trust a payload. The webhooks guide has ready-to-use examples in several languages.

Rotating the signing secret

If you've lost a signing secret, open your endpoint, go to Configuration & testing and click Rotate secret. The new secret is shown once, and the old one stops working, so update your verification code straight away.


Events, payloads and delivery details

The full list of events, payload examples, signature code, retry behavior and best practices are in our developer documentation:

👉 https://docs.synci.io/guides/webhooks

Building a Managed app? It registers its own endpoints that receive events for every user it manages. See Managed apps.

Was this helpful?

Still need help? Ask the team