Step 2 of 9

Step 2: KYC Document Upload

Buyer must complete KYC verification by uploading required documents.

📍 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