> ## Documentation Index
> Fetch the complete documentation index at: https://docs.cleo-pay.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Cleo Pay API Overview: Automate B2B Payments End to End

> Learn how Cleo Pay's REST API works: manage payables, contacts, and bank accounts to automate your B2B payment operations end to end.

Cleo Pay is a REST API that lets you automate business-to-business payments end to end. Connect your bank account, manage vendors as contacts, track invoices as payables, and send ACH payments — all programmatically, without leaving your own systems. Whether you're building an accounts-payable workflow, a vendor payout engine, or a finance automation tool, Cleo Pay gives you the primitives to do it.

## Key features

<CardGroup cols={2}>
  <Card title="Payables" icon="file-invoice-dollar">
    Model invoices and bills as payables with a full document lifecycle (draft → approved) and independent payment tracking (none → settled). Attach line items, due dates, and contact associations.
  </Card>

  <Card title="Contacts" icon="address-book">
    Represent vendors and payees as contacts. Control payment direction, store tax information, and track whether a contact is ready to receive funds.
  </Card>

  <Card title="Bank Accounts" icon="building-columns">
    Link your business bank accounts manually via the API or through Plaid in the dashboard. Verify ownership with micro-deposits before sending any funds.
  </Card>

  <Card title="Payments" icon="paper-plane">
    Send ACH payments to a contact directly or against a payable. Choose clearing speed, schedule future payments, and track status from pending through completed.
  </Card>
</CardGroup>

## How it works

Getting from zero to a completed payment takes three steps:

<Steps>
  <Step title="Link a bank account">
    Add your business checking or savings account via `POST /v1/bank-accounts`. Complete micro-deposit verification to unlock outbound payments.
  </Step>

  <Step title="Create a contact">
    Add the vendor or payee you want to pay via `POST /v1/contacts`. Supply their bank account details so funds have somewhere to land.
  </Step>

  <Step title="Send a payment">
    Initiate an ACH transfer via `POST /v1/payments`. Reference a payable to pay an invoice, or send directly to a contact. Track progress through the payment status lifecycle.
  </Step>
</Steps>

## API base URL

<Note>
  All API requests are made against the staging base URL:

  ```
  https://api.cleo-pay.com
  ```

  Prefix every endpoint path with this URL, for example: `https://api.cleo-pay.com/v1/payments`.
</Note>

## Data conventions

| Convention     | Detail                                                                              |
| -------------- | ----------------------------------------------------------------------------------- |
| **Amounts**    | All monetary amounts are integers expressed in **cents** (e.g. `10050` = \$100.50). |
| **Dates**      | All date fields use **YYYY-MM-DD** format (e.g. `"2025-03-15"`).                    |
| **IDs**        | All resources are identified by a UUID `id` field returned in every response.       |
| **Timestamps** | Full timestamps (e.g. `createdAt`) are ISO 8601 with UTC timezone.                  |

## Next steps

* [Authenticate your requests](/authentication) — add your Bearer token to every call.
* [Quickstart](/quickstart) — link a bank account, create a contact, and send your first payment in five steps.
