Choose the correct address
The address you display depends on the network the sender will use.
The same EVM address is used across supported EVM networks. The Solana account has a separate address.
Always show the selected network alongside the wallet address. A deposit screen should include:
- The network
- The wallet address
- A copy action
- A QR code
- Clear guidance about which assets and networks your application supports
Only send USDC on Base to this address.
QR codes
Use the SDK to generate a QR code for the wallet address. The QR code encodes the address itself and can be scanned by compatible wallet applications.Detecting an incoming transfer
During beta, wallet deposits do not generate push notifications or webhooks. If your application needs to show when a deposit arrives, poll while the deposit experience is active and refresh when the application returns to the foreground.- Check the balance. Call
getBalancefor the token you expect, orgetTokenBalancesfor everything on the chain, every 10 to 15 seconds while the screen is visible. Compare with the previous value to detect the arrival. - Check transaction history.
getTransactions(chainId:)returns transfers into the wallet as well as out of it, including transfers that didn’t go through your app. Use it to show the deposit as a row once it lands.
Receiving on Solana
Solana tokens are held in associated token accounts. If the recipient does not yet have an account for the token being received, the sender’s transaction can create it automatically. The recipient does not need to take a separate action before receiving the token.getBalance for a token the wallet has never received returns zero rather than an error.
Unsupported networks and tokens
Balances and history cover any chain you registered an RPC endpoint for, whether or not the wallet can send there. If a user receives funds on Avalanche or Celo, they can see them, but they can’t move them from the Rain wallet until Rain adds sending on that chain; the way out is key export into another wallet. Say so in your deposit UI by listing only the networks you support. Tokens outside the SDK’s registry show up ingetTokenBalances with their on-chain decimals and, on EVM, symbol and name. Register the tokens you display prominently with registerTokens so they carry consistent metadata on every chain.
What’s next
Balances and history
Read what arrived, on one chain or all of them.
Card funding and settlement
Move funds from the wallet into card collateral.