flow_type: "redirect", customer_email is not required, and the response returns a widget_url instead of emailing a link.
Flow
1
Create the session
Parent calls Create KYC Session with
flow_type: "redirect" and a webhook_url.2
Vobiz returns a widget_url
Vobiz returns a
widget_url. You redirect the customer to it.3
Customer completes KYC
Customer completes KYC in the Vobiz-hosted widget.
4
Receive webhook events
Vobiz POSTs webhook events to your
webhook_url at each stage (initiated → submitted → completed/failed).1. Create the KYC session (register the webhook)
Auth: parent main account -
X-Auth-ID: MA_xxxx + X-Auth-Token: <token> (or Authorization: Bearer <JWT>). The sub_auth_id path param (SA_xxxx) identifies the sub-account being verified.account_auth_id in the schema is set automatically from the path sub_auth_id for this flow - you don’t need to send it.201:
widget_url to start KYC. (kyc_link is only returned in dev for testing.)
2. Webhook events you’ll receive
Identical to the email flow - Vobiz POSTs JSON to yourwebhook_url as the session progresses:
Payload:
3. Verify the signature
Every delivery includes an HMAC signature header (same as email flow):- Algorithm: HMAC-SHA256 over the raw request body.
- Secret: your parent account’s
auth_token.
2xx to acknowledge. Failed deliveries are retried with exponential backoff.
cURL example
Copy-paste starter - create a redirect-flow session with both your webhook and redirect URLs in one call:Email vs Redirect
Same endpoint, same webhooks.email→ Vobiz emails the customer the link (needscustomer_email). See the email flow.redirect→ you getwidget_urlback and redirect the customer yourself (no email).