Flow of funds
How money moves through Caibo end to end — pay-in, settlement, and payout.
Fiat rails (Interac, ACH/EFT) — rolling out. Stablecoin payouts are live today. The fiat pay-in (Collections) and local-currency payout (Fiat Payouts) rails are being enabled progressively through regulated collection and licensed payout partners. This page describes the model; the API contracts are stable and ready to build against.
Caibo connects a fiat pay-in on one side to a fiat payout on the other, settled over stablecoin rails in between. Your organization's balance is the hub: collections settle into it, and payouts draw from it.
The end-to-end flow
Customer (Canada) Caibo Beneficiary
──────────────── ───── ───────────
1. Interac e-Transfer ──▶ 2. Collection received ──▶
(pay-in) by regulated provider
3. Settlement to USDC
credited to your balance
4. Fiat payout drawn from
balance, via licensed ──▶ 5. Local currency
payout partner credited to account- Pay-in — Interac e-Transfer. Your customer in Canada funds a collection with an Interac e-Transfer (ACH/EFT are part of the same rail). You create the collection and show them the returned payment instructions.
- Collection. A regulated collection provider receives the funds. The collection moves
awaiting_payment → received. - Settlement — USDC. The received fiat is settled to USDC and credited to your organization's balance. The collection reaches
settledand firescollection.settled. Stablecoin is the settlement rail — not a product you have to touch. - Payout — local currency. You create a fiat payout to a beneficiary. It is screened, funded from your USDC balance, and handed to a licensed payout partner in the destination country.
- Delivery. The partner credits the beneficiary's local account. The fiat payout reaches
completedand firesfiat_payout.completed.
Where stablecoin fits
Stablecoin (USDC) is the settlement layer between pay-in and payout. It is also directly usable: you can send stablecoin payouts from the same balance to an on-chain address. So one balance funds two kinds of outbound movement:
| Outbound | Endpoint | Destination |
|---|---|---|
| Local currency | POST /v1/fiat-payouts | A beneficiary's bank account, via payout partner. |
| Stablecoin | POST /v1/payouts | An on-chain address on a supported network. |
Compliance across the flow
Every leg is subject to the same controls described in Compliance & screening: KYB before live access, sanctions/watchlist screening before funds move, transaction monitoring, and a double-entry ledger behind every movement. Collections and fiat payouts are screened just like stablecoin payouts.
What is live vs. rolling out
| Capability | Status |
|---|---|
Stablecoin payouts (/v1/payouts) | Live |
| Balances & rates, webhooks, KYB, sandbox | Live |
Fiat pay-in — Collections (/v1/collections) | Rolling out |
Local-currency payout (/v1/fiat-payouts) | Rolling out |
Build against the full contract now; the fiat rails return 503 provider_unavailable until switched on for your organization.