## How DocV fits into RiskOS™  
DocV is an **enrichment** that plugs into a RiskOS™ workflow. You never call DocV directly — you call the single RiskOS™ [Evaluation API](https://help.socure.com/riskos/docs/docv-sdk-integration), and the workflow runs DocV as a step. For background on workflows, enrichments, and decisions, see [Core Concepts](https://help.socure.com/riskos/docs/understanding-riskos#core-concepts).  
Because document capture happens on the consumer's device, DocV is **asynchronous**: the evaluation pauses while the consumer captures their documents, then resumes and delivers a final decision through a [webhook](https://help.socure.com/riskos/docs/docv-receive-results).

## The verification lifecycle  
Every DocV integration follows the same lifecycle, regardless of flow type or whether you use the SDK or Hosted Flows:

1. **Create the evaluation** — Your app submits consumer data to the Evaluation API.  
2. **Receive the launch asset** — RiskOS™ pauses the workflow at the Document Request step and returns the launch asset for your path: a `docvTransactionToken` (SDK) or a top-level `redirect_uri` (Hosted Flows).  
3. **Launch verification** — Your app hands the consumer off to the SDK or Hosted Flows.  
4. **The consumer completes capture** — The capture experience collects and uploads the required media.  
5. **The workflow resumes** — RiskOS™ continues the evaluation once capture finishes.  
6. **Receive the result** — RiskOS™ delivers the final decision through the `evaluation_completed` [webhook](https://help.socure.com/riskos/docs/docv-receive-results), or you retrieve it with a GET request.  
7. **Process the final decision** — Your app routes the consumer based on the `ACCEPT`, `REVIEW`, or `REJECT` decision.

```
Consumer            DocV                Capture               RiskOS™
Your App          Consumer                      DocV        Capture             RiskOS™
Your App
Workflow pauses at  Document Request step
5. Workflow resumes
1. Create evaluation (PII + DocV config)
2. Launch asset (token or redirect_uri)
3. Launch verification (SDK or Hosted)
Present capture UI
4. Capture documents / selfie
Submit captured media
6. Webhook: evaluation_completed
7. Route consumer on decision
```

## Choose your integration path  
You launch the Capture App one of two ways: with an **SDK** or with **Hosted Flows**. Both call the same Evaluation API and return results through the same webhooks, but they are distinct integration paths — selected by the workflow you call — and the launch asset you receive back differs by path. Choose a path before you build, then follow its dedicated end-to-end guide: [DocV Direct API Integration](https://help.socure.com/riskos/docs/docv-sdk-integration) or [Integrate DocV with Hosted Flows](https://help.socure.com/riskos/docs/docv-hosted-flows-integration).

|  | SDK | Hosted Flows |
| --- | --- | --- |
| **How the consumer captures** | Your app embeds the Capture UI | The consumer opens Socure's hosted experience in a browser |
| **Platforms** | iOS, Android, React Native, Web (native or Web SDK) | Any browser |
| **Integration effort** | Embed and configure an SDK in your app | No SDK; redirect the consumer to a URL |
| **How the path is selected** | Call a workflow configured for the SDK | Call a workflow configured for Socure's hosted experience |
| **Launch asset in the response** | `docvTransactionToken` (inside `data_enrichments`) | `redirect_uri` (top level of the response) |
| **What you pass to launch** | `docvTransactionToken` + your SDK key | Redirect the consumer to the `redirect_uri` |
| **Best for** | Mobile-first apps needing an embedded experience | Web-first flows, no-SDK approach |
| **Set up** | [DocV Direct API Integration](https://help.socure.com/riskos/docs/docv-sdk-integration) | [Integrate DocV with Hosted Flows](https://help.socure.com/riskos/docs/docv-hosted-flows-integration) |

## Supported flow types  
DocV supports four Capture App flows. Each follows the lifecycle described earlier in this topic; they differ in what the consumer captures, which `docv` fields the evaluation request requires, and which enrichment object the result contains. For the per-flow request fields and payload examples, see [Configure by DocV product](https://help.socure.com/riskos/docs/docv-sdk-integration#configure-by-docv-product).

| Flow type | What the consumer captures | When to use | Set up |
| --- | --- | --- | --- |
| **Document Verification** | Government-issued ID + selfie | Onboarding, KYC, full identity verification | [Document Verification Setup](https://help.socure.com/riskos/docs/document-verification-setup) |
| **Secondary Document Capture** | Supporting documents (utility bills, bank statements) | Proof of address, compliance, fraud review | [Secondary Document Setup](https://help.socure.com/riskos/docs/secondary-doc-setup) |
| **Selfie Intelligence** | Live selfie only | Age checks, liveness, trust & safety | [Selfie Intelligence Setup](https://help.socure.com/riskos/docs/selfie-intelligence-setup) |
| **Selfie Reverification** | Live selfie compared to a prior DocV headshot | Returning-user re-authentication, high-risk transactions | [Selfie Reverification Setup](https://help.socure.com/riskos/docs/selfie-reverification-setup) |

## Related concepts  
- [Core Concepts](https://help.socure.com/riskos/docs/understanding-riskos#core-concepts)  
- [Workflows](https://help.socure.com/riskos/docs/workflows)  
- [Webhooks](https://help.socure.com/riskos/docs/webhooks)

## Related enrichments  
- [Selfie Intelligence](https://help.socure.com/riskos/docs/selfie-intelligence#/)  
- [Selfie Reverification](https://help.socure.com/riskos/docs/selfie-reverification#/)  
- [Secondary Document Capture](https://help.socure.com/riskos/docs/secondary-documents#/)

Updated 10 days ago
