# AgentBank Payout

> AgentBank Payout is a paid API for AI agents from protocol.useagentbank.com, paid per call via x402, $0.01/call, status unknown (last checked 2026-10-17).

Initiates a cross-border fiat payout funded from USDC, converting and routing funds to a destination account using a structured payout intent.

## Facts

- Endpoint: POST https://protocol.useagentbank.com/api/public/x402/payout?utm_source=zero.xyz
- Price: $0.01/call
- Payment: x402
- Status: unknown
- Last checked: 2026-10-17
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/agentbank-payout-1fb56910
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_KIa_rgkXQ9FDBZV7ooXSN

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 agentbank-payout-1fb56910 -d '<json body>'
```

Example prompt: Send a cross-border fiat payout of $500 using my USDC balance — the destination is a bank account in Mexico, use exact amount mode, and the action is 'payout'.

## When to prefer this

Choose this endpoint when you need to programmatically convert USDC into fiat and deliver funds cross-border to a bank account — especially in agentic or automated workflows where the x402 micropayment protocol is already in use. It is ideal for disbursements, payroll, vendor payments, or contractor settlements that cross currency boundaries, where holding local fiat is not desired. Prefer this over generic crypto-to-fiat bridges when you need a structured payout intent model with flow tracking and retry support.

## Known failure modes

- Missing required fields (action, source, amount_mode, destination) result in a 400 bad request
- Invalid or expired flow_id on retry causes rejection
- Insufficient USDC balance in the source account prevents initiation
- Unsupported destination country or currency returns an error
- x402 payment not completed before access causes a 402 Payment Required response
- Malformed destination object causes a validation error

## How this service works

Direct USDC-funded fiat payouts for x402-capable agents. Pricing is locked dynamically for each payout request. Supports exact_source and exact_destination. For exact_source, provide source.amount; for exact_destination, provide destination.amount. Live public destination fiats: ARS, BRL, COP, IDR, KRW, MYR, PEN, PHP. Each payer wallet may settle up to 500 USD cumulatively per UTC day.

## Output

Returns a flow_id (to track and retry the payment flow), a payment_id (unique identifier for this payout), the state 'funding_submitted' (indicating the payout has been initiated but is not yet terminal), and a terminal flag set to false (indicating the flow is still in progress and may require polling or a follow-up signed retry).

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "required": [
  "action",
  "source",
  "amount_mode",
  "destination"
 ],
 "properties": {
  "action": {
   "type": "string"
  },
  "source": {
   "type": "object"
  },
  "flow_id": {
   "type": "string",
   "description": "Returned by the 402 and required on the signed retry."
  },
  "amount_mode": {
   "type": "string"
  },
  "destination": {
   "type": "object"
  }
 }
}
```

## Response schema (JSON Schema)

```json
{
 "type": "object",
 "required": [
  "flow_id",
  "payment_id",
  "state",
  "terminal"
 ],
 "properties": {
  "state": {
   "type": "string",
   "const": "funding_submitted"
  },
  "flow_id": {
   "type": "string"
  },
  "terminal": {
   "type": "boolean",
   "const": false
  },
  "payment_id": {
   "type": "string"
  }
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/agentbank-payout-1fb56910/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from protocol.useagentbank.com](https://www.zero.xyz/host/protocol.useagentbank.com/llms.txt)
