Skip to main content

Mobile Wallet

The PayWithZ Mobile Wallet is a production-ready React Native reference application that demonstrates how to build compliant mobile wallets using the PayWithZ platform.

Features

Wallet Creation

Create Solana wallets on-device with secure keypair storage

KYC Integration

Submit KYC directly from mobile app with real-time verification status

Stablecoin Transfers

Send and receive tokens with gasless UX and automatic compliance checks

Balance Tracking

Real-time balance updates for stablecoins and SOL

Transaction History

Complete transaction log with Solana Explorer links

Status Indicators

Visual indicators for KYC status and compliance

User Experience

Onboarding Flow

1. User opens app

2. Create wallet (if new)

3. Navigate to KYC screen

4. Submit KYC data

5. Receive SBT confirmation

6. Ready to transact

Transaction Flow

1. User initiates transfer

2. Enter recipient address

3. Enter amount

4. Review transaction

5. Confirm and send

6. Compliance check (automatic)

7. Transfer completes or blocked

Key Screens

Wallet Home

Display balances, SBT status, and quick actions

KYC Submission

Form for KYC data with validation and submission

Send Tokens

Transfer interface with recipient and amount input

Transaction History

List of all transactions with details and status

Compliance Integration

The wallet automatically enforces compliance:

KYC Required

Cannot send tokens without valid SBT

Automatic Checks

All transfers automatically checked by compliance hook

Clear Errors

User-friendly error messages when transfers are blocked

Status Visibility

Visual indicators show compliance status

Gasless Experience

Users never need SOL. The platform authority covers all transaction fees, providing a seamless user experience without gas management.

Technology

  • Framework: React Native with Expo
  • Language: TypeScript
  • API Integration: REST API client
  • State Management: React Context + Hooks

Customization

The reference implementation can be customized for:

Branding

Custom colors, logos, and branding

Features

Add additional features or integrations

UI/UX

Custom user interface and experience

Integration

Integrate with existing mobile apps

Best Practices Demonstrated

  • Secure keypair storage
  • Error handling and user feedback
  • Loading states and progress indicators
  • Transaction confirmation flows
  • Compliance messaging
  • Real-time updates

Next Steps