Transfers

Learn about transfers and how to move money globally with Caibo.

Overview

Transfers are the core of Caibo. A transfer moves money from your Caibo account to a recipient's bank account or other destination. Transfers can be domestic or international, and support USD, CAD, and local currencies across 15+ countries.

Transfer Lifecycle

pendingprocessingcompleted

pending

Transfer created, waiting to be processed

processing

Transfer is being processed by our payment partners

completed

Funds have been delivered to the recipient

failed

Transfer could not be completed

Create a Transfer

create-transfer.js
const transfer = await caibo.transfers.create({
  // Amount in smallest currency unit (cents)
  amount: 100000, // $1,000.00
  sourceCurrency: 'CAD',
  destinationCurrency: 'COP',

  // Recipient details
  destination: {
    type: 'bank_account',
    country: 'CO',
    accountHolder: 'Maria Garcia',
    accountNumber: '12345678901234',
    bankCode: 'BANCOLOMBIA'
  },

  // Optional metadata
  reference: 'Invoice #1234',
  metadata: {
    orderId: 'order_123',
    customerId: 'cust_456'
  }
});

Transfer Object

transfer-object.json
{
  "id": "tr_1234567890",
  "object": "transfer",
  "amount": 100000,
  "sourceCurrency": "CAD",
  "destinationCurrency": "COP",
  "destinationAmount": 315025000,
  "exchangeRate": 3150.25,
  "fee": 299,
  "status": "completed",
  "destination": {
    "type": "bank_account",
    "country": "CO",
    "accountHolder": "Maria Garcia",
    "accountNumber": "1234••••••1234"
  },
  "reference": "Invoice #1234",
  "createdAt": "2026-03-10T10:00:00Z",
  "completedAt": "2026-03-10T10:05:00Z"
}

Destination Types

TypeDescriptionCountries
bank_accountBank wire transfer15+ countries (Americas, Europe, Asia-Pacific)
caibo_accountAnother Caibo accountWorldwide (instant)