BTX.supply Testnet Guide

Use this guide to add the WBTX testnet, request gas and wrapped test BTX, try WBTX in DeFi-style flows, generate a BTX deposit memo, and request a WBTX redeem.

All funds on this testnet are resettable and have no mainnet value. Do not send real BTX or mainnet ETH to these addresses.

Network Details

Sitehttps://btx.supply RPC URLloading... Chain IDloading... WBTX tokenloading... WBTX bridgeloading... API URLloading... Faucetloading...

Current Health

APIloading... Reserveloading... Oracleloading...

Use these signals before testing bridge actions, swaps, or liquidity positions.

1. Open the Dashboard and Check Status

  1. Open btx.supply.
  2. Confirm the status panel shows RPC URL https://rpc.btx.supply, chain ID 31337, the WBTX token, the WBTX bridge, and API status ok.
  3. If the API status is not ok, wait for the testnet status to recover before testing transactions.
BTX.supply live testnet status panel
The live status panel should show the RPC, API, token, bridge, and current block.

2. Add the Testnet to Your Wallet

  1. Install MetaMask or another injected EVM wallet.
  2. Click Connect Wallet on the dashboard and approve the site connection.
  3. When prompted, approve adding or switching to chain 31337. Use RPC URL https://rpc.btx.supply if adding the network manually.
  4. The gas token may appear as ETH in wallets because this is an Ethereum-compatible testnet.
Manual network values: chain name BTX.supply Testnet, chain ID 31337, currency symbol ETH, RPC URL https://rpc.btx.supply.

3. Get Testnet ETH and Wrapped Test BTX

  1. Paste your wallet address into Recipient address.
  2. Click Request Test Funds.
  3. Wait for the funded message, then refresh balance or reconnect your wallet. The faucet sends testnet ETH for gas plus WBTX.
BTX.supply faucet panel with recipient address
The faucet is the public source for gas and wrapped test BTX during this testnet phase.
curl -X POST https://api.btx.supply/api/v1/testnet/faucet \
  -H 'content-type: application/json' \
  --data '{"address":"0xYOUR_ADDRESS"}'

4. Use WBTX in DeFi Experiments

Once the faucet has funded a wallet, WBTX can be used like a normal 18-decimal ERC-20 on chain 31337. That means test apps can call balanceOf, transfer, approve, and transferFrom, then compose WBTX into DEX, lending, vault, treasury, and payment flows.

  1. Payments and treasuries: send WBTX between wallets or contracts, track balances, and redeem through the bridge when you want to test the BTX exit path.
  2. DEX markets: pair WBTX with a second test asset, seed liquidity, perform swaps, and observe how thin liquidity affects price and slippage.
  3. Lending and vaults: prototype collateral deposits, liquidation triggers, reserve checks, and oracle handling without using mainnet assets.
  4. Route testing: use WBTX as one hop in a test swap route, for example test USDC → WBTX → test WETH, once a router is deployed on this chain.
DeFi testing here is for software behavior only. Testnet pool prices, TWAPs, oracle outputs, rewards, and liquidity depth are synthetic or thin and should not be treated as market value.

5. Uniswap-Style Swaps and Liquidity

WBTX can work with Uniswap-style contracts because it is an ERC-20. The missing piece on this testnet is a canonical Uniswap deployment: the public Uniswap app and mainnet deployment addresses should not be assumed to work on chain 31337. Use a dedicated test deployment, scripts, or a custom integration.

  1. Deploy or select a DEX stack: deploy Uniswap v2, v3, or v4-compatible contracts to chain 31337. For v3, confirm the factory, router, WETH wrapper, position manager, and quoter addresses for this chain before using them.
  2. Create test assets: use WBTX plus a second test ERC-20 such as mock USDC, mock WETH, or a project token. Fund the same wallet with both tokens and gas.
  3. Create the pool: for v2-style pools, seed the pair through router addLiquidity. For v3-style pools, initialize the WBTX/test asset pool at a starting price and mint a position with NonfungiblePositionManager. For v4-style pools, initialize a PoolKey through PoolManager / PositionManager.
  4. Approve exact amounts: approve WBTX and the paired token to the router or position manager. Prefer exact test amounts over unlimited approvals.
  5. Swap with guardrails: use exact-input or exact-output swaps with a deadline and conservative slippage. In thin pools, small trades can move price sharply.
  6. Watch bridge state: use https://api.btx.supply/api/v1/reserve, /bridge, and /oracle alongside pool data. AMM price is not proof that WBTX is backed or redeemable.
WBTX tokensame as live endpoint above Decimals18 Current statusNo canonical Uniswap deployment is published for this testnet yet; deploy or connect a test DEX stack for pool testing. Useful Uniswap docsv2 liquidity, v2 swaps, v3 swaps, v3 liquidity, v3 deployments, v4 pool creation

V2-Style Recipe

  1. Call factory.getPair(WBTX, tokenB). If it returns zero, create the pair through the factory/router flow.
  2. Approve the router for exact WBTX and tokenB amounts.
  3. Seed liquidity with addLiquidity(WBTX, tokenB, amountWbtxDesired, amountBDesired, amountWbtxMin, amountBMin, recipient, deadline). The first LP sets the initial price, so choose the ratio deliberately.
  4. Swap with swapExactTokensForTokens(amountIn, amountOutMin, path, recipient, deadline). Example paths are [WBTX, mockUSDC] or [mockUSDC, WBTX, tokenC].
  5. Remove liquidity by approving the LP token to the router and calling removeLiquidity.

V3-Style Recipe

  1. Deploy or locate the v3 factory, swap router or Universal Router, NonfungiblePositionManager, quoter, and WETH wrapper for chain 31337.
  2. Sort WBTX and the paired token into token0/token1, choose a fee tier such as 500, 3000, or 10000, and initialize the pool with sqrtPriceX96.
  3. Approve both tokens to NonfungiblePositionManager, then mint with MintParams: token pair, fee, tick range, desired token amounts, minimum token amounts, recipient, and deadline.
  4. Swap with exactInputSingle or exactOutputSingle. Never leave amountOutMinimum or token minimums at zero in production-like tests.
  5. For route tests, encode v3 multi-hop paths as tokenIn, fee, intermediateToken, fee, tokenOut.

V4-Style Notes

  1. v4 pools live under a singleton PoolManager and are identified by a PoolKey: sorted currencies, fee, tick spacing, and hook address.
  2. Create and initialize through PoolManager/PositionManager, then add liquidity through position-manager actions such as mint position and settle pair.
  3. Swaps commonly route through Universal Router v4 commands. Hooks can change pool behavior, so document every hook used in a WBTX pool.
Keep BTX bridge math out of pool math. Pools see WBTX as an 18-decimal ERC-20. BTX L1 has 8 decimals, and the bridge handles the 1 satoshi = 10,000,000,000 WBTX-unit conversion.

6. Test BTX to WBTX Deposit Memo Generation

  1. Paste the Ethereum recipient that should receive WBTX.
  2. Enter the BTX amount using 8-decimal BTX units.
  3. Copy the generated OP_RETURN memo. The memo binds recipient, amount, and chain ID, so regenerate it if any value changes.
BTX deposit memo panel with recipient, amount, and OP_RETURN memo
The memo binds recipient, amount, and chain ID, so regenerate it if any value changes.
For public testers today, the faucet is the fastest way to get WBTX. The memo view is included so integrators can inspect the exact deposit payload before broader BTX deposit testing opens.

7. Request WBTX to BTX Redeem

  1. Use a funded wallet with WBTX and gas on chain 31337.
  2. Enter the WBTX amount to redeem.
  3. Leave destination type as P2MR scriptPubKey unless a tester guide gives you a different destination.
  4. Click Approve & Request Redeem. Your wallet signs two transactions: WBTX approval, then bridge redeem request.
WBTX redeem panel with amount and P2MR destination
Redeem requests become pending on the bridge immediately and are visible through the dashboard and API.

8. Verify From the API or RPC

  1. Use the reserve endpoint to confirm WBTX backing and pending bridge state.
  2. Use the bridge endpoint to check pending withdrawals and unresolved claims.
  3. Use the RPC endpoint for raw Ethereum JSON-RPC checks against the same testnet.
curl -s https://api.btx.supply/api/v1/reserve | jq .
curl -s https://api.btx.supply/api/v1/bridge | jq .
curl -s -X POST https://rpc.btx.supply \
  -H 'content-type: application/json' \
  --data '{"jsonrpc":"2.0","id":1,"method":"eth_chainId","params":[]}' | jq .

9. Risk Checklist for DeFi Tests

  1. Testnet funds: public testnet BTX/WBTX has no monetary value, may be reset, and may be lost without recovery. Do not use production private keys or wallets holding real assets.
  2. Approvals: verify chain ID, RPC URL, token address, and spender before approving. Prefer exact-amount approvals and revoke unused allowances.
  3. Liquidity pools: LP positions are not safe deposits. They can lose value from price movement, thin liquidity, contract bugs, pauses, hooks, and bridge risk controls.
  4. Oracles and prices: testnet TWAPs, depth, and oracle outputs may be stale, synthetic, or easy to manipulate. Do not rely on them as real market prices.
  5. MEV, slippage, and impermanent loss: public mempools and thin pools can produce bad execution, failed swaps, and large price movement. Use small amounts and conservative slippage.
  6. Mainnet differences: future contracts, addresses, fees, liquidity, oracle sources, pause controls, and exit mechanics may differ. Testnet participation does not imply rewards, allocations, or mainnet availability.