For AI agents: a documentation index is available at the root level at /llms.txt and /llms-full.txt. Append /llms.txt to any URL for a page-level index, or .md for the markdown version of any page.
  • Getting Started
    • Introduction
    • How Verifa Works
    • Quickstart
    • Choosing an Integration Method
  • Use Cases
    • KYC Onboarding
    • Age Verification
    • AML Compliance
    • Fraud Prevention
    • Marketplace Trust & Safety
  • Core Concepts
    • Overview
    • Sessions
    • Verifications & Checks
    • Workflows
    • Identities
    • Cases
    • Screening & Reports
    • Lists
  • Integration Guides
    • Overview
    • JavaScript SDK
    • Web Capture Flow
    • API-Only Integration
    • Mobile SDK
    • Webhooks Guide
    • MCP Server
    • Migrating from Persona
  • API Details
    • Overview
    • Authentication
    • Pagination
    • Rate Limiting
    • Versioning
    • Errors
    • Webhooks
    • Idempotency
    • Key Inflection
    • Data Access
    • Data Retention
  • Tutorials
    • Creating Your First Verification Session
    • Creating a Workflow
    • Receiving Webhooks & Validating Signatures
    • Handling Webhook Events
    • Custom Document Types & AI Extraction
  • Best Practices
    • Testing
    • Preventing Duplicates
    • Fraud Signals
    • Changelog
  • API Reference
On this page
  • Common marketplace verification scenarios
  • Implementation
  • Verify a seller at onboarding
  • Preventing duplicate accounts
  • Custom blocklists
  • Recommended workflow: seller onboarding
  • Embedding verification in your platform
  • Trust signals for your users
  • Platform-specific considerations
  • Multi-sided verification
  • Re-verification
  • International platforms
  • Webhook-driven activation
  • Related
Use Cases

Marketplace Trust & Safety

Was this page helpful?
Previous

Core Concepts

Next
Built with

Marketplaces and platforms face a unique challenge: you need to verify both sides of a transaction — sellers, service providers, landlords, drivers, or any user who interacts with others on your platform. Verifa gives you the tools to verify identities, screen against watchlists, detect duplicates, and build trust across your platform.

Common marketplace verification scenarios

ScenarioChecks to add to your workflow
Seller onboardingDocument Scan + Face Match + AML Screening + Duplicate Detection
Service provider verificationDocument Scan + Face Match + Address Validation + Phone Risk
High-value buyer verificationDocument Scan + Face Match + Email Risk
Age-gated marketplaceDocument Scan + Face Match + Age Verification

Watchlist screening, risk assessment, and identity cross-reference run automatically on every session — you don’t need to add them.

Implementation

Verify a seller at onboarding

cURL
Python
JavaScript
$curl -X POST https://api.withverifa.com/api/v1/sessions \
> -H "X-API-Key: vk_live_your_key_here" \
> -H "Content-Type: application/json" \
> -d '{
> "external_ref": "seller_abc123",
> "country": "US",
> "workflow_id": "wf_seller_onboarding",
> "metadata": {
> "user_type": "seller",
> "store_name": "Jane Electronics"
> }
> }'

Always include an external_ref (your internal user ID) when creating sessions. Verifa automatically creates an identity record when the session completes, linking the verified data to that reference. This enables duplicate detection, re-verification, and continuous monitoring.

Preventing duplicate accounts

Fraudulent sellers often create multiple accounts after being banned. Add Duplicate Detection to your workflow to catch this. It compares:

  • Device fingerprint — Same browser or device
  • Face embedding — Same person, different name
  • Document number — Same ID document
  • Email / phone — Reused contact details

When a duplicate is detected, the session is routed to manual review.

Custom blocklists

Maintain a list of banned users and match new signups against it. Add List Check to your workflow to enable matching.

$# Create a blocklist
$curl -X POST https://api.withverifa.com/api/v1/lists \
> -H "X-API-Key: vk_live_your_key_here" \
> -H "Content-Type: application/json" \
> -d '{
> "name": "Banned Sellers",
> "type": "block",
> "match_fields": ["email", "phone", "document_number", "device_fingerprint"]
> }'

Recommended workflow: seller onboarding

Build this workflow in the dashboard using the visual workflow builder:

Capture → Document Scan → Face Match → AML Screening
→ Duplicate Detection → Auto-Approve

Watchlist screening and risk assessment run automatically on top of this. Use conditional nodes to route high-risk sessions to manual review.

See the Creating a Workflow tutorial for a step-by-step walkthrough.

Embedding verification in your platform

Use verifa.js to verify users without leaving your marketplace:

1<script src="https://app.withverifa.com/static/verifa.js"></script>
2<script>
3 async function verifySeller() {
4 // Your backend creates the session
5 const res = await fetch('/api/verify-seller', { method: 'POST' });
6 const session = await res.json();
7
8 Verifa.open({
9 captureUrl: session.capture_url,
10 sessionId: session.id,
11 mode: 'modal',
12 onComplete: (data) => {
13 // Update seller badge / unlock selling
14 window.location.reload();
15 }
16 });
17 }
18</script>

Trust signals for your users

Once a seller or provider is verified, display trust indicators:

  • Verified badge — Show that the user has completed identity verification
  • Verification date — When they were last verified
  • Screening status — Confirm they passed AML screening

Retrieve this from the identity record (automatically created when the session completed):

$curl https://api.withverifa.com/api/v1/identities?external_ref=seller_abc123 \
> -H "X-API-Key: vk_live_your_key_here"

Platform-specific considerations

Multi-sided verification

Create different workflows for different user types. Use the metadata field to tag the user type, then use different workflow_id values:

  • wf_seller_onboarding — Full verification with AML + duplicate detection
  • wf_buyer_verification — Lighter check with document + face match only
  • wf_provider_verification — Full verification + address + phone risk

Re-verification

For periodic re-verification or when suspicious activity is detected, create a new session with the same external_ref. Verifa links it to the existing identity automatically:

$curl -X POST https://api.withverifa.com/api/v1/sessions \
> -H "X-API-Key: vk_live_your_key_here" \
> -H "Content-Type: application/json" \
> -d '{
> "external_ref": "seller_abc123",
> "country": "US",
> "workflow_id": "wf_seller_onboarding"
> }'

International platforms

Verifa supports documents from 100+ countries. Set the country field to optimize OCR accuracy, or omit it to let Verifa auto-detect the document origin.

Webhook-driven activation

Use webhooks to automatically activate or flag accounts:

1{
2 "event": "session.approved",
3 "data": {
4 "session_id": "session_abc123",
5 "external_ref": "seller_abc123",
6 "status": "approved",
7 "metadata": {
8 "user_type": "seller",
9 "store_name": "Jane Electronics"
10 }
11 }
12}

Related

  • Tutorial: Creating a Workflow — Build a workflow step by step
  • Quickstart — Create your first session in 5 minutes
  • Identities — How identity records work
  • Lists — Custom blocklists for banned users
  • Fraud Signals — 150+ signals for fraud detection
  • Webhooks Guide — Automate account activation
  • JavaScript SDK — Embed verification in your UI