📍 Page Location
URL: /dashboard/kyc
📸 Visual Representation of the Page
Step 2: KYC Document Upload
KYC Document Upload
🎨 Detailed Visual Description
User sees KYC form with company type selection (Listed Company or Private Company). Each type has different document requirements. Form includes file upload fields for passport, incorporation documents, financial statements, etc.
Key Visual Elements:
- Company type selection
- Document upload (PDF, JPG, PNG)
- Real-time file validation
- Progress tracking
⚙️ Backend Process
API Endpoint: POST /api/kyc/submit
Process Flow:
1. Authenticates user via JWT token
2. Receives uploaded files via Multer middleware
3. Validates file types and sizes
4. Stores files in /uploads directory
5. Creates KYC record in database.kyc Map
6. Updates user.kycStatus to "pending"
7. Stores document metadata (filename, path, type)
8. Triggers compliance checks (OFAC screening)Database Operations:
- Table:
database.kyc - Action: Create KYC submission record
- Fields: id, userId, companyType, documents[], status: "pending", submittedAt
➡️ Next Action
User is redirected to /wallet-setup after KYC submission