Skip to content

Registration & Onboarding

New users go through a multi-step onboarding process: account creation, email verification, terms acceptance, and KYC document submission.

Flow Overview


1. Register Account

Route/register
LayoutPublicLayout (no auth required)
Steps2-step flow via stepper

Step 1 — Account Details

  • Email input with format validation
  • Password creation (8+ chars, requires upper, lower, number, special)
  • Password confirmation
  • Referral source selection (dropdown from CMS)
  • Referral code (optional)
  • Terms acceptance — multiple checkboxes, each opens a scrollable terms dialog. User must scroll to the bottom before accepting.

Step 2 — Email Verification

  • 6-digit OTP sent to email
  • 2-minute cooldown before resend is available
  • On verification success → auto-login and redirect to dashboard

Existing User Path

If a returning user has not accepted updated terms, they are redirected to the terms-only flow (no re-registration needed).


2. Accept Terms & Conditions

Route/terms-conditions
LayoutPublicLayout
  • Loads required terms from CMS (Directus)
  • Each term must be opened and scrolled to the end before checkbox can be checked
  • OTP verification after accepting all terms
  • On success → navigate to dashboard

3. Submit KYC Information

Route/update-kyc
LayoutMainLayout (authenticated)

This is the primary KYC form supporting both Personal and Business accounts.

Personal Account Fields

  • Citizenship type (Thai / Foreign)
  • Title, first name, last name (Thai & English)
  • Phone number (international format)
  • Date of birth (age validation: 18–70)
  • ID card or passport with expiry date
  • Identity documents (ID card photo, selfie — or 2 sets for foreigners)
  • Registered address (Thai citizens only)
  • Current address (with "same as registered" option)
  • PEP (Politically Exposed Person) status
  • Occupation and workplace

Business Account Fields

  • Company registration number
  • Company name
  • Business address
  • Articles of Association / Certificate of Incorporation
  • Authorized person details and director/shareholder documents

Bank Account (second panel)

  • Bank name, account name, account number
  • Book bank photo upload

Validations

  • Thai ID: 13-digit checksum validation
  • Passport: format validation
  • ID/passport duplication check (calls .NET backend)
  • Address cascading: Province → District → Sub-district → Postcode

4. Upgrade KYC Tier

Route/upgrade-kyc
LayoutMainLayout (authenticated)

Upgrade through KYC levels for higher loan limits. See KYC Tiers & Limits for tier details.

Each tier upgrade requires submitting additional documents:

TierRequirementsAccess
0Registration completeWallet only
1ID/Passport + SelfieSmall loans
2Address proof + OccupationHigher limits
3Source of funds + PEP declarationMaximum limits

5. Resubmit KYC

Route/update-kyc
LayoutMainLayout (authenticated)

When admin requests a revision, the user is notified and redirected back to the KYC form to correct and resubmit.

What the user sees

  • Notification banner indicating which fields need correction
  • KYC form pre-filled with previously submitted data
  • Flagged fields highlighted for the user to update
  • Previously uploaded documents still available (no need to re-upload unless flagged)
  • On resubmit → KYC status returns to pending for admin review

Revision cycle

  • There is no limit on the number of revision cycles
  • Each resubmission resets kyc_status to pending
  • Admin can approve, request another revision, or reject at any review

Next: Authentication →

Confidential — For internal and authorized partner use only.