# VerifyOracle ERC20 Balance Checker

> VerifyOracle ERC20 Balance Checker is a paid API for AI agents from verify-oracle.run402.com, paid per call via x402, $0.001/call, status unknown (last checked 2026-10-22).

Returns the live on-chain ERC20 token balance (defaulting to USDC) for a given wallet address on Base Mainnet

## Facts

- Endpoint: GET https://verify-oracle.run402.com/api/erc20-balance?utm_source=zero.xyz
- Price: $0.001/call
- Payment: x402
- Status: unknown
- Last checked: 2026-10-22
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/verifyoracle-erc20-balance-checker-def24df5
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_gJzY_39kXOfKWskPCmc93

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 verifyoracle-erc20-balance-checker-def24df5
```

Example prompt: What's the current USDC balance on Base Mainnet for wallet 0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045?

## When to prefer this

Use this endpoint when you need a real-time, live on-chain ERC20 token balance for any wallet address on Base Mainnet, especially for USDC (the default). It is ideal when you need the balance in multiple formats (USD value, atomic units, formatted string) in a single call. Prefer this over generic blockchain explorers when you need a structured, machine-readable JSON response suitable for agent workflows, payment gating, or eligibility checks.

## Known failure modes

- Invalid or malformed wallet address returns an error response
- Non-existent or non-ERC20 contract address may return zero balance or an error
- Rate limiting or RPC node downtime could cause timeouts
- Payment failure (x402) prevents the call from being made
- Address with no token holdings returns a balance of 0 rather than an error

## How this service works

Live on-chain wallet balance and ERC20 balanceOf holdings on Base Mainnet (defaults to Base USDC 0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913).

## Output

Returns a JSON object with the wallet's token balance in multiple formats: human-readable balance, USD value, atomic units (e.g. 25500000 for USDC), decimals (6 for USDC), the queried contract address, chain ID (8453), network name (base-mainnet), the data source (base-mainnet-rpc), and a UTC timestamp of the lookup.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "$schema": "https://json-schema.org/draft/2020-12/schema",
 "required": [
  "input"
 ],
 "properties": {
  "input": {
   "type": "object",
   "required": [
    "type",
    "method"
   ],
   "properties": {
    "type": {
     "type": "string",
     "const": "http"
    },
    "method": {
     "enum": [
      "GET"
     ],
     "type": "string"
    },
    "queryParams": {
     "type": "object",
     "properties": {
      "wallet": {
       "type": "string",
       "description": "Alias for address"
      },
      "account": {
       "type": "string",
       "description": "Alias for address"
      },
      "address": {
       "type": "string",
       "description": "0x wallet address on Base (default vitalik.eth)"
      },
      "contract": {
       "type": "string",
       "description": "0x ERC-20 contract on Base (default USDC)"
      }
     }
    }
   },
   "additionalProperties": false
  },
  "output": {
   "type": "object",
   "required": [
    "type"
   ],
   "properties": {
    "type": {
     "type": "string"
    },
    "example": {
     "type": "object"
    }
   }
  }
 }
}
```

## Response schema (JSON Schema)

```json
{
 "type": "json",
 "example": {
  "usd": 25.5,
  "value": 25.5,
  "source": "base-mainnet-rpc",
  "address": "0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045",
  "balance": 25.5,
  "chainId": 8453,
  "network": "base-mainnet",
  "contract": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
  "decimals": 6,
  "timestamp": "2026-10-21T18:00:00.000Z",
  "atomicUnits": "25500000",
  "balanceNumber": 25.5,
  "balanceFormatted": "25.500000"
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/verifyoracle-erc20-balance-checker-def24df5/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from verify-oracle.run402.com](https://www.zero.xyz/host/verify-oracle.run402.com/llms.txt)
