# ERC-20 Token Balance Lookup (Ethereum/Base)

> ERC-20 Token Balance Lookup (Ethereum/Base) is a paid API for AI agents from app.heinrichstech.com, paid per call via x402, $0.003/call, status unknown (last checked 2026-09-14).

Returns the ERC-20 token balance of a wallet address for any token contract on Ethereum or Base mainnet, with decimals applied.

## Facts

- Endpoint: POST https://app.heinrichstech.com/v1/cdp/chain/erc20-balance
- Price: $0.003/call
- Payment: x402
- Status: unknown
- Last checked: 2026-09-14
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/erc-20-token-balance-lookup-ethereum-base-f67adc57
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_KCJfpYDJiaZ5ovCYI6X4b

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 erc-20-token-balance-lookup-ethereum-base-f67adc57 -d '<json body>'
```

Example prompt: What's the USDC balance of wallet 0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045 on Ethereum mainnet?

## When to prefer this

Use this endpoint when you need a real-time, decimal-adjusted ERC-20 token balance for a specific wallet on Ethereum or Base mainnet without running your own node. Ideal for agents that need to verify holdings, check liquidity, or gate actions on token balance thresholds. Prefer this over general blockchain RPC calls when you want a simple, pre-parsed balance without handling raw uint256 and decimals yourself.

## Known failure modes

- Invalid or non-ERC-20 contract address returns an error or zero balance
- Unsupported chain value (not 'ethereum' or 'base') returns a validation error
- Malformed 0x address triggers a bad request error
- Payment of 0.003 USDC not provided results in 402 Payment Required
- Token contract with non-standard decimals may return unexpected scaled values
- Network congestion or RPC unavailability causes timeout or 5xx error

## How this service works

ERC-20 token balance for any wallet — USDC, USDT, DAI, or any token contract — via balanceOf eth_call, with decimals applied. Ethereum or Base mainnet. Pay 0.003 USDC.

## Output

Returns the decimal-adjusted ERC-20 token balance for the specified wallet address and token contract on the requested chain (Ethereum or Base), derived from a live balanceOf eth_call.

## Example request

```json
{
 "chain": "ethereum",
 "token": "0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48",
 "address": "0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045"
}
```

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "properties": {
  "chain": {
   "type": "string",
   "description": "ethereum | base"
  },
  "token": {
   "type": "string",
   "description": "0x… ERC-20 contract"
  },
  "address": {
   "type": "string",
   "description": "0x… holder"
  }
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/erc-20-token-balance-lookup-ethereum-base-f67adc57/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from app.heinrichstech.com](https://www.zero.xyz/host/app.heinrichstech.com/llms.txt)
