Skip to content

Frontend - Connect wallet + claim destination flow #204

@MantisClone

Description

@MantisClone

Problem

Payees need a frontend interface to connect their wallet and claim their destination preferences.

Proposed Solution

Create a "Claim Destination" flow in the frontend:

User Flow:

  1. Payee connects wallet
  2. Payee selects chain and currency for receiving payments
  3. System generates destination ID from connected wallet + selections
  4. Payee signs EIP-712 message to claim destination
  5. System calls POST /v2/destinations/claim
  6. Display success with shareable destination ID

UI Concept:

┌─────────────────────────────────────────────┐
│  Claim Your Payment Destination             │
├─────────────────────────────────────────────┤
│  Connected: 0x742d35...35Cc                 │
│                                             │
│  Chain:    [Polygon     ▼]                  │
│  Currency: [USDC        ▼]                  │
│                                             │
│  Your Destination ID:                       │
│  ┌───────────────────────────────────────┐  │
│  │ polygon:0x742d35...35Cc:USDC    [📋]  │  │
│  └───────────────────────────────────────┘  │
│                                             │
│  [ Sign & Claim Destination ]               │
└─────────────────────────────────────────────┘

Frontend Placement

Decision (Feb 2, 2026): Build as a standalone page within the Easy Invoice repository.

  • Not integrated with Easy Invoice navigation
  • Simple, focused interface for wallet connection and payment preferences
  • Wallet connection state will be shared with Easy Invoice if both are open (acceptable tradeoff)

Considerations

  • Only show chains/currencies that are supported
  • Validate destination ID format before signing
  • Handle wallet connection errors gracefully
  • Consider showing claim status for existing destinations

Dependencies

  • #439 (POST /v2/destinations/claim endpoint)
  • #440 (GET /v2/destinations/{id} endpoint)

Parent Issue

Sub-task of api#434 (Destination Preference Epic)

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    Status

    ✅ Done

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions