---
updatedAt: 2026-09-30T15:54:20.000Z
---

Fetch the complete documentation index at: https://docs.avvio.xyz/llms.txt. Use this file to discover all available pages before exploring further. Append .md to any documentation page URL to get its markdown version.

# Introduction

You call the API from your own server with an API key. Avvio converts from your USD balance, delivers over the local rail and signs a webhook at every status change. Build against the sandbox first: a test key runs every call and can't move real money.

## Products

### Global payouts

Send money to a bank account in the recipient's currency, over rails such as Pix in Brazil, SPEI in Mexico, SEPA and Faster Payments.

- Price and send in one retry-safe call, with `expectDestination` refusing the payout if the rate drifts over 2%
- Read the bank fields each currency needs at runtime, so the form never goes stale
- Track every payout through signed webhooks and an event feed you can resume

[How global payouts work](/products/global-payouts/)

### Batch payouts

Send up to 1,000 payouts in one request, such as a payroll file or a marketplace run.

- Every line is validated before anything is priced or debited
- A batch with errors waits for you to confirm or cancel it
- Each line becomes an ordinary payout you track on its own

[How batches work](/products/batch-payouts/)

### Payout links

Send a single-use link and the recipient enters their own bank details on a page Avvio hosts.

- Account numbers never touch your servers
- The hosted form follows each corridor's required fields
- The payout is sent from your balance once the details are in

[How payout links work](/products/payout-links/)

### Checkout

Take card payments on a hosted checkout link, paid into your Avvio balance.

- Create a product and a link, then send the buyer to its URL
- Fulfil the order on the `paid` webhook
- Refund in full or in part from the dashboard or your server

[How checkout works](/products/checkout/)

### Balance & funding

Every payout draws on one USD balance.

- Top up by wire or with USDC
- Read the balance and its transactions to reconcile your ledger
- Some routings wait for you to fund that one payout from your own wallet

[How your balance works](/products/balance-and-funding/)

## Get started in three steps

1. Create a test key in the [dashboard](https://business.avvio.xyz). It starts with `avvio_test_`.
2. Follow the [Quickstart](/quickstart/) to send a sandbox payout to Mexico and watch it settle.
3. Work through [Going live](/going-live/), then swap in a live key.

## Guides

| Guide | What it covers |
| --- | --- |
| [Quickstart](/quickstart/) | From a test key to a sandbox payout, in five calls |
| [Recipes](/recipes/) | Sandbox walkthroughs, one call per step, with every response |
| [Send a payout](/payouts/) | Rate protection, purpose codes, approvals, caps and fees |
| [Payout status](/status/) | The five statuses, failure codes and bank returns |
| [Webhooks](/webhooks/) | Signatures, events, retries and ordering |
| [Reconciliation](/reconciliation/) | Keeping your ledger in step with the event feed |
| [Errors](/errors/) | Whether money moved, and whether a retry is safe |

## Build with AI

Connect these docs to your coding agent and it reads the current API contract over MCP instead of guessing from memory. One click sets up each tool.

<AiCta />

[Every tool, and the MCP server that sends payouts](/build-with-ai/)
