Skip to main content
GET
Get External Wallets

Overview

External wallets are non-custodial wallet addresses where users maintain full control of their private keys. These wallets are registered through the delegation flow and can be used for card payments and withdrawal destinations. Key Differences from Internal Wallets:
  • User controls private keys (non-custodial)
  • Requires delegation to grant spending authority to platform
  • Real-time balance checking from blockchain
  • Allowance limits control maximum spendable amount
Use Cases:
  • View all registered external wallets
  • Check current balance and allowance
  • Verify wallet registration status
  • Display available payment sources

Authentication

string
required
Your public API client key
string
required
Bearer token for authentication

Query Parameters

boolean
default:false
Route to US backend environment

Response

Returns an array of registered external wallets.
string
Blockchain address of the external wallet
string
Currency held in the wallet (e.g., “usdc”, “usdt”)
string
Current on-chain balance (decimal string)
string
Maximum amount platform can spend from this wallet (delegation limit)
string
Blockchain network (e.g., “linea”, “ethereum”, “solana”)

Code Examples

Understanding Balance vs Allowance

Available Amount: The actual spendable amount is the MINIMUM of balance and allowance. If balance is 1000 but allowance is 500, only 500 can be spent.
Calculate Available Amount

Integration Patterns

Display Wallet Summary

Check if User Has External Wallet

Find Wallet with Best Balance

Important Notes

Allowance Limitations: Even if balance is high, transactions cannot exceed the delegated allowance. Users must redelegate to increase allowance.
Real-Time Balance: Balances are fetched from the blockchain in real-time. For frequently updated UI, consider caching with appropriate TTL (e.g., 30 seconds).
Network Specificity: Same address on different networks represents different wallets. Always check both address AND network when identifying wallets.

Edge Cases

Empty Wallet List

User has not completed delegation:

Zero Balance

Wallet is registered but empty:

Exceeded Allowance

Balance exceeds allowance:

Delegation Flow

To register a new external wallet, users must complete the delegation flow:
1

Get Delegation Token

Call GET /v1/delegation/token to initiate
2

Connect Wallet

User connects wallet in your frontend (MetaMask, WalletConnect, etc.)
3

Approve Transaction

User signs blockchain transaction granting spending authority
4

Submit Proof

Call blockchain-specific endpoint:
  • POST /v1/delegation/evm/post-approval for Linea/Ethereum
  • POST /v1/delegation/solana/post-approval for Solana
5

Verify Registration

Check this endpoint to confirm wallet appears in list
See the Delegation Guide for complete implementation details.