Before you start
You need an HTTPS endpoint registered with Flinks and the webhook secret we give you. Follow Client Setup to register your URL and verify each event’s signature before you build your handler. Use separate endpoints and secrets for sandbox and production.How it fits in the session lifecycle?
A session is created when you start a Guaranteed EFT flow and moves through these states:Initiated, InProgress, then one final state: Completed, Failed, Canceled or Expired.
Flinks sends a webhook only for the three final states Completed, Failed and Canceled. Initiated, InProgress and Expired do not trigger an event. If you need to know about them, read them from the session status endpoint (GET /api/v2/sessions/{sessionId}/status).
At a glance
Handle the event
Status codes
Reconcile
Because events are not retried, callGET /api/v2/sessions/{sessionId}/status for any session you expected an outcome for but did not receive one. It returns the same fields.
Best practices
- Acknowledge first. Return
200as soon as the signature checks out, then process asynchronously. - Deduplicate on
sessionId. Events carry no id of their own. - Reconcile. Because events are not retried, call the status endpoint for any session you expected an outcome for but did not receive one.
- Use HTTPS only.