TrustWixDocs
Handle results

Webhook events

The event catalogue, and which ones you actually need to subscribe to

Subscribe only to what you act on. Most integrations need exactly one event, and adding the rest mainly adds traffic you then have to filter.

Verification lifecycle

EventWhen it fires
verification.createdA verification was created.
verification.pendingThe session is waiting on the user.
verification.awaiting_serviceSubmissions are in and the checks are queued.
verification.completedThe verification reached a terminal state. Fires for every outcome.
verification.approvedThe verdict is approve.
verification.rejectedThe verdict is reject.
verification.reviewThe verdict is review and a human needs to look at it.
verification.expiredThe user never completed the session in time.

verification.completed fires alongside the verdict-specific event, so a single subscription to it covers all three outcomes and you branch on data.status yourself. Subscribing to both verification.completed and verification.approved means you receive two events for the same approval, which is fine as long as your handler is idempotent.

The one-event integration

If you only want to subscribe to a single event, choose verification.completed and switch on data.status.

Checks

EventWhen it fires
check.completedAn individual check inside a verification finished.

Useful for progress indicators and for internal analytics on which step people fail. Do not build your access decision on it, because an individual check result is not the verdict.

Screening

EventWhen it fires
aml.case.createdA screening check opened a case that needs attention.
aml.case.updatedAn existing case changed.

Fraud network

EventWhen it fires
fraud_network.createdA cross-merchant fraud signal was raised.
fraud_network.modifiedAn existing signal changed.

These payloads deliberately carry no personal data. They tell you that a signal exists against a verification you own, not who else was involved.

Review actions

EventWhen it fires
action.reviewedA reviewer reached a decision.
action.on_holdA case was put on hold.
action.pendingA case is waiting on a reviewer.

These use the fast retry ladder because a person is waiting on the outcome.

Payload shape

Every event has the same envelope: an event id, the event name, a createdAt timestamp and a data object whose contents depend on the event. See Webhooks for the envelope and signature verification.

Adding events

The catalogue is additive. New event types can appear, and new fields can appear inside data, so ignore events you do not recognise instead of failing on them, and do not use a strict object mapper that throws on unknown properties.

On this page