Paid24 Design Handover
TON/USDT Integration Prototype - Development Team Reference
What We Built
Added USDT (crypto) support alongside CHF. Users can now manage two currencies through TON blockchain wallets. No jargon. Simple UI.
Design Goals
Add non-custodial USDT account via TON blockchain alongside existing CHF account. Create seamless UX that hides blockchain complexity. Borrow familiar patterns from Wise's multi-currency accounts. Enable users to connect TON wallet, view USDT balance, send to other users, and receive via wallet address.
User Research Insights
Users confused by crypto jargon. Prefer plain language over technical terms. Want familiar banking UX, not crypto interfaces. Need clear guidance at each step. Respond better to "TON wallet" than "jetton wallet" or "contract". Trust non-custodial approach when explained simply.
Design Decisions
Card-based currency selection. Click to switch between CHF and USDT. No segmented toggles. Bottom drawers for all actions. Consistent with existing send/request patterns. Plain language throughout. No mention of gas, private keys, or contracts. Friendly tone. Guide users, don't just alert.
Implementation Approach
Phased rollout. Stage 0: Dev navigation setup. Stage 1: Multi-currency home. Stage 2: TON wallet connection. Stage 3: Account details. Stage 4-5: Send and receive flows. Stage 7: MoonPay placeholders. Each stage testable via dev navigation. Query params simulate states.
Key UI Patterns
Dual account layout. Both currencies always visible. Active card highlighted. Action buttons context-aware. Transaction feed filtered by currency. Connect wallet via bottom drawer. Success/error states in-drawer. No toast notifications. Wallet address with QR code. Copy functionality throughout.
Future Considerations
Convert feature needed. USDT to CHF for card usage. MoonPay integration for fiat bridge. Multiple provider support. Wise-like multi-account UX. Cross-account transfers. Non-custodial by default. Provider choice for users.
Key Changes
1. Multi-Currency Home Complete
Why: Users need both traditional (CHF) and crypto (USDT) in one app.
2. TON Wallet Connection Complete
Why: Non-custodial approach. Users keep control of their crypto.
⚠️ Bug: Connect button needs two clicks. Fix later.
3. USDT Account Details Complete
Why: Users need their wallet info for external transfers.
4. Send & Receive USDT Complete
Why: Core crypto functionality matching CHF patterns.
5. Help & Privacy Features Complete
Why: Support access and privacy in public spaces.
6. KYC Welcome Screen Complete
Why: User-testing proved higher conversion when the payoff and time expectation are clear, jargon is removed, and trust is reinforced.
7. TON Wallet Connection Only Complete
Why: Regulatory constraints mean we can only offer crypto features (USDT via TON) in some regions. Removing unavailable options keeps UX clear.
Future Features (UI Only)
MoonPay Integration
Why: Show stakeholders planned fiat-crypto bridge.
New Onboarding Flow (22 Screens)
Complete Onboarding Sequence
Why: Implements all 22 screens from the new onboarding design with improved UX based on user testing feedback.
Summary and Next Steps
What We've Done
Note: Limited time on MoonPay. Got GitHub access Thursday night. Only had Friday to work. Next phase will be simple: click button, open MoonPay modal.
Immediate Next Step
Needs proper user flow. Explain each step clearly. Base on original design from August 2024.
Strategic Direction
Wise Web3 Plan (Recommended)
Home Screen Structure:
- Total balance at top
- Three main buttons: Send, Add Money, Get Paid
- Different accounts shown as cards
- Transaction list below
- Bottom menu: Home, Cards, Help
Send Money Flow:
- Select which account to send from
- Choose recipient (app users or external)
- Base on primary use case we're building for
Add Money Flow:
- Select target account
- Show relevant options: IBAN for Fiat24 CHF, MoonPay for USDT
Get Paid Flow:
- Generate receive link
Account Detail Screen:
- Balance display
- IBAN or wallet address
- Add button
- Convert button (send to different account)
- Send button
- Get Paid button
Alternative Strategy
Real User Scenarios:
Long-Term Vision
Original Screens (Unchanged)
Preview
Click links to test. Mobile viewport (390×844px).