1
Create a webhook endpoint
Expose an HTTPS endpoint in your backend that returns
200 quickly. On the Webhooks page, click Add Webhook and register its URL. From the Signing secrets tab, copy the signing secret if you plan to verify signatures (recommended).2
Subscribe to account events
Account events are subscribed on the webhook itself — not on a connector profile (that’s for connector events). When you add or edit the webhook on the Webhooks page, select the account events you want:
account.created, account.updated, and account.deleted.Via the API, set the webhook’s events array when you create it (POST /webhooks) or update it (PATCH /webhooks/{id}):3
Verify the signature
Each delivery is signed with HMAC-SHA256 over the raw request body, base64url-encoded, in the Hash the raw request bytes (not a re-serialized JSON string), and compare in constant time. See Verifying webhook signatures for detail and secret rotation.
x-stackone-signature header. Verify it against your signing secret before trusting the payload:4
Handle the event
Switch on the
event field and act on the account. The payload carries account_id, provider, and the origin_* identifiers — see the payload reference.