Add the network

1

Open MetaMask

Click the network selector at the top of the extension and choose Add network.
2

Add network manually

Paste the following values:
3

Save

MetaMask will validate the RPC by issuing eth_chainId. If the URL is reachable, the network appears in your list.

Import a test account

Use the Import account → Private Key flow with one of the testnet keys:
Account #1 (1,000,000 YCE)
These keys are public and for testnet only.

Send a transaction

Click Send, paste any other address, and submit. MetaMask will:
  1. Call eth_estimateGas — the node simulates and returns the gas.
  2. Call eth_gasPrice — the node returns 1 gwei.
  3. Ask you to confirm the EIP-1559 fee structure.
  4. Submit via eth_sendRawTransaction.
The tx hash appears immediately; the receipt is available within ~2s.

Troubleshooting

The testnet is plain HTTP. Some MetaMask installations (especially the mobile app or stricter browser profiles) block cleartext HTTP. Work around by using the web wallet or waiting for the HTTPS rollout.
Check eth_getTransactionCount for your address — if the nonce already matches the pending tx, the block was produced but MetaMask is polling slowly. Open the explorer and search the hash directly.
Root cause (confirmed against MetaMask source, 2026-05-22): MetaMask’s “Insufficient funds” alert reads from AccountTrackerController’s per-chainId Redux cache, not from a live eth_getBalance. For custom chains added via the “Add Network” flow, that cache stays at 0x0 until MetaMask’s polling kicks in — which only happens after you open the MetaMask popup on that network.If you’ve only interacted with YouthChain through the dashboard and never opened the MetaMask popup on YouthChain Testnet, the cache is empty and any tx will be flagged “Insufficient” no matter how much native YCE you have on-chain.Fix:
  1. Click the MetaMask icon in your browser toolbar.
  2. Select YouthChain Testnet from the network dropdown.
  3. Wait for the balance to appear under the network name (1–2 seconds).
  4. Return to the dashboard and click Claim again — it will succeed.
The dashboard signAndSend flow attempts a wallet_switchEthereumChain + eth_getBalance via the MM provider before every send to pre-warm the cache. If you’re still hitting the alert, the workaround above always works.Gasless fallback: the YCR Rewards tab has a secondary “Claim gasless” button that uses /api/mobile/claim and the oracle wallet — no signature needed. This is a testnet-only affordance; on mainnet you’ll always pay your own gas.
The dashboard card labeled “YCE Balance” shows the ERC-20 YCEToken balance (0x6a22…) — what you hold in the application token. Gas fees are paid in native YCE (the ledger account, returned by eth_getBalance). MetaMask shows that one under the YouthChain Testnet header. They can — and on a fresh wallet, will — differ by orders of magnitude.