Most deposit mistakes happen before anyone presses “send”. You copy an address, see that it starts with the right characters, and assume the job is done. Crypto has a nasty little detail here: the address can look right while the network is wrong.
MPay accepts USDT on BEP20, ERC20 and TRC20. It accepts USDC on BEP20, ERC20 and Base. Those names refer to networks, not different versions of the coins. The same USDT can exist on several chains, with a separate balance and transfer history on each one.
So before you fund your card, check two things: the asset and the network. Both have to match.
Coins and chains are different things
USDT and USDC are the assets. BEP20, ERC20, TRC20 and Base are the rails that carry them from one wallet to another.
Think of USDT as the money and the network as the road. TRC20 means the token is moving across TRON. BEP20 puts it on BNB Chain, and ERC20 puts it on Ethereum itself. USDC rides those same EVM networks, and Base as well, which is built on top of Ethereum.
That distinction matters because a wallet may show one USDT balance while holding several separate versions behind the scenes. Your wallet might contain USDT on TRC20 and USDT on ERC20, but those balances aren't interchangeable until you move or swap them through a service that supports both networks.
Each chain keeps its own ledger. That is why the same USDT has different deposit details depending on the network you choose. MPay isn't asking for “a USDT address” in the abstract. It's asking for a USDT deposit on one specific chain.
You can review the basic funding flow in how MPay card top-ups work, but the important habit is simple: select the network in MPay first, then copy the address shown for that selection.
How the four accepted networks compare
There isn't one universally cheapest route. Your choice depends on the asset in your wallet, the network your exchange uses, and current traffic on the chain.
TRC20
TRC20 is the TRON network's token standard. It is commonly used for USDT transfers and is generally a cheap, quick option for moving USDT. If your USDT already sits on TRC20, sending it directly to the matching MPay TRC20 deposit address usually avoids an unnecessary network change.
TRC20 is for USDT in MPay's deposit options. Don't select it for USDC.
BEP20
BEP20 refers to tokens on BNB Chain. BEP20 transfers are generally inexpensive and quick compared with Ethereum transfers, which makes this route practical when your wallet or exchange already holds the asset on BNB Chain.
MPay accepts both USDT and USDC on BEP20. Check the asset separately from the chain. A USDC deposit needs the USDC option, even though the network name is the same.
ERC20
ERC20 is the token standard used on Ethereum. It works with both USDT and USDC at MPay, but the cost can be higher and more unpredictable because Ethereum fees depend on gas demand at the time you send.
Busy periods can make an ERC20 transfer much less attractive than it looked five minutes earlier. The fee isn't a fixed MPay fee published on this page; it comes from the network and can change hourly. Check the amount shown in your wallet before confirming.
Base
Base is an Ethereum-based network designed for lower-cost transactions. MPay accepts USDC on Base. It does not list USDT on Base as an accepted deposit route, so don't assume that a Base USDT transfer will work just because Base appears in the network menu for USDC.
Base is generally a cheap route for USDC. It can also be quick, though the wallet or exchange you use may add its own processing steps before the transfer reaches the chain.
Why the same-looking address can still be wrong
BEP20, ERC20 and Base use EVM-style addresses. In practice, an address on one of these networks can look exactly like an address on another. The familiar 0x beginning doesn't tell you whether the destination is on Ethereum, BNB Chain or Base.
That is the trap. You can copy a valid-looking MPay address, send USDC on Base to an ERC20-selected deposit, and still have made a network error. The letters and numbers may match because the address format matches. The transaction is nevertheless on the wrong ledger.
TRC20 addresses usually have a different visual format, but that doesn't make every transfer safe. A TRC20 address copied from one screen should only receive a TRC20 transfer. A network label beats address recognition every time.
MPay states clearly that other networks and crypto assets will not be credited. No recovery process for a wrong-network deposit is published. Don't treat a mistaken transfer as something support can automatically reverse. In many cases, the sender cannot simply recall a blockchain transaction after it has been confirmed.
That is why a tiny test transfer can make sense when you're using a new wallet or exchange. It doesn't remove the need to choose the correct network, but it gives you a chance to verify the flow before sending the full amount. Check the app for the current deposit instructions first.
A pre-send checklist that takes a minute
- Open the MPay deposit screen. Start from the app, not from an old address saved in your notes.
- Select the asset. Choose USDT or USDC. Don't rely on the asset currently highlighted in your wallet.
- Select the network. For USDT, choose BEP20, ERC20 or TRC20. For USDC, choose BEP20, ERC20 or Base.
- Compare the network on both screens. Your wallet or exchange must show the same network as MPay. “Ethereum,” “ERC20” and “Base” are not interchangeable labels.
- Copy the full address. Paste it into the send screen. Avoid typing it manually.
- Check the first and last characters. This catches a bad paste, but it does not prove the network is right.
- Check the asset again. USDT and USDC are separate deposits. Sending one where the other is expected is another way to lose the transfer.
- Review the network cost and amount. Ethereum gas can vary. Other networks have their own fees, and the amount you receive may differ from the amount you send.
- Send a small test first when the route is unfamiliar. Wait for it to appear before sending more.
- Keep the transaction record. Save the transaction hash and the selected network in case you need to investigate what happened.
The cheapest route is often the route you already have
Suppose your USDT is already on TRC20. Sending it through TRC20 may be the sensible choice. If your USDC is on Base, Base may save you the trouble and cost of moving it to another chain first. If the funds are already on ERC20, compare the current gas cost before deciding whether a network change is worth it.
Moving funds between networks can require a bridge, an exchange conversion, or a separate withdrawal. Those steps add complexity, and the available route depends on the wallet or platform holding your funds. You don't need to change chains just to pick the network that sounds cheapest in a general comparison.
But never force a cheaper route by sending to an unsupported network. A low-cost transaction on the wrong chain is still a failed deposit.
For MPay, the accepted combinations are worth memorising: USDT: BEP20, ERC20, TRC20. USDC: BEP20, ERC20, Base. If you're unsure, check the current instructions in the app and review the relevant details in the MPay FAQ before you send.
After the funds arrive, you can use the balance with the MPay Virtual Card for online payments at supported Visa merchants. The merchant guide shows examples such as Hetzner, ChatGPT, Spotify, Uber and Amazon. And if a merchant runs a small verification charge, keeping some available balance can help the payment go through.
One last rule: the network selector is not decoration. Match it, check it, then send.



