Key Features
- Real-time Delivery: Receive instant payload transmissions the millisecond a platform lifecycle change or checkout completes.
- Secure by Default: Every request is accompanied by cryptographically signed headers utilizing secure HMAC SHA256 configurations.
- Automatic Retries: Built-in fault tolerance featuring a robust 8-attempt retry sequence driven by an exponential backoff matrix.
- Granular Event Filtering: Avoid unnecessary processing loops and server traffic by subscribing only to the micro-events your backend handles.
Getting Started
Develop Safely Using Test ModeLeverage our sandbox testing interface during development to process mock checkouts, active subscriptions, intentional cancellations, and refunds to trigger automated webhook schema events without moving live capital.
Step-by-Step Endpoint Registration
- Access Webhook Settings: Log into your Solifyn Dashboard and navigate to Developer > Webhooks.
- Create Webhook Endpoint: Click on the Add Webhook button to instantiate a new delivery configuration.

- Specify Target URL: Input the secure HTTPS endpoint where your application server listens for incoming post requests.
- Select Subscribed Events: Check the specific operational flags (e.g.,
payment.succeeded,subscription.active,dispute.challenged) your handler relies on. Leaving parent categories selected automatically registers your route for all associated sub-events. - Retrieve Secret Key: Copy your unique webhook Secret Key (
whsec_...) from the endpoint details panel. This secret is vital for computing the signature verification step on your server.
Secret Rotation
If you suspect an active endpoint signature key has been compromised, you can initiate a zero-downtime transition via the dashboard by selecting Rotate Secret. The rotation process generates a brand-new secret key immediately. To protect live data routing, the legacy secret remains active as a valid verification token for a strict 24-hour grace period before expiring permanently.Webhook Delivery Specifications
Connection Timeouts
Solifyn maintains a strict 15-second connection and read timeout window for all dispatched webhooks. If your endpoint server fails to acknowledge the event request within this limit, the transmission is logged as a timeout failure and enters the retry cycle.Automatic Retry Matrix
If an endpoint times out, drops connections, or throws standard server errors (non-2xx status codes), our Svix infrastructure automatically schedules delivery retries using an exponential backoff progression:| Attempt Index | Backoff Delay Time | Operational Strategy Description |
|---|---|---|
| 1 | Immediately | First retry fires instantly following the initial failure event. |
| 2 | 5 Seconds | Second attempt executed after a short stabilization window. |
| 3 | 5 Minutes | Third delivery try with an escalated interval footprint. |
| 4 | 30 Minutes | Fourth dispatch continuing the backoff progression pattern. |
| 5 | 2 Hours | Fifth operational delivery retry with extended spacing layout. |
| 6 | 5 Hours | Sixth verification attempt maximizing backoff boundaries. |
| 7 | 10 Hours | Seventh technical attempt targeting structural path recovery. |
| 8 | 10 Hours | Final Attempt: System marks the specific event message as Failed. |
Idempotency & Message Ordering
Due to potential network routing retries or multi-region delivery variations, your handler may receive identical event payloads multiple times or out of absolute chronological order.- Idempotency: Every webhook request injects a unique, immutable string within the
webhook-idheader. Always implement an idempotency ledger (e.g., matching IDs within a Redis cache layer) to drop duplicate requests safely. - Payload State: Solifyn guarantees that every retry transmission contains the latest database payload snapshot available at the exact millisecond of delivery, regardless of when the initial trigger event originally fired.
Securing Webhooks & Verifying Signatures
To guarantee that incoming data blocks originate exclusively from Solifyn and have not been manipulated mid-transit, you must validate signatures cryptographically. Every webhook request bundles three distinct validation headers:webhook-id: The unique event identifier.webhook-timestamp: The Unix timestamp (seconds) tracking when the transmission initialized.webhook-signature: The computed HMAC SHA256 signature token.
Manual Cryptographic Verification
Because Solifyn leverages the open Standard Webhooks spec, we recommend using the official, lightweight, open-source verification libraries provided by the Standard Webhooks ecosystem rather than writing custom parsing blocks from scratch. You can import their standard verification modules directly across multiple backends using their open libraries: Standard Webhooks Open Repositories.Step-by-Step Manual Computation Routine:
- Construct the signed text signature by concatenating the raw string value of the
webhook-id, a literal period (.), the string value of thewebhook-timestamp, another literal period (.), and the exact raw unparsed string body payload. - Compute an HMAC SHA256 hash of that concatenated string using your endpoint’s dashboard secret key (
whsec_...) as the cryptographic key. - Perform a constant-time string comparison between your calculated output and the string array provided inside the
webhook-signatureheader.
Implementation Example: Express.js Backend
Below is a complete, production-ready implementation inside an Express.js server utilizing the nativestandardwebhooks NPM package to securely handle payload signature parsing and asynchronous orchestration: