Completing the KYC

Identity verification flows for user onboarding and feature access.

Before You Start

Read the following guides before proceeding:

GuideWhy
Getting StartedPlatform overview and setup
Api BasicsRequired headers and request configuration
AuthenticationHow to obtain access tokens
WebhooksReceive status notifications
OnboardingUser and wallet registration
User ProfileUser capabilities and status

KYC (Know Your Customer) verification is required before users can access financial features in Wirex BaaS. Verification determines which capabilities become available to users, including bank accounts, card issuance, and transfer limits.

Wirex supports three verification flows depending on your existing infrastructure and user experience requirements:

FlowUse Case
Wirex HostedWirex handles verification; users complete KYC in Wirex UI
SumSub SharedShare existing SumSub verification with Wirex
KYC Sharing via APIYou handle KYC; provide verified data via API

Verification Levels

LevelDescriptionDocumentsUnlocks
BDDBasic Due DiligencePoI + selfieAccount creation, limited features
SDDStandard Due DiligencePoI + PoA + selfieBank accounts, cards, standard transfers; higher spending limits
EDDEnhanced Due DiligenceAdditional documentationHigher limits, additional features

PoI = Proof of Identity, PoA = Proof of Address.

Verification Flow

sequenceDiagram
    participant User
    participant App as Your App
    participant BaaS as Wirex BaaS
    participant KYC as KYC Provider

    Note over User,KYC: Registration
    User->>App: Sign up
    App->>BaaS: POST /api/v2/user
    BaaS-->>App: user_id

    Note over User,KYC: Verification
    App->>KYC: User completes KYC
    KYC->>BaaS: Verification result
    BaaS->>App: POST /webhook/users<br/>(verification_status)

    Note over App,BaaS: Check Capabilities
    App->>BaaS: GET /api/v2/user
    BaaS-->>App: capabilities[]
StepActionDescription
1POST /api/v2/userRegister user with initial data or shared verification
2KYC completionUser completes verification via chosen flow
3WebhookReceive verification status updates
4GET /api/v2/userCheck updated capabilities

Choosing a Flow

Wirex Hosted

  • You collect minimal user data (email, country)
  • Users are redirected to Wirex/SumSub interface for verification
  • Wirex handles the entire KYC process
  • Best for: Partners without existing KYC infrastructure

SumSub Shared

  • Your users are already verified via SumSub
  • Share existing verification using a share token
  • Requires 3-party data sharing agreement
  • Best for: Partners already using SumSub

KYC Sharing via API

  • You perform full KYC verification on your platform
  • Provide complete verified data via API
  • Requires Wirex audit and approval
  • Best for: Partners with established KYC processes

Verification Status

Users progress through verification statuses:

StatusDescription
NotStartedNo verification data submitted
AppliedData submitted, awaiting review
InReviewVerification in progress
ApprovedVerification complete, capabilities unlocked
RejectedVerification failed

Capabilities and KYC

Capabilities are unlocked based on verification level. See Capabilities for the full list and their verification requirements.

CapabilityRequired Level
SepaAccountSDD
AchAccountSDD
VisaVirtualCardSDD
SepaOut3rdPartySDD

After KYC approval, check the user's capabilities to determine which features are available.