Skip to main content

In-App KYC

InApp KYC enables brokers to embed their Know Your Customer verification processes directly within cTrader, allowing users to complete compliance requirements without leaving the trading platform. This module streamlines the compliance workflow while maintaining broker control over verification processes.

Overview

The InApp KYC module enables:

  • Embedded KYC verification within cTrader interface
  • Seamless compliance workflow integration
  • Broker-branded verification screens
  • Real-time verification status updates
  • Support for document upload and identity verification

Prerequisites

Before implementing InApp KYC, ensure completion of:

Architecture

Integration Flow

  1. User Initiation: User triggers KYC process in cTrader
  2. Token Generation: cTrader backend generates OT token for user context
  3. Screen Launch: Broker KYC screen opens with token authentication
  4. Verification Process: User completes KYC verification in broker interface
  5. Status Communication: Verification status communicated back to cTrader

Authentication Methods

  • Full SSO: Long-term tokens with broker-owned identity
  • One-time token handoff: One-time tokens with cTrader identity provider

Implementation Flow

KYC Verification Flow

Stage 1: User Initiation

  1. User triggers KYC process

    • Triggers:
      • First deposit attempt
      • Account creation completion
      • Compliance requirement notification
      • Manual initiation from account settings
    • Context: User ID, account info, KYC requirement type
  2. cTrader backend generates OT token

    • Endpoint: /ctid2/inAppOneTimeToken/data (One-time token handoff)
    • Context: User ID, account info, action type (kyc)
    • Token: Short-lived token for broker authentication

Stage 2: Broker Screen Launch

  1. cTrader opens broker KYC screen

    • URL: https://brokerCrmUrl.com/inapp/kyc
    • Parameters: token, lang, source, theme, kycType
    • Method: Opens in embedded browser/modal within cTrader
  2. Broker screen validates and pre-loads

    • Token Validation: Verify OT token validity and user context
    • User Identification: Extract user information from token
    • KYC Status: Load current KYC verification status
    • Requirements: Display specific KYC requirements based on user context

Stage 3: KYC Verification Process

  1. User completes KYC verification

    • Personal Information: Name, address, date of birth
    • Identity Document: Passport, ID card, driver's license upload
    • Address Verification: Utility bill, bank statement upload
    • Additional Verification: Tax identification, source of funds
  2. Broker processes verification

    • Document Validation: Automated document verification
    • Data Validation: Cross-reference with external databases
    • Manual Review: Escalation to compliance team if needed
    • Status Updates: Real-time status updates throughout process

Stage 4: Completion and Communication

  1. KYC verification completion

    • Verification Status: Approved, rejected, or additional info required
    • Account Limits: Update account limits based on verification level
    • Notification: User notification of verification result
  2. Status communication to cTrader

    • Callback: Notify cTrader of KYC status change
    • Account Update: Update account status and limits in cTrader
    • User Notification: Show verification result to user

API specifications

This module does not define additional broker → cTrader endpoints. Token resolution depends on the identity module in use:

  • One-time token handoff: See Block B — the broker calls GET /ctid2/inAppOneTimeToken/data to resolve the OT token received via URL.
  • SSO User creation and authorisation: No broker → cTrader call is required; the OT token is validated via the broker CRM's /oauth2/onetime/authorize endpoint (called by cTrader, not the broker).

Required Screens

KYC Verification Screen

  • URL: /inapp/kyc
  • Parameters: token, kycType (optional)
  • Functionality:
    • Personal information collection
    • Document upload interface
    • Progress tracking
    • Status display
    • Additional information requests

Document Upload Screen

  • URL: /inapp/kyc/upload
  • Parameters: token, documentType
  • Functionality:
    • File upload interface
    • Image capture (mobile)
    • Document preview
    • Quality validation
    • Upload progress

KYC Status Screen

  • URL: /inapp/kyc/status
  • Parameters: token
  • Functionality:
    • Current status display
    • Required actions
    • Document checklist
    • Processing timeline
    • Contact support options

URL Examples

KYC URLs

<!-- Basic KYC URL -->
https://brokerCrmUrl.com/inapp/kyc?token=abc123&lang=en

<!-- With specific KYC type -->
https://brokerCrmUrl.com/inapp/kyc?token=abc123&kycType=standard&lang=en

<!-- Document upload URL -->
https://brokerCrmUrl.com/inapp/kyc/upload?token=abc123&documentType=identity&lang=en

<!-- KYC status URL -->
https://brokerCrmUrl.com/inapp/kyc/status?token=abc123&lang=en