Skip to main content

How it works

1

Start a verification

Call POST /api/v1/verifications with the account you want to verify. You get back a session_url.
2

Send the user to complete KYC

Redirect your user to the session_url. They upload their ID, take a selfie, and verify their identity on a hosted page. You don’t build any UI for this.
3

Listen for the result

When the user completes verification, you receive an identity_profile.approved webhook. Call GET /api/v1/verifications?account_id={biz_ tag} to read the verified identity data.

Quick example

cURL
Response
You need a Company API key with the identity:write scope. Go to your dashboard → Settings → API Keys to create one.

Pre-fill the KYC form

Pass identity fields to skip steps for your user. These seed the verification form so they don’t have to retype their name and address:
cURL
tax_identification_number is the person’s tax identification number — their SSN for US individuals — and is required when country is US: the payout account can’t be created without it. Send it as-is; it is tokenized in transit and the raw value is never stored on Whop’s systems.

Two types of verification

An account can have one of each — an individual KYC and a business KYB.

What’s next

Check status

Check verification status and read verified identity data.

Handle RFIs

Respond when a provider needs additional information like a bank statement.

Update & delete

Update identity fields or remove a verification.

API Reference

Full field reference for the verification object.