Skip to main content

Overview

Matchr supports connecting multiple wallets, each with its own Safe smart contract wallet for trading. This gives you flexibility to:
  • Use different wallets for different strategies
  • Keep funds separated by risk profile
  • Trade from any wallet you prefer

Supported Wallets

Privy Embedded

Auto-created secure wallet. No seed phrase needed.

MetaMask

The most popular browser extension wallet.

Coinbase Wallet

Mobile and browser wallet from Coinbase.

Rainbow

Beautiful mobile-first Ethereum wallet.

Rabby

Security-focused wallet with transaction simulation.

WalletConnect

Connect any WalletConnect-compatible wallet.

How It Works

One Safe Per Wallet

Each wallet you connect gets its own Safe smart contract wallet for trading:
Your Wallets
├── Privy Embedded (0x123...)
│   └── Safe: 0xAAA...
│       └── USDC Balance: $5,000

├── MetaMask (0x456...)
│   └── Safe: 0xBBB...
│       └── USDC Balance: $10,000

└── Rabby (0x789...)
    └── Safe: 0xCCC...
    └── USDC Balance: $2,500

Why Separate Safes?

If one wallet is compromised, only that wallet’s Safe is at risk. Your other funds remain secure.
Use different wallets for different strategies. Keep long-term holds separate from active trading.
Track performance by wallet. See which strategy is working best.

Setting Up Multiple Wallets

Connect First Wallet

Sign in with your preferred method (Twitter, email, or connect wallet).If you use social login, Privy automatically creates an embedded wallet for you.

Add More Wallets

Go to Settings → Wallets and click Connect Wallet.Select from MetaMask, Coinbase Wallet, Rainbow, Rabby, or WalletConnect.

Deploy Safe for Each

Each wallet needs its own Safe. Click Set Up Trading next to any wallet to deploy.
Safe deployment is a one-time process that takes ~30 seconds.

Fund Your Safes

Transfer USDC (Polygon) to whichever Safe(s) you want to trade from.

Managing Wallets

The Wallets Page

Navigate to Settings → Wallets to see all connected wallets:
Wallets Page
For each wallet, you can see:
  • Wallet address (EOA)
  • Safe address (trading wallet)
  • USDC balance in Safe
  • Setup status (Safe deployed, credentials generated)

Setting a Primary Wallet

One wallet is designated as your Primary Wallet. This is used by default when trading. To change your primary:
  1. Go to Settings → Wallets
  2. Click the star icon next to the wallet you want to make primary

Switching Wallets When Trading

In the trading interface, you can switch which wallet to trade from:
  1. Click the wallet selector in the order form
  2. Choose the wallet/Safe you want to use
  3. Confirm the wallet has sufficient balance

Safe Wallet Features

Each Safe provides:

Gasless Trading

No gas fees for trades. We cover transaction costs.

No Signatures

Server-side execution. No wallet popups for each trade.

USDC Only

Trade with stablecoin. No ETH needed for gas.

Instant Settlement

Trades settle immediately in your Safe.

Wallet Status Indicators

StatusMeaning
🟢 ReadySafe deployed, credentials generated, ready to trade
🟡 Setup NeededClick to deploy Safe and generate credentials
🔴 Not ConnectedWallet disconnected, reconnect to use

Security Considerations

Important Security Notes:
  • Each Safe is controlled by its corresponding wallet
  • Never share your wallet private keys
  • Privy embedded wallets can be exported (Settings → Export Key)
  • Keep backup of external wallet seed phrases

Recovery Options

Wallet TypeRecovery Method
Privy EmbeddedRe-authenticate with same social account
MetaMaskSeed phrase backup
Hardware WalletDevice + PIN

Portfolio Aggregation

Even with multiple wallets, Matchr shows your total portfolio across all Safes:
// Portfolio view aggregates all positions
{
  totalValue: 17500,
  wallets: [
    { address: '0xAAA...', value: 5000 },
    { address: '0xBBB...', value: 10000 },
    { address: '0xCCC...', value: 2500 }
  ],
  positions: [...] // Positions from all wallets
}

API Access

Each wallet has its own Polymarket API credentials stored securely:
// Get credentials for a specific wallet
const creds = await matchr.getCredentials({
  walletAddress: '0x123...',
  chainId: 137
});

// Credentials are per-wallet
{
  apiKey: 'pk_...',
  apiSecret: 'sk_...',
  passphrase: '...',
  safeAddress: '0xAAA...'
}

FAQ

Yes, withdraw from one Safe and deposit to another. We’re working on one-click transfers.
The Safe is controlled by that wallet. If you lose access to the wallet, you lose access to the Safe. Always keep backups.
No hard limit. Connect as many as you need.
No, each Safe is linked to one wallet for security. This prevents unauthorized access.

Next Steps