Skip to main content
This page is the complete network reference for IFÁ Labs deployments. Use it when configuring wallets, development tools, deploy scripts, monitoring infrastructure, or MCP server connections.

Supported Networks

Base Mainnet

The primary production deployment. All protocol integrations should target Base Mainnet.
ParameterValue
Network NameBase
Chain ID8453
RPC URLhttps://mainnet.base.org
WebSocket URLwss://mainnet.base.org
CurrencyETH
Block Explorerbasescan.org
Oracle Address0xA9F17344689C2c2328F94464998db1d3e35B80dC
Oracle on BasescanView contract
Read ContractRead functions
Event LogPriceUpdated events
StatusLive ✓

Base Sepolia

The recommended testnet for all EVM development and testing. Mirror of Base Mainnet with identical oracle interface and asset IDs.
ParameterValue
Network NameBase Sepolia
Chain ID84532
RPC URLhttps://sepolia.base.org
WebSocket URLwss://sepolia.base.org
CurrencyETH (test)
Block Explorersepolia.basescan.org
Oracle Address0xbF2ae81D8Adf3AA22401C4cC4f0116E936e1025b
Oracle on BasescanView contract
Read ContractRead functions
Faucetbase.org/faucet
StatusTestnet

AssetChain Testnet

Early integration deployment for the AssetChain RWA-focused ecosystem. Oracle interface and asset IDs are identical to Base deployments.
ParameterValue
Network NameAssetChain Testnet
Chain ID42421
RPC URLhttps://enugu-rpc.assetchain.org
CurrencyTest Token
Block Explorerscan-testnet.assetchain.org
Oracle Address0xBAc31e568883774A632275F9c8E7A5Bd117000F7
Oracle on ExplorerView contract
StatusTestnet

Sui Testnet

IFÁ Labs oracle deployed as a native Sui Move package. The interface is different from EVM deployments — prices are read through shared objects rather than contract calls. See the Sui Integration Guide for Move-specific usage.
ParameterValue
Network NameSui Testnet
Network TypeNon-EVM — Sui Move
Explorersuiscan.xyz/testnet
Package ID0x99847c953ee11ca57b6d602494c914d7d82a2d42c4c8a80307331fead5b22c4a
Feed Object ID0x5d2728b862de08de767e4f8841a38c9452d951c0602e77fc47bfbb3ab03f33f0
Verifier Object ID0x028e5df554ac7d253a132c60bcd13cf32bea9eb8c81d04d685c2a31299fbe43b
Package on ExplorerView package
Faucetfaucet.sui.io
StatusTestnet
These object IDs were updated following a contract redeployment. If you have older IDs cached anywhere in your code, update them now — the previous deployment is stale.
On Sui, you interact with the Feed Object (IfaPriceFeed) to read prices — not the Package ID directly. The Package ID is only needed when importing the module in your own Move contracts. Pass the Feed Object ID when calling get_asset_info and related functions.
Sui Testnet also has a dedicated multi-token faucet for claiming testnet SUI and WAL tokens for development. See the Testnet Faucet page for claim instructions.

Upcoming Networks

NetworkChain IDStatusTarget
Sui MainnetN/APlannedTBD
AssetChain MainnetTBDPlannedTBD
SolanaN/APlannedTBD
Optimism10PlannedTBD
Arbitrum One42161PlannedTBD
Polygon zkEVM1101PlannedTBD
Contract addresses for upcoming deployments will be added to this page on launch day. Follow @ifalabs and join the Telegram for deployment announcements.

Adding Networks to Your Wallet

EVM Networks — MetaMask

Automatic — ChainList

The fastest method. Visit chainlist.org, search for “Base” or “AssetChain”, and click Add to MetaMask. The network parameters are added automatically.

Manual Configuration

In MetaMask → Settings → Networks → Add Network → Add a network manually:
        Network Name:    Base
        RPC URL:         https://mainnet.base.org
        Chain ID:        8453
        Currency Symbol: ETH
        Block Explorer:  https://basescan.org

Sui Network — Sui Wallet

Sui Testnet is available by default in the Sui Wallet browser extension. Switch networks using the network selector in the top-right corner of the wallet. For the Sui CLI, set your active environment to testnet:
sui client switch --env testnet
Verify the active environment:
sui client active-env

RPC Configuration for Development Tools

Foundry (foundry.toml)

[profile.default]
src  = "src"
out  = "out"
libs = ["lib"]

[rpc_endpoints]
base-mainnet       = "https://mainnet.base.org"
base-sepolia       = "https://sepolia.base.org"
assetchain-testnet = "https://enugu-rpc.assetchain.org"

# Or use environment variables for dedicated providers
# base-mainnet = "${BASE_MAINNET_RPC_URL}"
# base-sepolia = "${BASE_SEPOLIA_RPC_URL}"
Use in scripts and tests:
# Deploy to Base Mainnet
forge script script/Deploy.s.sol \
  --rpc-url base-mainnet \
  --broadcast

# Fork Base Mainnet for local testing
anvil --fork-url https://mainnet.base.org

Hardhat (hardhat.config.js)

require("@nomicfoundation/hardhat-toolbox");

module.exports = {
  networks: {
    "base-mainnet": {
      url:      process.env.BASE_MAINNET_RPC_URL ?? "https://mainnet.base.org",
      chainId:  8453,
      accounts: process.env.PRIVATE_KEY ? [process.env.PRIVATE_KEY] : [],
    },
    "base-sepolia": {
      url:      process.env.BASE_SEPOLIA_RPC_URL ?? "https://sepolia.base.org",
      chainId:  84532,
      accounts: process.env.PRIVATE_KEY ? [process.env.PRIVATE_KEY] : [],
    },
    "assetchain-testnet": {
      url:      "https://enugu-rpc.assetchain.org",
      chainId:  42421,
      accounts: process.env.PRIVATE_KEY ? [process.env.PRIVATE_KEY] : [],
    },
  },
  etherscan: {
    apiKey: {
      "base-mainnet": process.env.BASESCAN_API_KEY ?? "",
      "base-sepolia": process.env.BASESCAN_API_KEY ?? "",
    },
    customChains: [
      {
        network:  "base-mainnet",
        chainId:  8453,
        urls: {
          apiURL:     "https://api.basescan.org/api",
          browserURL: "https://basescan.org",
        },
      },
      {
        network:  "base-sepolia",
        chainId:  84532,
        urls: {
          apiURL:     "https://api-sepolia.basescan.org/api",
          browserURL: "https://sepolia.basescan.org",
        },
      },
    ],
  },
};

ethers.js / viem (EVM)

// ethers.js v6
import { ethers } from "ethers";

const PROVIDERS = {
  "base-mainnet":       new ethers.JsonRpcProvider("https://mainnet.base.org"),
  "base-sepolia":       new ethers.JsonRpcProvider("https://sepolia.base.org"),
  "assetchain-testnet": new ethers.JsonRpcProvider("https://enugu-rpc.assetchain.org"),
};
// viem
import { createPublicClient, http } from "viem";
import { base, baseSepolia } from "viem/chains";

const mainnetClient = createPublicClient({
  chain:     base,
  transport: http(),
});

const testnetClient = createPublicClient({
  chain:     baseSepolia,
  transport: http(),
});

Sui TypeScript SDK

import { SuiClient, getFullnodeUrl } from "@mysten/sui/client";

const suiTestnetClient = new SuiClient({
  url: getFullnodeUrl("testnet"),
});

// IFÁ Labs Sui Testnet object IDs
const IFA_SUI_TESTNET = {
  packageId:  "0x99847c953ee11ca57b6d602494c914d7d82a2d42c4c8a80307331fead5b22c4a",
  feedId:     "0x5d2728b862de08de767e4f8841a38c9452d951c0602e77fc47bfbb3ab03f33f0",
  verifierId: "0x028e5df554ac7d253a132c60bcd13cf32bea9eb8c81d04d685c2a31299fbe43b",
} as const;

Oracle Addresses by Network

Quick reference — all oracle addresses and object IDs in one place:
// EVM networks — contract addresses
export const IFA_ORACLE_ADDRESSES = {
  "base-mainnet":       "0xA9F17344689C2c2328F94464998db1d3e35B80dC",
  "base-sepolia":       "0xbF2ae81D8Adf3AA22401C4cC4f0116E936e1025b",
  "assetchain-testnet": "0xBAc31e568883774A632275F9c8E7A5Bd117000F7",
} as const;

export const IFA_RPC_URLS = {
  "base-mainnet":       "https://mainnet.base.org",
  "base-sepolia":       "https://sepolia.base.org",
  "assetchain-testnet": "https://enugu-rpc.assetchain.org",
} as const;

export const IFA_CHAIN_IDS = {
  "base-mainnet":       8453,
  "base-sepolia":       84532,
  "assetchain-testnet": 42421,
} as const;

// Sui Testnet — shared object IDs (updated after redeployment)
export const IFA_SUI_OBJECTS = {
  "sui-testnet": {
    packageId:  "0x99847c953ee11ca57b6d602494c914d7d82a2d42c4c8a80307331fead5b22c4a",
    feedId:     "0x5d2728b862de08de767e4f8841a38c9452d951c0602e77fc47bfbb3ab03f33f0",
    verifierId: "0x028e5df554ac7d253a132c60bcd13cf32bea9eb8c81d04d685c2a31299fbe43b",
  },
} as const;

Faucets

NetworkFaucetNotes
Base Sepoliabase.org/faucetOfficial — daily limit applies
Base Sepoliaalchemy.com/faucets/base-sepoliaRequires free Alchemy account
Base Sepoliafaucet.quicknode.com/base/sepoliaNo account required
Base Sepoliainfura.io/faucet/sepoliaRequires free Infura account
Sui Testnetfaucet.sui.ioOfficial Sui testnet faucet
Sui TestnetIFÁ Labs FaucetClaim testnet SUI and WAL tokens for oracle development
IFÁ Labs price reads are view calls on EVM and read-only shared object queries on Sui — neither costs gas. You only need testnet tokens if you are deploying your own contracts that consume IFÁ Labs feeds.

The public RPC endpoints listed above are suitable for development and low-frequency queries. For production monitoring, high-frequency scripts, or WebSocket event listeners, use a dedicated provider:
ProviderFree TierWebSocketNetworks
Alchemy300M compute units/monthBase, more
QuickNodeLimitedBase, Sui, more
Infura100K requests/dayBase, more
Ankr500 req/sBase, Sui, more
DrpcGenerous free tierBase, more
Configure your chosen provider in the MCP server:
ifa-mcp --network base-mainnet \
  --rpc-url https://base-mainnet.g.alchemy.com/v2/YOUR_API_KEY

Network Quick Reference Card

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
IFÁ LABS — NETWORK QUICK REFERENCE
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

BASE MAINNET (Production — EVM)
  Chain ID:  8453
  Oracle:    0xA9F17344689C2c2328F94464998db1d3e35B80dC
  RPC:       https://mainnet.base.org
  Explorer:  https://basescan.org

BASE SEPOLIA (Testnet — EVM)
  Chain ID:  84532
  Oracle:    0xbF2ae81D8Adf3AA22401C4cC4f0116E936e1025b
  RPC:       https://sepolia.base.org
  Explorer:  https://sepolia.basescan.org
  Faucet:    https://www.base.org/faucet

ASSETCHAIN TESTNET (Testnet — EVM)
  Chain ID:  42421
  Oracle:    0xBAc31e568883774A632275F9c8E7A5Bd117000F7
  RPC:       https://enugu-rpc.assetchain.org
  Explorer:  https://scan-testnet.assetchain.org

SUI TESTNET (Testnet — Sui Move)
  Package:   0x99847c953ee11ca57b6d602494c914d7d82a2d42c4c8a80307331fead5b22c4a
  Feed ID:   0x5d2728b862de08de767e4f8841a38c9452d951c0602e77fc47bfbb3ab03f33f0
  Verifier:  0x028e5df554ac7d253a132c60bcd13cf32bea9eb8c81d04d685c2a31299fbe43b
  Explorer:  https://suiscan.xyz/testnet
  Faucet:    https://faucet.sui.io

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Asset IDs are identical across all networks.
EVM: bytes32 hex  |  Sui: vector<u8> (same 32 bytes)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

Next Steps

Contract Addresses

Verified EVM contract addresses with block explorer links and deployment verification steps.

Sui Integration Guide

Read prices from the IFÁ Labs oracle on Sui using Move or the Sui TypeScript SDK.