Wallet Integration
How to connect your Solana wallet to PokeDexter.
Wallet Integration
To wager on PokeDexter, you need to connect a Solana wallet. This page covers wallet connection, supported wallets, and security.
Supported Wallets
Any Solana wallet that supports the wallet-standard spec works with PokeDexter:
| Wallet | Recommended | Notes |
|---|---|---|
| Phantom | ✅ Yes | Most popular, best UX |
| Solflare | ✅ Yes | Great mobile support |
| Backpack | ✅ Yes | xNFT support |
| Glow | ✅ Yes | Simple, fast |
| Ledger | ✅ Yes | Hardware security (via Phantom) |
We recommend Phantom for the best experience.
Connecting Your Wallet
Method 1: Wallet Picker (Recommended)
PokeDexter has built-in wallet detection. Open your browser console and run:
A modal will appear with all detected wallets:
- Click your wallet (e.g., "Phantom")
- Your wallet extension will prompt for approval
- Click "Connect" in the wallet popup
- Done! You'll see a confirmation message
What happens:
- PokeDexter detects wallets using the wallet-standard spec
- Your wallet's public address is sent to the server
- No private keys ever leave your wallet
Method 2: Manual Command
If the wallet picker doesn't work, connect manually:
- Copy your wallet address from Phantom/Solflare
- In chat, type:
Example:
Verify Connection
Check it worked:
You should see:
Wallet Picker JavaScript API
For developers or power users, the wallet picker exposes these functions:
What Gets Stored
When you connect a wallet:
| Data | Stored? | Notes |
|---|---|---|
| Public address | ✅ Yes | Required for deposits/payouts |
| Private key | ❌ Never | Only you have this |
| Seed phrase | ❌ Never | Only you have this |
| Username mapping | ✅ Yes | Links PS name to wallet |
Your private keys never leave your wallet. We only store the public address, encrypted in our database.
Security Model
How Deposits Work
When you wager, you manually send USDC to an escrow address:
- You initiate the transfer from your wallet
- Escrow holds both players' deposits
- Server settles to winner automatically
Why This Is Safe
- You approve every transaction in your wallet
- Escrow is per-match - fresh keypair each time
- Escrow keys are encrypted - AES-256-GCM encryption at rest
- Settlement is automatic - can't be withheld
- On-chain verification - anyone can audit
Risks to Understand
| Risk | Likelihood | Mitigation |
|---|---|---|
| Send to wrong address | Low | Double-check escrow address |
| Server compromise | Low | Per-match escrow + encrypted keys |
| Opponent doesn't deposit | Medium | Timeout cancellation |
| Battle bugs | Low | Standard PS engine, battle-tested |
Changing Your Wallet
To use a different wallet:
Or via command:
Warning: If you change wallets mid-wager:
- Pending challenges still use the OLD wallet
- New wagers will use the new wallet
- Active battles settle to wallet at time of acceptance
Disconnecting
Via JavaScript:
Or via command:
After disconnecting:
- You cannot create new wagers
- You cannot accept wager challenges
- Existing battles still settle normally (wallet was recorded at start)
Getting USDC
To wager, you need USDC (not SOL) in your wallet.
Option 1: Buy on Exchange
- Buy USDC on Coinbase, Binance, Kraken, etc.
- Withdraw to your Solana wallet address
- Make sure to select Solana network (not Ethereum!)
Option 2: Swap in Wallet
- If you have SOL, use Jupiter or Raydium
- Swap SOL → USDC
- Use jup.ag for best rates
Option 3: Bridge from Other Chains
- Use Portal Bridge or Wormhole
- Bridge USDC from Ethereum/Polygon/etc.
- Receive Solana USDC
Minimum recommended: $20 USDC (for a few $5 wagers)
Checking Your Balance
PokeDexter doesn't currently show your USDC balance. Check in:
- Phantom: Main screen shows all tokens
- Solscan: solscan.io - search your address
- Solana Explorer: explorer.solana.com
Troubleshooting
"No wallets detected"
Cause: No wallet extension installed, or wallet not registered yet.
Fix:
- Install Phantom or another Solana wallet
- Refresh the page after installing
- Make sure the wallet extension is enabled
"Invalid Solana address format"
Cause: The address you entered isn't valid.
Fix:
- Check for typos
- Make sure it's a Solana address (not Ethereum)
- Solana addresses are 32-44 characters, base58 encoded
- No
0xprefix (that's Ethereum)
"No wallet connected"
Cause: You haven't connected a wallet yet.
Fix: Run DexterWallet.showPicker() or /connectwallet <address>.
USDC Not Showing
Cause: You might have USDC on wrong network.
Fix:
- Make sure it's Solana USDC, not Ethereum USDC
- The token mint should be:
EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v
Transaction Failed
Cause: Usually insufficient SOL for fees or wrong amount.
Fix:
- Keep ~0.01 SOL for transaction fees
- Send the exact amount specified
- Wait a moment and retry
Wallet Picker Not Opening
Cause: JavaScript error or popup blocked.
Fix:
- Check browser console (F12) for errors
- Make sure popups aren't blocked
- Try the manual
/connectwalletcommand instead

Wallet Integration