LogoLogo
WalletsEcosystemStart BuildingJoin the Community
  • Welcome to IoTeX 2.0
    • 💡Why IoTeX
    • 🪙Tokenomics
      • IOTX Utility in IoTeX 2.0
      • IOTX Emission, Deflation, and Re-Staking
    • 📖Whitepaper
    • ⚡Get Started
  • DePIN Infra Modules (DIM)
    • DIMs Overview
    • [IoTeX L1] DePIN Blockchain
      • Core Concepts
        • Consensus Mechanism
        • Voters and Delegates
        • Ethereum Virtual Machine
        • Accounts & Identities
        • Blockchain Actions
        • ERC20 and NFT Tokens
        • Smart Contracts
        • Interoperability
        • Governance
      • The IOTX Token
        • IOTX Token Exchange Support
        • Different Formats of the IOTX Token
        • IOTX Token Contracts
      • Wallets
        • Supported Wallet Apps
          • ioPay Mobile
          • IoTeX Web Wallet
          • OKX Wallet
          • Rabby Wallet
          • Metamask Desktop
          • Ledger Nano S & X
            • Use Ledger with Metamask
            • Use Ledger with Rabby Walet
            • Use Ledger with IoTeX Hub Portal
            • Migrate to the Ethereum Ledger App
          • IoTeX Desktop Wallet
          • 👩‍💻IoTeX HD Derivation Path
        • Buy IOTX Tokens
        • Execute Transactions
          • Transfer IOTX Tokens
          • Transfer ERC20 Tokens
          • Interact with Dapps
          • Explore transactions
        • Migrate Assets to a different wallet
      • Staking & Governance
        • About IoTeX Staking
        • IoTeX Staking Guide
          • Native staking
          • Staking as NFT
        • Join the Governance
          • Marshall DAO
          • Improvement Proposals
      • Exchange Integration
      • 👨‍💻Deploy Dapps on IoTeX
    • [ioID] DePIN Identities
      • ioID Specification
      • Overview of ioID
      • Registering Identities
      • 👩‍💻Integration Guide
        • Register a DePIN Project
        • Bind your Device NFT
        • Reserve Device ioIDs
        • Query Project Status
        • Register a Device
        • ioID Smart contracts quick reference
    • [W3bstream] DePIN Verification
      • Overview of W3bstream
      • Multi-Prover Architecture
      • 👨‍💻Build with W3bstream
        • Get Started
          • Sequencer Options
        • Build the Prover Code
          • Risc Zero
          • Halo2
          • zkWASM
        • Deploy to W3bstream
          • Create the Project File
          • W3bstream Outputs
          • Deploying Projects
          • Interacting with Projects
        • On-chain integration
          • Verify Risc0 Proofs
          • Verify Halo2 Proofs
          • Verify zkWASM profs
        • Sending Messages
      • 👩‍💻Node Operators
        • Configure a ZK Prover Node
        • Register your Node
    • [ioID-SDK] Hardware SDK
      • ioID-SDK Overview
      • Layered Architecture
      • Compatibility
      • Current Development Status
    • [MSP] Modular Security Pool
    • Third-Party DIMs
      • Data Sequencer Infras
      • Data Availability Infras
      • 👨‍💻W3bstream Tasks
  • Ecosystem
    • Assets on IoTeX
      • Mainstream Assets
      • IOTX and Derivatives
      • DePIN Tokens
      • MEME Coins
    • iotube Bridge
    • iotexscan Explorer
    • Ecosystem Apps
      • DePINScan
      • mimo DEX
      • ecosystem.iotex.io
    • "Powered by IoTeX" Devices
      • Pebble Tracker
        • Quick Start
        • Device Registration
        • Online Firmware Update
        • USB Firmware Update
        • Migrating to Pebble v2.0
          • 1.0 Device Registration
        • Tech Specs
        • Network Selection
        • Pebble Configuration
        • Query Pebble Data
        • Troubleshooting
        • Firmware Development
          • Hardware Setup
          • Build the Firmware
          • Flash the firmware
      • SenseCAP Indicator
      • UCam Home Camera
  • Builders
    • IoTeX Developer Portal
    • Dev Chat on Discord
    • Web3 Development
      • RPC Endpoints
      • Set up your Environment
      • Get Testnet IOTX Tokens
      • ioctl CLI
        • Installation
        • Create Accounts
        • Blockchain interaction
          • ioctl command reference
      • Chain Indexing
        • The Graph
        • SubQuery
        • IoTeX Analytics API
      • IoTeXscan API
      • Deterministic Deployment
      • Account Abstraction
        • Components of AA
        • 👩‍💻Creating new Accounts
        • 👨‍💻P256Account Example
      • Blob Transactions (EIP-4844)
      • Multicall3
      • EVM Precompiled Contracts
    • Building DePINs
      • ioID Step by Step Tutorial
        • Integrate ioID in the Device Firmware
        • Integrate ioID in your cloud
      • Decentralized WiFi Connectivity (DeWi)
        • Project Specification
        • The choice of Hardware
        • The Data API Service
        • DePIN Incentives Contract
    • Building DeFi
      • Deploy Tokens
        • Deploy an ERC20 Token
        • Deploy an NFT Token
      • Price Oracles
        • Chainlink Relayer
        • SupraOracles
      • Integrate IoTeX Staking
      • Liquid staking Dapps
    • Launch Dapps on IoTeX
      • Submit Tokens to the IoTeX Ecosystem
      • Submit tokens to the iotube bridge
      • Verify Smart Contracts
      • Audit your Contracts
      • Submit your Dapp to Portals
      • Useful tools
    • Node Operators
      • Fastblocks (Node as a Service)
      • Setup an IoTeX RPC Node
      • Run a Delegate Node
      • Rosetta API
    • Reference Docs
      • ioctl client
        • Accounts
        • HD Wallets
        • Aliases
        • Actions
        • Queries
        • Smart Contracts
        • Staking & Voting
        • Tokens
        • ioID Identities
        • W3bstream
        • Decentralized Identifiers (DID)
        • JWT Auth Tokens
      • Native IoTeX Development
        • IoTeX gRPC API
        • Account Cryptography
        • Address Conversion
        • Create Accounts
        • Estimate Gas Price
        • Make IOTX Transfers
        • Manage ERC20 Tokens
        • Smart Contract Interactions
        • ioPay Desktop
        • DID JWT Tokens
        • Calling any RPC method
      • Embedded Blockchain Clients
        • Arduino IDE
        • Linux Systems
        • PlatformIO
        • Examples
        • Tutorials
  • Participate
    • Crypto's Got Talent (CGT)
      • IoTeX x Polygon DePIN Grant
    • Governance
      • IoTeX Improvement Proposals
      • The Marshall DAO
    • Join the Community
    • Get in Touch
Powered by GitBook
LogoLogo

This documentation portal is currently undergoing updates to align with the IoTeX 2.0 Whitepaper release. Information provided here may be incomplete, or out-of-date. Please use this portal for preliminary reference only, and check out the official IoTeX 2.0 Whitepaper for updated information.

  • .

2025 | IoTeX

On this page
  • 1. Overview of IoTeX and $IOTX Token
  • 2. Blockchain Basics and Compatibility
  • IoTeX Mainnet Information
  • IoTeX Testnet Information
  • 3. Wallet Integration
  • To integrate $IOTX into your platform’s wallet
  • 4. Node Setup and API Endpoints
  • Full Node Setup
  • Public RPC Endpoints
  • 5. Deposits and Withdrawal
  • Deposit Flow
  • Withdrawal Flow
  • 6. Trading and Smart Contract Integration
  • Smart Contract Compatibility
  • 7. Listing $IOTX
  • 8. Security Considerations
  • 8. Support and Contact

Was this helpful?

Export as PDF
  1. DePIN Infra Modules (DIM)
  2. [IoTeX L1] DePIN Blockchain

Exchange Integration

PreviousImprovement ProposalsNextDeploy Dapps on IoTeX

Last updated 6 months ago

Was this helpful?

This guide will walk you through the process of integrating the IoTeX token ($IOTX) on your exchange. Since IoTeX is fully Ethereum-compatible, most integration steps will resemble those of any EVM blockchain. Below are the detailed steps, requirements, and resources necessary for seamless integration.

If you require further assistance, please don’t hesitate to .

1. Overview of IoTeX and $IOTX Token

IoTeX is a leading decentralized layer-1 blockchain, focused on enabling decentralized physical infrastructure networks (DePIN). The IoTeX native token, $IOTX, powers the IoTeX ecosystem by facilitating blockchain transactions, staking, governance, as well as data computing and identities management for DePINs.

• Token Name: IoTeX

• Ticker Symbol: IOTX

• Blockchain: IoTeX Mainnet

• Standard: Native Protocol Token

2. Blockchain Basics and Compatibility

IoTeX Mainnet Information

• Network Name: IoTeX Mainnet

• Chain ID: 4689

• Symbol: IOTX

• RPC URL: https://babel-api.mainnet.iotex.io (see )

• Explorer URL:

IoTeX Testnet Information

• Network Name: IoTeX Testnet

• Chain ID: 4690

• Symbol: IOTX

Since IoTeX is fully compatible with Ethereum’s virtual machine (EVM), exchanges can use familiar Ethereum tools and libraries (such as Web3.js, Ethers.js, and Truffle) for $IOTX integration.

3. Wallet Integration

To support deposits and withdrawals for $IOTX, exchanges need to implement wallet integration. As IoTeX is fully Ethereum-compatible, most Ethereum-compatible wallets (such as MetaMask, Trust Wallet, and hardware wallets like Ledger) will work seamlessly for managing $IOTX tokens.

To integrate $IOTX into your platform’s wallet

• Use Ethereum-compatible libraries like Web3.js or Ethers.js to interact with the IoTeX blockchain.

• Set the correct RPC endpoint to ensure interaction with the IoTeX blockchain.

Example:

const Web3 = require('web3');
const web3 = new Web3('https://babel-api.mainnet.iotex.io');

// Query the balance of an address
web3.eth.getBalance('0x4d8a5c5b52f45fcfd2ce7eea58390b214909ef24').then(console.log);

4. Node Setup and API Endpoints

Exchanges can either use public RPC endpoints for convenience, or set up their own IoTeX nodes for higher reliability and security.

Running your own node ensures maximum control over latency, security, and performance.

Full Node Setup

Public RPC Endpoints

5. Deposits and Withdrawal

Deposit Flow

First-Time Integration of IoTeX Blockchain

To integrate $IOTX deposits:

  1. Generate a 0x Deposit Address: Use any Web3 tool to create a deposit address for users.

  2. Address Display: Show the 0x address as the primary option, with the io1 as an alternative.

  3. Transaction Confirmations: Confirm transactions according to your policy, noting that IoTeX transactions are final after the first block.

Existing IoTeX Integration
  1. If you support Multiple Networks: Ensure users can select the IoTeX blockchain as the deposit network.

  2. Address Display: Present the 0x address as the primary option and the io1 as an alternative.

  3. Transaction Confirmations: Confirm transactions according to your policy, noting that IoTeX transactions are final after the first block.

Withdrawal Flow

To integrate $IOTX withdrawals:

First-Time Integration of IoTeX Blockchain
  1. Input Recipient Address: Allow users to input withdrawal addresses in either 0x or io1 formats.

  2. Send Transactions: Use the Ethereum-compatible eth_sendTransaction API with your preferred Web3 tool to generate and send withdrawal transactions.

Existing IoTeX Integration
  1. Network Selection: Ensure users can select the IoTeX Native blockchain for withdrawals if you support multiple networks.

  2. Input Recipient Address: Accept both 0x and io1 formats for the withdrawal address.

  3. Send Transaction: Generate and send the withdrawal transaction using the Ethereum-compatible eth_sendTransaction API with your preferred Web3 tool or the IoTeX native API/SDK based on your configuration.

Use the correct gas price and gas limit based on IoTeX network conditions.

Example transaction code (using Web3.js):

const Tx = require('ethereumjs-tx').Transaction;
const privateKey = Buffer.from('your_private_key', 'hex');

const txData = {
  nonce: web3.utils.toHex(txCount),
  gasLimit: web3.utils.toHex(21000),
  gasPrice: web3.utils.toHex(web3.utils.toWei('10', 'gwei')),
  to: 'recipient_address',
  value: web3.utils.toHex(web3.utils.toWei('1', 'ether')),
  chainId: 4689, // IoTeX Mainnet Chain ID
};

const tx = new Tx(txData);
tx.sign(privateKey);

const serializedTx = tx.serialize();
const rawTx = '0x' + serializedTx.toString('hex');
web3.eth.sendSignedTransaction(rawTx)
  .on('receipt', console.log);

6. Trading and Smart Contract Integration

Smart Contract Compatibility

Since IoTeX is EVM-compatible, it supports all Ethereum smart contracts, including those written in Solidity. If your exchange supports Ethereum-based trading, you can use the same mechanisms to enable $IOTX trading.

7. Listing $IOTX

To list $IOTX, use the following token details:

• Symbol: IOTX

• Decimals: 18

8. Security Considerations

• Private Key Management: Ensure private keys are stored securely (e.g., using HSMs, cold storage, or other secure key management systems).

• Multi-Sig Wallets: Implement multi-signature wallets for withdrawals to minimize the risk of unauthorized transactions.

• Monitoring and Alerts: Set up monitoring for large transactions, unusual activity, and sudden spikes in gas fees.

8. Support and Contact

For any issues or further questions regarding the $IOTX integration, feel free to contact the IoTeX team:

• Email: developers@iotex.io

• RPC URL: https://babel-api.testnet.iotex.io (see )

• Explorer URL:

Metamask-compatible wallets can also be automatically configured on the .

If you prefer to run your own full node, you can follow the .

• IoTeX Mainnet: https://babel-api.mainnet.iotex.io (see )

• IoTeX Testnet: https://babel-api.testnet.iotex.io (see )

Compute io1 Address: Since some users still use the older io1 address format, compute the corresponding io1 address (both addresses represent the same account and share the same private key - ).

Monitor Transactions: Use the or direct RPC queries to your full node to monitor the IoTeX blockchain for deposits.

Compute 0x Address: If you already use the native io1 format, always compute the corresponding 0x address too (both formats share the same private key and represent the same account - ).

Monitor Transactions: Use the or direct RPC queries to your full node to monitor the IoTeX blockchain for deposits.

Convert Address: If the user provides an io1 format address, convert it to 0x (see how to ).

Convert Address: Convert the recipient address to 0x if they provide io1, or convert it back if using the IoTeX native API ().

• Official Documentation:

• Developer Resources:

https://testnet.iotexscan.io
IoTeX Developer Portal
IoTeX full node setup guide
IoTeXscan API
IoTeXscan API
https://docs.iotex.io
IoTeX Developer Portal
https://iotexscan.io
reach out to our support team
more endpoints
more endpoints
more endpoints
more endpoints
Example UI for $IOTX deposit flow on the IoTeX Blockchain
see examples
see examples
convert IoTeX addresses
see examples