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:
- Prerequisites: All foundation requirements
- Identity options: Either SSO User creation and authorisation or One-time token handoff
Architecture
Integration Flow
- User Initiation: User triggers KYC process in cTrader
- Token Generation: cTrader backend generates OT token for user context
- Screen Launch: Broker KYC screen opens with token authentication
- Verification Process: User completes KYC verification in broker interface
- 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
-
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
- Triggers:
-
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
- Endpoint:
Stage 2: Broker Screen Launch
-
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
- URL:
-
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
-
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
-
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
-
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
-
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/datato 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/authorizeendpoint (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