Onboarding webhooks
After submitting a personal or business onboarding application, the review process is asynchronous. You’ll receive webhook notifications at each stage as your application progresses through verification and approval. Use theapplicationId included in each webhook payload to link events back to the original onboarding submission.
Make sure you’ve set up your webhooks and subscribed to the relevant event types before submitting an application.
Webhook flow overview
Step 1: Identity verification
If your integration uses the Managed by Equals KYC model, you’ll receive anIdentityVerificationRequest webhook when identity verification is required.
This event includes an actionUrl - a link for the applicant to complete their identity verification session (liveness check and document upload). You should pass this URL to your applicant so they can complete the process.
Key fields:
This webhook is only relevant for the Managed by Equals KYC model. If you use the Hybrid or Delegated model, you handle verification yourself and won’t receive this webhook.
Step 2: Identity verification status
As the applicant works through their identity verification session, you’ll receive anIdentityVerificationStatusUpdated webhook each time the session changes state (to_be_completed → in_progress → completed), with a result once completed. Unlike the other onboarding events, this one may fire multiple times for the same applicant.
This webhook is only relevant for the Managed by Equals KYC model. If you use the Hybrid or Delegated model, you handle verification yourself and won’t receive this webhook.
IdentityVerificationStatusUpdated event details.
Step 3: Additional information
If Equals needs additional information to complete the review, you’ll receive one of these webhooks depending on the account type:KycInformationRequested- for personal account applicationsKybInformationRequested- for business account applications
id that identifies the information request itself, and a requiredInformation array describing exactly what is needed. Each item in the array specifies a code (the type of information requested, for example PROOF_OF_ADDRESS or PROOF_OF_FUNDS) and an expectedResponseType (file, text, boolean, or date) so your integration knows how to collect and validate the response.
Key fields (KycInformationRequested):
Key fields (
KybInformationRequested):
This step may not occur if all submitted information is sufficient. Not every application triggers an information request.
Responding to the request
Submit a response for each item in therequiredInformation array using the information request ID from the webhook payload.
-
For items at the business or personal level, call Respond to an information request item:
POST /v2/applications/{applicationId}/information-requests/{informationRequestId}/respond -
For items under an entry in
associatedPeople, call Respond to an associated person information request item:POST /v2/applications/{applicationId}/information-requests/{informationRequestId}/associated-people/{associatedPersonId}/respond
code from the requiredInformation item you’re responding to and a response value formatted according to the item’s expectedResponseType. The response is validated server-side.
For full payload structures, see KycInformationRequested event details and KybInformationRequested event details.
Step 4: Application outcome
Once the review is complete, you’ll receive anApplicationStatusUpdated webhook with the final outcome.
Key fields:
For the full payload structure, see
ApplicationStatusUpdated event details.
Step 5: Account activation
If the application was approved, you’ll receive anAccountActivated webhook confirming the account is open and ready to trade. This is the final event in the onboarding process.
This event contains the full account details, including settlement information with bank details across multiple currencies.
Key fields:
For the full payload structure, see
AccountActivated event details.
Next steps
- Set up webhooks - If you haven’t already configured your webhook subscriptions
- About webhook event types - Full payload reference for all event types
- List all accounts - Continue with the accounts tutorial