Common customer statuses
Use these statuses to drive UI decisions:- pending: verification is in progress or queued
- active: verification succeeded
- rejected: verification failed
- needs_information: verification is blocked until the user provides more information or documents
- update_requested: updated data was submitted for re-verification
- on_hold: temporarily suspended for additional checks
What happens during verification
BFinance verifies on your behalf (hosted link)
BFinance verifies on your behalf (hosted link)
You can create the customer with minimal information (for example, customer type and desired verification level). The response includes a verification link.You share that link with the end user. The end user completes verification in the hosted flow.
You verify the user (trusted third party)
You verify the user (trusted third party)
If you collect raw identity documents yourself, you must also collect liveness from the end user using a trusted verification provider (for example Sumsub, Persona, or similar).
Liveness is always required when you submit raw documents to BFinance. You do not need to send liveness artifacts to BFinance, but you must complete liveness in your verification flow.
What your product does
What your product does
- Create the customer after collecting the required information
- Provide documents when needed
- Show status updates in the UI
- Help the user correct issues when verification fails
What BFinance does
What BFinance does
- Runs automated checks (format, eligibility, duplication signals)
- Submits the case for compliance review when required
- Produces a final decision and a reason when rejected
needs_information (what it means)
If the customer is created with incomplete data for the selected verification level, the customer can move to needs_information. Example: you submit basic personal information but request a basic verification level without providing required documents. In this scenario, the API response includes a link for uploading documents, and your product should direct the user to that link.If verification is rejected
What your user needs to do
What your user needs to do
Rejections are usually resolvable when they are caused by data quality.Ask the user to:
- confirm legal name spelling matches the document
- upload clearer photos (no glare, no cropping, no edits)
- provide missing fields (address, national ID, etc.) if required
How to interpret rejection reasons
How to interpret rejection reasons
Use rejection reason codes to decide what to show in your UI.

