Skip to Content
ArchitectureMultichain Support

Multichain Support

Supported Chains

FluxPay supports 9 chains — 8 mainnets (1Shot-supported) and 1 testnet:

ChainChain IDUSDC AddressTestnet
Ethereum10xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48No
Base84530x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913No
Arbitrum421610xaf88d065e77c8cC2239327C5EDb3A432268e5831No
Optimism100x0b2C639c533813f4Aa9D7837CAf62653d097Ff85No
Polygon1370x3c499c542cEF5E3811e1192ce70d8cC03d5c3359No
BNB Chain560x8ac76a51cc950d9822d68b83fe1ad97b32cd580dNo
Linea591440x176211869cA2b568f2A7D4EE941E073a821EE1ffNo
Scroll5343520x06eFdBFf2a14a7c8E15944D1F4A48F9F95F663A4No
Base Sepolia845320x036CbD53842c5426634e7929541eC2318f3dCF7eYes

Network Selection

Control which chain the backend runs on with two environment variables:

Env VarPurposeDefault
NETWORK_MODEmainnet or testnetmainnet → Base (8453)
ACTIVE_CHAIN_IDPin a specific chainBase (mainnet) / Base Sepolia
RPC_<chainId>Custom RPC URL per chainPublic RPCs

Examples

# Base mainnet (default for production) NETWORK_MODE=mainnet # Base Sepolia testnet (for development) NETWORK_MODE=testnet # Pin to Arbitrum specifically ACTIVE_CHAIN_ID=42161

The active chain drives the agent RPC, USDC address, faucet, and redeem chain. Flip one env var and the whole backend moves networks.

Settlement Paths

The release path depends on the active network — 1Shot does not support testnets, so Base Sepolia redeems directly:

Chain Registry

All chain definitions live in backend/src/config/chains.ts — a single source of truth. USDC addresses are sourced from 1Shot’s getCapabilities response.

Last updated on