# OneSource ERC20 Token Balance Lookup

> OneSource ERC20 Token Balance Lookup is a paid API for AI agents from skills.onesource.io, paid per call via x402, $0.003/call, status unknown (last checked 2026-10-11).

Fetches the ERC20 token balance (name, symbol, decimals, raw balance) for any Ethereum wallet address on multiple chains via live RPC eth_call

## Facts

- Endpoint: GET https://skills.onesource.io/api/chain/erc20-balance?utm_source=zero.xyz
- Price: $0.003/call
- Payment: x402
- Status: unknown
- Last checked: 2026-10-11
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/skills-onesource-io-56ffd389
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_KFBMUj2pLvXD0EebnJSE1

Status and success rate cover calls made through Zero and Zero's own probes. Third-party monitors may report differently.

## How to call it through Zero

Zero handles the 402 payment challenge and records the run. With the Zero CLI installed (`npm i -g @zeroxyz/cli`):

```sh
zero fetch --capability skills-onesource-io-56ffd389
```

Example prompt: What's the DAI balance for wallet 0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045 on Ethereum mainnet? The DAI contract is 0x6B175474E89094C44Da98b954EedeAC495271d0F.

## When to prefer this

Use this endpoint when you need the ERC20 token balance for a specific wallet on Ethereum or supported EVM chains (Base, Avalanche, Sepolia, MegaETH). It returns rich token metadata (name, symbol, decimals) alongside the balance in a single call, making it ideal for DeFi agents, portfolio trackers, or any workflow that needs to verify or display token holdings. Prefer over generic RPC calls when you want structured, decoded output without writing raw ABI calls.

## Known failure modes

- Invalid token address format (not a valid 0x hex address) — likely 400 or validation error
- Invalid account address format — likely 400 or validation error
- Unsupported network value not in enum — validation error
- Contract address is not an ERC20 token — may return zero or error from eth_call
- RPC node unavailable or rate-limited — 503 or timeout
- Payment not made / x402 payment required — 402 response blocking the call

## How this service works

ERC20 token balance for any Ethereum wallet - USDC, USDT, DAI, or any token - via balanceOf (eth_call) on OneSource live Ethereum RPC

## Output

Returns the token's name, symbol, decimals, raw balance (as a big integer string), the queried account address, and the contract address. For example: {name: 'Dai Stablecoin', symbol: 'DAI', balance: '544444444444444488', decimals: 18, contract_address: '0x6B...', account: '0x12...'}.

## Example request

```json
{
 "token": "0x6B175474E89094C44Da98b954EedeAC495271d0F",
 "account": "0x1234567890123456789012345678901234567890",
 "network": "ethereum"
}
```

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "properties": {
  "token": {
   "type": "string",
   "pattern": "^0x[a-fA-F0-9]{40}$"
  },
  "account": {
   "type": "string",
   "pattern": "^0x[a-fA-F0-9]{40}$"
  },
  "network": {
   "enum": [
    "ethereum",
    "sepolia",
    "avax",
    "megaeth",
    "megaeth-testnet",
    "base"
   ],
   "type": "string",
   "default": "ethereum"
  }
 }
}
```

## Response schema (JSON Schema)

```json
{
 "type": "object",
 "required": [
  "data",
  "meta"
 ],
 "properties": {
  "data": {
   "type": "object",
   "required": [
    "name",
    "symbol",
    "account",
    "balance",
    "decimals",
    "contract_address"
   ],
   "properties": {
    "name": {
     "type": "string"
    },
    "symbol": {
     "type": "string"
    },
    "account": {
     "type": "string"
    },
    "balance": {
     "type": "string"
    },
    "decimals": {
     "type": "number"
    },
    "contract_address": {
     "type": "string"
    }
   }
  },
  "meta": {
   "type": "object",
   "required": [
    "endpoint",
    "request_id"
   ],
   "properties": {
    "endpoint": {
     "type": "string"
    },
    "request_id": {
     "type": "string"
    }
   }
  }
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/skills-onesource-io-56ffd389/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from skills.onesource.io](https://www.zero.xyz/host/skills.onesource.io/llms.txt)
