# Payouts & manual approval

A **payout** sends funds to a customer (a withdrawal). Omno supports payouts across the [Cashier](/guides/concepts/cashier) (including **card payouts**), [Direct Link](/guides/concepts/direct-link) (APM), and the legacy Payment Page.

## Manual approval

Some payouts require you to approve them before they are sent to a provider. When that applies, the payout enters `WAITING_FOR_CONFIRMATION`:

- **Confirm** it → the payout moves to `PENDING` and is processed.
- **Reject** it → the payout moves to `REJECTED` and is never sent to a provider.


```mermaid
stateDiagram-v2
    [*] --> WAITING_FOR_CONFIRMATION
    WAITING_FOR_CONFIRMATION --> PENDING: confirm
    WAITING_FOR_CONFIRMATION --> REJECTED: reject
    PENDING --> PROCESSED
    PENDING --> FAILED
```

Confirm and reject are available on the [payout API](/apis). Confirming or rejecting a payout that is **not** in `WAITING_FOR_CONFIRMATION` returns `409`.

## Withdrawal balance

For a Cashier withdrawal, the Cashier shows the `balance` you pass when you create the session. The final outcome, as always, comes from a [webhook](/guides/concepts/webhooks) or a GET on the transaction.

## Build it →

- [Transaction lifecycle](/guides/concepts/transaction-lifecycle) · [Direct Link → Payout](/direct-link/payout) · [Other APIs → Payouts](/apis)