Sending transfers
Dispatch one-off or batch transfers to Colombian bank accounts.
A bank transfer is a payout: money leaves your Mono account and lands in a beneficiary's bank account. Mono routes transfers across three rails — ACH for standard same-day transfers, Transfiya for transfers within a specific bank cluster, and Mono Turbo for real-time transfers to participating banks — and falls back automatically when a rail does not support a destination.
Use this flow for payroll runs, vendor settlements, marketplace seller payouts, refunds, or any case where your business pushes money out to a known bank account.
This page is a flow scaffold and will be expanded with code samples for one-off and batch transfers, expected webhooks, common errors, and reconciliation guidance.
Before you start
You will need:
- A Mono account with Banking enabled and an API key. See Authentication.
- Sufficient balance in the source account to cover the transfer plus any fees.
- A webhook endpoint that can receive bank-transfer events.
- Familiarity with the transfers concept.
- An idempotency key per transfer to make retries safe.
Sequence overview
- Prepare the transfer — collect the destination account, amount, currency, and routing preference (
turbo,transfiya, orach). Generate an idempotency key. - Submit — call
POST /transfers. Mono creates the transfer increatedstate and groups it into a batch. The response confirms acceptance, not credit. - Receive confirmation — Mono fires
bank_transfer_approvedwhen the rail credits the destination, orbank_transfer_rejectedif it is declined. The terminal transfer states areapprovedanddeclined. - Handle fallbacks — if the primary rail fails, Mono retries using the
fallback_routingyou specified and firesbank_transfer_fallback_routingbefore the final result.
Steps
The full step-by-step (one-off and batch transfers) is pending. Until it is published, see:
- The transfers concept page for routing options, fallbacks, and states.
- The bank-transfer webhook page for the event payloads.
Next steps
- PSE collection — the payin counterpart of this flow.
- Banking webhooks — the events that drive confirmation and fallback handling.
- Idempotency Keys — required for safe retries on every transfer.