Payouts
Send money from a Core ledger account to a destination.
A payout is a movement of funds out of a Core ledger account. The destination can be another ledger account inside Core (an internal transfer), or an external Colombian bank account (in which case Core hands the rail-level execution to Banking). Either way, the payout produces a balanced pair of ledger entries: a debit on the source account and a credit on the destination — the same double-entry pattern every Core movement follows.
Use payouts whenever your product needs to push money out of a balance — withdrawals, marketplace seller settlements, payroll, refunds, or treasury sweeps.
What it is
A payout has a source ledger account, a destination, an amount, a currency, and a state. The state machine is:
pending → processing → settled
└→ failedThe exact transitions and terminal states will be documented in the full version of this page.
Internal vs. external payouts
| Type | Destination | Rail |
|---|---|---|
| Internal | Another Core ledger account | Same-tenant ledger entry — instant. |
| External | Colombian bank account | Banking handles the rail (Turbo, ACH, Transfiya). |
External payouts inherit Banking's routing, fallback, and confirmation behavior.
Fees
A payout to a bank account can carry two fees, both priced by your fee policies and returned in the payout's calculated_fees:
| Fee type | What it is |
|---|---|
bank_transfer | Your charge for the transfer — a fixed amount, a percentage, or both. |
bank_transfer_gmf | The pass-through of the GMF — Colombia's tax on financial movements, 0.4% of the amount (the "4 × 1000") — when it applies to the payout. |
The fees come out of the source subaccount together with the payout: if you fix the amount the destination must receive, the source pays that amount plus the fees; if you fix the source amount, the destination receives it minus the fees. Set a general price in your base policies and override it whenever you want to charge differently per program, per account holder or for a single account.
The same two fee types exist on Mono's side: for each payout, Mono charges you its own bank_transfer and bank_transfer_gmf on your accounts, as agreed in your commercial terms. The fees listing shows both sides, told apart by owner. See Fees.
Data model
The full schema lives in the Core Payouts API reference.
Webhook events
Payouts emit events on every state transition. See Core webhooks.
Next steps
- Ledger — the accounts payouts move money between.
- Banking transfers — the rail-level mechanics for external destinations.
- Payout disbursement flow — end-to-end use case.
- Fee policies — how to price the fees of your payouts.