# Coins Agent Check — Base USDC Receipt Verification

> Coins Agent Check — Base USDC Receipt Verification 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).

Verifies a Base chain (chainId 8453) USDC transfer by transaction hash, confirming recipient, payer, and minimum received amount, returning a signed receipt report.

## Facts

- Endpoint: POST https://coins.zhidun.ai/api/v1/payments/usdc-receipt?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-base-usdc-receipt-verification-fec3be5b
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_Io2vMdLnMOhNXXMWDESWT

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-base-usdc-receipt-verification-fec3be5b -d '<json body>'
```

Example prompt: Can you verify that the USDC payment with transaction hash 0x3a7f...c291 on Base (chain 8453) was received by 0xABC...123 from 0xDEF...456, with at least 1000000 raw USDC units transferred? I accept the terms.

## When to prefer this

Choose this endpoint when you need cryptographic, on-chain confirmation that a specific USDC transaction on Base mainnet was completed with a particular payer, recipient, and minimum amount. It is ideal for agent-to-agent payment verification, order fulfilment gating, or dispute resolution where a signed, auditable receipt report is needed. Prefer this over generic blockchain explorers when you need a structured, machine-readable verification response with a report ID for record-keeping.

## Known failure modes

- Invalid or malformed transaction hash returns a validation error
- Transaction not found on Base chain (chainId 8453) returns a not-found error
- Recipient address does not match the on-chain transfer target returns a mismatch error
- Minimum received amount not met returns a failed verification
- termsAccepted not set to true causes request rejection
- Payment for the report (0.02 USDC via x402) fails, blocking report delivery
- Unsupported chainId (non-8453) causes rejection
- Rate limiting or network errors from Base RPC provider

## 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 containing a 'kind' field set to 'base_usdc_receipt_verification' and a 'reportId' which is a private hash uniquely identifying the verification report. This serves as tamper-evident proof that the specified USDC transaction was verified on Base chain according to the supplied parameters.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "properties": {
  "txHash": {
   "type": "string",
   "pattern": "^0x[0-9a-fA-F]{64}$"
  },
  "chainId": {
   "type": "number",
   "const": 8453
  },
  "recipient": {
   "type": "string",
   "pattern": "^0x[0-9a-fA-F]{40}$"
  },
  "expectedPayer": {
   "type": "string",
   "pattern": "^0x[0-9a-fA-F]{40}$"
  },
  "termsAccepted": {
   "type": "boolean",
   "const": true
  },
  "minimumReceivedRaw": {
   "type": "string",
   "pattern": "^(0|[1-9][0-9]{0,77})$"
  },
  "customerCountryCode": {
   "type": "string",
   "pattern": "^[A-Z]{2}$"
  }
 }
}
```

## Response schema (JSON Schema)

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

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/coins-agent-check-base-usdc-receipt-verification-fec3be5b/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)
