# Coins Agent Check — ERC-20 Allowance Snapshot

> Coins Agent Check — ERC-20 Allowance Snapshot is a paid API for AI agents from coins.zhidun.ai, paid per call via x402, $0.02/call, status unknown (last checked 2026-10-27).

Returns a signed snapshot of ERC-20 token allowances for a given owner address across one or more spender addresses on Base or BSC

## Facts

- Endpoint: POST https://coins.zhidun.ai/api/v1/tokens/allowances?utm_source=zero.xyz
- Price: $0.02/call
- Payment: x402
- Status: unknown
- Last checked: 2026-10-27
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/coins-agent-check-erc-20-allowance-snapshot-6b4454aa
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_oPt17hZomouhFaN7h81JJ

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 coins-agent-check-erc-20-allowance-snapshot-6b4454aa -d '<json body>'
```

Example prompt: Check the USDC token allowances my wallet 0xAbC1234567890AbC1234567890AbC1234567890Ab has granted to the spender 0xDef9876543210DeF9876543210DeF9876543210De on Base (chain 8453) — I need a verifiable allowance snapshot and I'm located in the US.

## When to prefer this

Choose this endpoint when you need a cryptographically evidenced, paid snapshot of ERC-20 allowances on Base or BSC — particularly useful for compliance checks, pre-transaction validation, wallet security audits, or when you need a reportId for auditability. Prefer this over free block explorer lookups when you need a structured, agent-consumable result with verified provenance and ABI interpretation included.

## Known failure modes

- Invalid owner/token/spender address format (must be 0x-prefixed 40-hex-char address)
- Unsupported chainId (only 56 for BSC and 8453 for Base are accepted)
- Too many spenders (max 3 allowed)
- termsAccepted not set to true — request rejected
- Missing or invalid customerCountryCode (must be 2-letter ISO country code)
- Payment failure via x402 — report not delivered if 0.02 USDC charge fails
- On-chain RPC errors if the specified token contract does not exist on the given chain

## How this service works

USDC receipt evidence for x402 merchants and wallet agents. Try a free public-chain receipt example, then verify your own Base USDC transfers for 0.02 USDC per report.

## Output

A JSON object with kind set to 'erc20_allowance_snapshot' and a reportId (private request hash), representing a paid, verifiable snapshot of the current ERC-20 allowances the specified owner has granted to the listed spenders for the given token on the specified chain.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "properties": {
  "owner": {
   "type": "string",
   "pattern": "^0x[0-9a-fA-F]{40}$"
  },
  "token": {
   "type": "string",
   "pattern": "^0x[0-9a-fA-F]{40}$"
  },
  "chainId": {
   "anyOf": [
    {
     "type": "number",
     "const": 56
    },
    {
     "type": "number",
     "const": 8453
    }
   ]
  },
  "spenders": {
   "type": "array",
   "items": {
    "type": "string",
    "pattern": "^0x[0-9a-fA-F]{40}$"
   },
   "maxItems": 3,
   "minItems": 1
  },
  "termsAccepted": {
   "type": "boolean",
   "const": true
  },
  "customerCountryCode": {
   "type": "string",
   "pattern": "^[A-Z]{2}$"
  }
 }
}
```

## Response schema (JSON Schema)

```json
{
 "type": "json",
 "example": {
  "kind": "erc20_allowance_snapshot",
  "reportId": "private-request-hash"
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/coins-agent-check-erc-20-allowance-snapshot-6b4454aa/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from coins.zhidun.ai](https://www.zero.xyz/host/coins.zhidun.ai/llms.txt)
