graph TD
A[User Starts KYC Process] --> B[Proceed with Onfido Verification]
subgraph Onfido Verification Process
B --> C[Submit Personal Information]
C --> D{Check Country of Residence}
D -->|High-Risk Country| E[Flag for Enhanced Due Diligence]
D -->|Low-Risk Country| Q[Upload Identity Documents]
E --> Q
Q --> R{Document Valid?}
R -->|Yes| S[Capture Live Selfie]
R -->|No| T[Request Re-Upload of Documents]
T --> Q
S --> U{Face Match?}
U -->|Yes| V[Onfido Returns Verification Result with Risk Evaluation]
U -->|No| W[Request Retake of Live Selfie]
W --> S
end
V --> X{Onfido Risk Evaluation}
X -->|High Risk| P[Flagged]
X -->|Medium Risk| O[Approve User and Complete KYC]
X -->|Low Risk| O
X -->|Flagged Prior for High-Risk Country| P
P --> F{Additional Documents Required?}
F -->|Yes| G[Request Additional Documents]
F -->|No| H[Proceed with Manual Review]
G --> I{User Submits Additional Documents?}
I -->|Yes| J[Review Additional Documents]
I -->|No| K[Reject Application]
J --> L{Additional Documents Approved?}
L -->|Yes| H
L -->|No| K
H --> M[Manual Review by Compliance Team]
M --> N{Approved by Compliance Team?}
N -->|Yes| O
N -->|No| K
O --> Y{Entity Created}
subgraph Integral
Y --> |Yes| YA[Create User for Entity]
Y --> |No| YB[Wait for Entity Creation]
YB --> Y
end
K --> Z[User Receives Rejection Notice]
YA --> AA[Unlock Trading Capabilities for User]