Charged on approval
The verification price is taken from your unified USD wallet when a user is approved. Declined or abandoned attempts are not billed. If your balance is too low, new verifications are refused until you top up.
Add identity verification to any product in an afternoon. Create a verification with one API call, send your user to a hosted flow, and receive the decision by signed webhook.
Your servers never touch identity documents. Our hosted flow collects them, checks them, and sends you only the outcome.
Send your own reference for the user, optional name and birth date, the expected document type and country, and where to bring them back afterwards.
Redirect the user to the verification URL. They scan their passport or ID card and a selfie, on a phone or a computer, in French, English, Spanish or Portuguese.
We call your webhook as the status changes and you can always read the verification back by ID or by your reference.
Only reference is required. Everything else tunes the experience for your brand and your risk policy.
curl -X POST https://api.coopfinnetwork.com/v1/live/kyc/create_verification \
-H "Authorization: Bearer YOUR_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"reference": "user-1234",
"person": { "first_name": "Anna", "last_name": "Eriksson",
"date_of_birth": "1974-08-12" },
"document": { "type": "PASSPORT", "country": "HT" },
"redirect_url": "https://app.example.com/kyc/done",
"language": "en",
"branding": { "name": "YourBrand", "color": "#0F766E" },
"policy": { "blocked_document_countries": ["XX"] }
}'
201 {
"status": "success",
"verification": {
"id": "kyc_...",
"status": "created",
"verification_url": "https://..."
}
}
| Status | Meaning |
|---|---|
created | Verification exists, user has not started |
in_progress | User is in the hosted flow |
submitted / processing | Documents received, being checked |
review | Needs a manual look before a decision |
approved | Identity confirmed (this is when you are billed) |
declined / expired | Refused, or the link was not completed in time |
The verification price is taken from your unified USD wallet when a user is approved. Declined or abandoned attempts are not billed. If your balance is too low, new verifications are refused until you top up.
Follow verifications and their results from your dashboard, and set default branding and policy for your company.
Retrieve the captured document and face images for a verification with the media endpoint, so your compliance team can review any case.
You remain responsible for having a lawful basis to verify your users and for explaining it to them. See our Privacy Policy and Terms of Service.
Create an account, get your API keys and add identity verification to your onboarding.