INDIVIDUAL, the KYB flow for an ORGANISATION.
1
Create the party
Create an
INDIVIDUAL or ORGANISATION party.
It starts unverified.2
Mint a link
POST /parties/{partyId}/verification
with no request body — the party’s stored partyType decides the flow.3
Hand the URL to the end-user
Redirect them, or deliver it over a channel you trust.
4
Collect the verdict
The verdict arrives asynchronously. Register a webhook, or poll
Get a party and read
kycStatus
(individuals) or kybStatus (organisations).Links do not expire
Worth internalising, because it simplifies your error handling more than you’d expect:
So “re-send the verification link” is a safe, idempotent operation. You don’t need to store the
URL, track link state, or worry about handing a user a dead link by calling twice. If a user says they
lost the email, just call it again.
The distinction between
200 and 201 is informational — both carry a usable URL in the same shape.
Treat any 2xx as success rather than branching on the code.
The status field
The response’s status is the party’s verification status at mint time, which tells you what state
the party was in when you asked:
It is never
VERIFIED — an already-verified party returns 409 instead of a link. Seeing REJECTED
or DENIED here means you’re re-verifying someone who previously failed, which is allowed.
Errors
Full list in Troubleshooting.
When to use this route
Use hosted links when
You have no existing KYC provider · you’re verifying an organisation · your company runs
Venly-managed wallets · you’d rather not touch identity documents at all
Consider the alternative when
You already verified this individual in your own Sumsub account and run
SELF_CUSTODY —
then token sharing avoids a second flowNext steps
Sumsub token sharing
The alternative route for individuals.
Troubleshooting
Tracking linkage and resolving failures.

