The mechanics

Stablecoins in, Visa number out

Five steps. The first four take about five minutes and the fifth is just paying for things. Here is each one, including the part that trips people up.

  1. 1

    Connect a wallet

    MetaMask, Trust Wallet, TON Wallet or Phantom, on Ethereum, BNB Chain, Solana or TON. This is the account creation step. There is no email verification, no password and no document upload.

  2. 2

    Pick a deposit network

    USDT on BEP20, ERC20 or TRC20. USDC on BEP20, ERC20 or Base. Copy the deposit address for the exact chain you are sending from — the address is chain-specific and sending to the wrong one loses the funds.

  3. 3

    Send the stablecoins

    Confirmations land and the balance appears against your card. TRC20 and BEP20 are typically the cheapest and quickest routes; ERC20 costs whatever Ethereum gas costs that hour.

  4. 4

    Reveal the card details

    Tap the card in the app, then hit CHECK. Number, expiry and CVV appear. They stay masked the rest of the time, which is the right default when you are working somewhere public.

  5. 5

    Pay

    Enter it at any Visa checkout. The merchant sees a Visa card, because that is what it is. Leave a little headroom on the balance so pre-authorisation checks pass.

Deposit networks, in full

This is the complete list. There is no “and others” hiding at the end of it.

Supported deposit assets and their networks
AssetNetworks acceptedUsual cost to send
USDTTRC20 · BEP20 · ERC20TRC20 and BEP20 are cheap. ERC20 tracks Ethereum gas.
USDCBEP20 · ERC20 · BaseBase and BEP20 are cheap. ERC20 tracks Ethereum gas.
Anything elseNot acceptedWill not be credited.

The wrong chain means the money is gone. MPay states plainly that other networks and other assets will not be credited, and no recovery process is published. Deposit addresses look similar across EVM chains, which is exactly why this catches people. Check the network selector in your wallet before you confirm, not after.

The pre-authorisation thing

This is the single most common reason a working card appears to fail, and almost nobody explains it before you hit the problem.

Before charging you, a lot of merchants ask your card a question first: are you real, and are you active? That request is called a pre-authorisation. Sometimes it is for a dollar or two that gets released a few days later. Sometimes it is for exactly nothing — a $0 authorisation.

And a $0 check can still fail on a card with a $0 balance. Which feels absurd, because nothing is being charged. But the card is being asked to approve a transaction, and an empty card declines transactions.

MPay names ChatGPT, Claude, Spotify, Netflix and Amazon as merchants that do this. In practice most subscription services do. The fix is trivial once you know: keep a little spare beyond whatever you are actually paying for.

That is the whole thing

No application, no review, no documents. Connect a wallet and send some stablecoins.