Skip to main content

Supported chains and tokens

Managed wallets support the following chains. Each chain has its own set of supported tokens and ERC-3009 availability (required for x402 payments).

Supported chains

ChainChain IDTokensx402 (ERC-3009)MPPTestnet
Base8453USDCBase Sepolia (84532)
Ethereum1USDC, USDTSepolia (11155111)
Optimism10USDCOP Sepolia (11155420)
Arbitrum42161USDCArbitrum Sepolia (421614)
Polygon137USDCPolygon Amoy (80002)
Tempo4217USDC.eTempo testnet
ERC-3009 support is required for x402 payments. All EVM chains listed support ERC-3009 via USDC (Circle’s USDC implements ERC-3009). Tempo uses its own payment protocol (MPP) — x402 is not supported on Tempo. MPP is not supported on any chain other than Tempo.

Using the Chain enum

import { Chain, Token } from '@prudra/core';

// Provision on Base
await provisionWallet({
  chain:           Chain.BASE,
  supportedTokens: [Token.USDC],
});

// Provision on Tempo
await provisionWallet({
  chain:           Chain.TEMPO,
  supportedTokens: [Token.USDC_E],
});

Testnet mode

In development, set network: 'testnet' when provisioning:
await provisionWallet({
  chain:           Chain.BASE,
  supportedTokens: [Token.USDC],
  network:         'testnet',   // uses Base Sepolia
});
With PAYMENT_STUB_MODE=true, testnet RPC is used and payments are simulated — no real tokens needed.

Active chain limits

The number of active chains (chains with at least one wallet) is plan-limited:
PlanActive chains
Hobby1
Pro5
EnterpriseUnlimited
A chain becomes “active” when you provision a wallet on it. Deprovisioning a wallet frees the chain slot.

USDC.e on Tempo

USDC.e is the Tempo bridged version of USDC. It uses the same ERC-20 interface as USDC but on the Tempo network. For MPP payments, agents send USDC.e to the server wallet — the Prudra middleware verifies the Tempo transaction before proceeding.