# USDC Transfer Relay via EIP-3009 Authorization (x402 v2)

> USDC Transfer Relay via EIP-3009 Authorization (x402 v2) is a paid API for AI agents from piggybank.loth2023ys.workers.dev, paid per call via x402, $0.05/call, status unknown (last checked 2026-10-26).

Executes a signed EIP-3009 USDC transfer authorization on Base, relaying the transaction on-chain and returning the transaction hash and gas details.

## Facts

- Endpoint: POST https://piggybank.loth2023ys.workers.dev/v1/exec/transfer?utm_source=zero.xyz
- Price: $0.05/call
- Payment: x402
- Status: unknown
- Last checked: 2026-10-26
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/usdc-transfer-relay-via-eip-3009-authorization-x402-v2-f4a161e9
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_vSQKE5gTAihMD5ycVZzAp

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-transfer-relay-via-eip-3009-authorization-x402-v2-f4a161e9 -d '<json body>'
```

Example prompt: Relay this signed USDC transfer on Base: from 0xSenderAddress to 0xRecipientAddress for 1000000 units (1 USDC), valid before Unix timestamp 1800000000, nonce 0xRandomBytes32, with signature v=27, r=0xRvalue, s=0xSvalue.

## When to prefer this

Use this endpoint when you have a pre-signed EIP-3009 (transferWithAuthorization) USDC permit and need a third-party relayer to broadcast it on Base, eliminating the need for the sender to hold ETH for gas. Ideal for x402 v2 payment flows, agent-to-agent micropayments, and gasless USDC settlement scenarios on Base mainnet. Not suitable for transfers on other chains (Ethereum, Solana, etc.) despite the marketing description — the schema only accepts chain='base'.

## Known failure modes

- Invalid or expired authorization (validBefore already passed) — transaction rejected
- Invalid ECDSA signature (v/r/s mismatch) — relay refuses to submit
- Nonce already used — duplicate authorization rejected
- Value exceeds 250 USDC relay cap (250000000 base units) — request refused
- Chain field not 'base' — unsupported chain error
- Insufficient USDC balance at from address — on-chain revert
- Network congestion causing relay timeout
- Malformed address or hex values — input validation error

## How this service works

7-chain pre-trade smart contract bytecode, SPL/Token-2022 authority & multi-DEX liquidity risk oracle across Base (8453), Solana, Ethereum (1), Arbitrum (42161), Optimism (10), Polygon (137), and BNB Smart Chain (56). Instant x402 v2 settlement in Base USDC or BSC USDC.

## Output

A JSON object indicating success (ok: true, status: 'success'), the on-chain transaction hash (txHash), gas consumed (gasUsed), block number where the transaction was included, and the exact USDC amount received by the recipient in base units.

## Request schema (JSON Schema)

```json
{
 "input": {
  "type": "object",
  "required": [
   "authorization",
   "signature"
  ],
  "properties": {
   "chain": {
    "enum": [
     "base"
    ],
    "type": "string",
    "default": "base"
   },
   "signature": {
    "type": "object",
    "required": [
     "v",
     "r",
     "s"
    ],
    "properties": {
     "r": {
      "type": "string"
     },
     "s": {
      "type": "string"
     },
     "v": {
      "type": "integer"
     }
    }
   },
   "authorization": {
    "type": "object",
    "required": [
     "from",
     "to",
     "value",
     "validBefore",
     "nonce"
    ],
    "properties": {
     "to": {
      "type": "string"
     },
     "from": {
      "type": "string"
     },
     "nonce": {
      "type": "string",
      "description": "32 random bytes, hex."
     },
     "value": {
      "type": "string",
      "description": "USDC base units (6 decimals). Max 250000000 = 250 USDC per relay."
     },
     "validAfter": {
      "type": "string"
     },
     "validBefore": {
      "type": "string"
     }
    }
   }
  }
 },
 "output": {
  "type": "object"
 }
}
```

## Response schema (JSON Schema)

```json
{
 "type": "json",
 "example": {
  "ok": true,
  "status": "success",
  "txHash": "0x...",
  "gasUsed": 74120,
  "blockNumber": 53011278,
  "recipientReceived": "1000000"
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/usdc-transfer-relay-via-eip-3009-authorization-x402-v2-f4a161e9/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from piggybank.loth2023ys.workers.dev](https://www.zero.xyz/host/piggybank.loth2023ys.workers.dev/llms.txt)
