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

text
  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
  1. 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.
  2. Collection. A regulated collection provider receives the funds. The collection moves awaiting_payment → received.
  3. Settlement — USDC. The received fiat is settled to USDC and credited to your organization's balance. The collection reaches settled and fires collection.settled. Stablecoin is the settlement rail — not a product you have to touch.
  4. 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.
  5. Delivery. The partner credits the beneficiary's local account. The fiat payout reaches completed and fires fiat_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:

OutboundEndpointDestination
Local currencyPOST /v1/fiat-payoutsA beneficiary's bank account, via payout partner.
StablecoinPOST /v1/payoutsAn 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

CapabilityStatus
Stablecoin payouts (/v1/payouts)Live
Balances & rates, webhooks, KYB, sandboxLive
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.