New Onboarding Flow

Complete 24-screen onboarding sequence with password creation, biometrics, location, wallet backup, and KYC.

Screen 1: Welcome - Pay & Get Paid 24/7

Hero Screen

Welcome screen remains unchanged from current app. Shows app logo with tagline "Pay & Get Paid, 24/7" and value proposition. Two CTAs: "Create Account" starts onboarding, "What can I do?" opens feature tour.

Note: Create Account button modified to work within iframe navigation.

Screens 2-3: Create Password

Password Entry & Confirmation

Password creation with real-time validation. Shows 8+ characters, letter, number, and match requirements. Screen 3 is when all criteria are met and Next button becomes enabled.

  • Minimum 8 characters with letter and number
  • Eye icon for password visibility toggle
  • Real-time validation feedback
  • Next button disabled until valid

Screen 4: Enable Biometric Authentication

Optional Security Feature

Offers Face ID/Touch ID setup with "Maybe later" option. Detects platform to show appropriate biometric type. Screen 5 (loading) is integrated into this component.

  • Auto-detects Face ID vs Touch ID
  • 80% success rate simulation
  • "Maybe later" to skip
  • Auto-advances on success

Note: Biometric enrollment is simulated for prototype.

Screen 6: Location Permission Needed

Enable Location Services

Request location to enable location-based features. Shows benefits list: Personal IBAN, Free Debit Card, Full Wallet Features. Continue enabled only after permission granted.

  • Clear benefit messaging
  • Location status indicator
  • "Open Settings" triggers OS dialog
  • Continue disabled until location ON

Screens 7-8: OS Location Permission Dialog

System Permission Request

Mockup of native OS location permission dialog. Shows what users would see on iOS/Android. Screen 8 (Android) uses same component as Screen 7 (iOS) for simplicity.

Note: This is a simplified text mockup of the OS dialog. Backend calls mocked for prototype.

Screen 9: Country Detected & Selectable

Location-Based Setup

Auto-detects country from location. Shows "We've detected your country as Switzerland" with option to change. Warning modal if user tries to override detected country.

  • Shows detected country prominently
  • "Change Country" allows override
  • Warning about GPS verification
  • Continue proceeds to dashboard

Note: Country detection is mocked for prototype.

TON Wallet Connect Only

First step on app entry

On app entry, prompt the user to connect a TON wallet. We need the wallet address to fetch Fiat24 account information and eligibility (if the user already has a Fiat24 account). This lets us load fiat status early. For countries not supported by Fiat24, the UI stays crypto‑only (USDT via TON) with no fiat account features.

Design decision: Move TON Connect to the first step to obtain the wallet address needed for Fiat24 lookups, simplifying the flow and avoiding branching later.

Screen 11: USDT Account Details

Continue CHF Setup Prompt

Shows USDT wallet successfully connected with option to continue CHF account setup. Displays mini version of CHF benefits (IBAN and debit card) to encourage completion of full onboarding.

  • USDT wallet address shown
  • Continue CHF setup card with benefits
  • Mini card stack visual
  • "Continue Setup" proceeds to home dashboard

Screen 12: Home Dashboard (Pre-Activation)

First Landing on Home

User enters main app for first time. Shows two onboarding cards: "Secure Your Assets" (active) prompts wallet backup, "Verify Identity" (locked) waits until backup complete.

  • Wallet backup card with shield icon
  • Identity verification card greyed out
  • Sequential task enforcement
  • "Backup Now" starts backup flow

Screen 13: Backup Wallet - Verify Password

Security Check

Before showing recovery phrase, confirm user's identity by asking for password again. Ensures only account owner can see secret phrase.

Note: Password verification is mocked for this prototype.

Screens 14-15: Write Down Recovery Phrase

Wallet Backup

Shows 12-word recovery phrase. Initially covered with "Reveal Phrase" button. Screen 15 is revealed state where words are visible and "I've Backed Up" is enabled.

  • Tip: "Grab a pen and paper β€” screenshots aren't safe"
  • Reveal button uncovers words
  • 12 words in numbered grid
  • "I've Backed Up" disabled until revealed

Note: Recovery phrase is mocked for prototype. Production would generate unique words.

Screen 16: Home Dashboard (Backup Done)

Ready for Identity Verification

Backup complete, wallet card removed. "Quick ID Check - about 5 min" card now active with info tooltip explaining regulations and benefits.

  • Backup card removed
  • ID check card activated
  • Clear time expectation (5 min)
  • "Start Verification" begins KYC

Screen 17: Anti-Bot Deposit

Human Verification

Send 0.0001 ETH on Arbitrum to prove you're human. Shows deposit address with copy button. Tooltip explains funds stay in your wallet, not a fee.

  • Clear amount: 0.0001 ETH (β‰ˆ $0.43)
  • Full deposit address shown
  • Copy button primary until first use
  • "I'll do this later" to skip

Note: Blockchain deposit verification is mocked for this prototype.

Screen 18: Account Creating... (Spinner)

Processing State

Loading state after anti-bot verification. Shows "Creating your account..." with spinner. Auto-advances after 2 seconds.

Note: Blockchain operations are mocked for this prototype.

Screen 19: Submitted - Waiting for On-Chain Mint

Blockchain Confirmation

Updated message: "Submitted. Waiting for on-chain mint..." Shows blockchain operation in progress. Auto-advances after 2 seconds.

Note: On-chain minting is simulated for prototype.

Screen 20: Anti-Bot Verified (Success Flash)

2-Second Toast

Success message with blue checkmark: "Anti-bot verified! Next: Confirm your identity." Auto-advances to ID check after 2 seconds.

Screen 21: ID Check - Requirements

Verification Checklist

Uses existing ID check screen. Shows checklist: Be at home address, Phone camera ready, Biometric passport/ID. All must be checked to enable "Start ID Check".

  • Three-item checklist
  • Location requirement removed (already done)
  • Start button disabled until all checked
  • Plain language, no "KYC" jargon

Screen 22: Signature Notice Modal

Blockchain Signature Warning

Modal informs user: "You will be asked to sign a blockchain message on the next screen. This is normal and costs no gas." Continue acknowledges and proceeds.

Screen 23: Fiat24 Web-Flow Entry (KYC Process)

External Identity Verification

Placeholder for Fiat24 KYC process. Would normally open webview for: wallet signature, ID upload, selfie, address verification. Auto-completes after 5 seconds for demo.

Note: External KYC process is mocked. Click "Simulate KYC Completion" or wait 5 seconds.

Screen 24: Account & Card Ready (Success)

Setup Complete

Final confirmation screen. Shows "βœ… You're all set!" with "Your EUR/CHF/USD account & IBAN are now live." Prompts to top up 10 EUR/CHF/USD to activate free debit card.

  • Success banner with celebration
  • Multi-currency account confirmation
  • Card activation prompt
  • "Top Up Now" CTA

πŸ“Œ Developer Notes