# USDC Payment Verifier

> USDC Payment Verifier is a paid API for AI agents from gogeta2-u35175.vm.elestio.app, paid per call via x402, $0.002/call, status unknown (last checked 2026-10-29).

Verifies a USDC transaction on Base blockchain: checks success, recipient/sender match, minimum amount, and confirmation count, returning a verdict with decoded transfer details.

## Facts

- Endpoint: GET https://gogeta2-u35175.vm.elestio.app/agents/v1/payments/usdc-verify?utm_source=zero.xyz
- Price: $0.002/call
- Payment: x402
- Status: unknown
- Last checked: 2026-10-29
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/usdc-payment-verifier-f37081c9
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_2P7PwUF8eHhZARuxgVFFr

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 usdc-payment-verifier-f37081c9
```

Example prompt: Can you verify that transaction 0xabc123...def456 on Base successfully sent at least 5 USDC to wallet 0xRecipient...789, with at least 3 confirmations?

## When to prefer this

Use this endpoint when you need to programmatically verify that a specific USDC payment on Base (mainnet or Sepolia testnet) meets your criteria before taking action — such as releasing a product, activating a service, or recording a payment. Prefer this over generic blockchain explorers when you need a structured verdict (pass/fail) rather than raw transaction data, and when you want to check recipient, sender, amount, and confirmation requirements in a single call.

## Known failure modes

- Unknown or invalid transaction hash — returns not-found verdict without charging
- Transaction found but USDC not sent to expected recipient — verdict fails
- Amount transferred is below min_amount threshold — verdict fails
- Insufficient confirmations at time of check — may need retry
- Transaction reverted or failed on-chain — verdict fails
- Wrong chain specified — transaction not found on selected network
- Malformed tx_hash format — validation error returned

## How this service works

Verify a USDC payment on Base: tx succeeded, USDC sent to the expected recipient (and from the expected sender), at least min_amount, enough confirmations. Returns verdict + decoded transfers. Unknown tx = not charged.

## Output

Returns a verdict object indicating whether the transaction passed all checks (success, correct recipient, correct sender if specified, minimum amount met, sufficient confirmations), plus decoded USDC transfer details including actual sender, recipient, and amount transferred.

## 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",
     "required": [
      "tx_hash"
     ],
     "properties": {
      "to": {
       "type": "string",
       "description": "Expected recipient address (0x...)"
      },
      "from": {
       "type": "string",
       "description": "Expected payer address (optional)"
      },
      "chain": {
       "enum": [
        "base",
        "base-sepolia"
       ],
       "type": "string",
       "default": "base",
       "description": "base (default) or base-sepolia"
      },
      "tx_hash": {
       "type": "string",
       "description": "Transaction hash, 0x + 64 hex"
      },
      "min_amount": {
       "type": "number",
       "minimum": 0,
       "description": "Minimum USDC amount expected, e.g. 0.05"
      },
      "min_confirmations": {
       "type": "integer",
       "default": 1,
       "maximum": 10000,
       "minimum": 1,
       "description": "Required confirmations (default 1)"
      }
     }
    }
   },
   "additionalProperties": false
  },
  "output": {
   "type": "object",
   "required": [
    "type"
   ],
   "properties": {
    "type": {
     "type": "string"
    },
    "example": {
     "type": "object"
    }
   }
  }
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/usdc-payment-verifier-f37081c9/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from gogeta2-u35175.vm.elestio.app](https://www.zero.xyz/host/gogeta2-u35175.vm.elestio.app/llms.txt)
