Skip to content

Frontend - Connect wallet + claim destination flow #204

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)

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions