Skip to main content
Your Yativo wallet holds balances in multiple currencies. Fund payouts from your wallet, and receive deposits into it. The wallet API lets you check balances, create new currency wallets, and initiate quick payouts.
interface WalletBalance {
  name: string;           // currency code, e.g. "USD"
  slug: string;           // URL-friendly, e.g. "usd"
  balance: string;        // current balance as string
  currency: string;       // currency code
  decimal_places: number;
  meta: {
    logo: string;         // URL to currency logo/flag
    symbol: string;       // e.g. "$", "R$", "S/"
    fullname: string;     // e.g. "US Dollar"
    precision: string | number;
  };
}

interface TotalBalance {
  total_balance: number;  // total of all wallets converted to USD
}

Get Wallet Balance

Returns detailed balance information for every currency wallet on your account.
GET /wallet/balance
currency
string
Optional: filter by a specific currency code (e.g. USD, BRL). Omit to return all.
curl -X GET 'https://api.yativo.com/api/v1/wallet/balance' \
  -H 'Authorization: Bearer YOUR_ACCESS_TOKEN'
{
  "status": "success",
  "status_code": 200,
  "message": "Request successful",
  "data": [
    {
      "name": "USD",
      "slug": "usd",
      "balance": "35585.00",
      "currency": "USD",
      "decimal_places": 2,
      "meta": {
        "logo": "https://cdn.yativo.com/usd.svg",
        "symbol": "$",
        "fullname": "US Dollar",
        "precision": 2
      }
    },
    {
      "name": "BRL",
      "slug": "brl",
      "balance": "14200.00",
      "currency": "BRL",
      "decimal_places": 2,
      "meta": {
        "logo": "https://cdn.yativo.com/brl.svg",
        "symbol": "R$",
        "fullname": "Brazilian Real",
        "precision": "2"
      }
    }
  ]
}
Supported currencies: ARS, BRL, CLP, COP, EUR, MXN, PEN, USD

Get Total Balance

Returns the sum of all wallet balances converted to USD at current exchange rates:
GET /wallet/balance/total
curl -X GET 'https://api.yativo.com/api/v1/wallet/balance/total' \
  -H 'Authorization: Bearer YOUR_ACCESS_TOKEN'
{
  "status": "success",
  "status_code": 200,
  "message": "Request successful",
  "data": {
    "total_balance": 37629.18
  }
}

Create a Wallet

Create a new currency wallet for your account:
POST /wallet/create
currency
string
required
The currency code for the new wallet (e.g. COP, PEN, ARS).
curl -X POST 'https://api.yativo.com/api/v1/wallet/create' \
  -H 'Authorization: Bearer YOUR_ACCESS_TOKEN' \
  -H 'Content-Type: application/json' \
  -H 'Idempotency-Key: unique-key-here' \
  -d '{ "currency": "COP" }'
{
  "status": "success",
  "data": {
    "currency": "COP",
    "balance": "0.00"
  }
}

Quick Wallet Payout

Initiate a payout directly from your wallet balance without the full send money flow:
POST /wallet/payout
debit_wallet
string
required
Currency to debit from your balance (e.g. "USD").
payment_method_id
number
required
The saved beneficiary payment method ID.
quote_id
string
Quote ID from POST /sendmoney/quote or POST /exchange-rate. Locks the rate for 5 minutes. Recommended — amount is taken from the quote.
amount
number
Amount to send. Required if quote_id is not provided. Uses current market rate.
curl -X POST 'https://api.yativo.com/api/v1/wallet/payout' \
  -H 'Authorization: Bearer YOUR_ACCESS_TOKEN' \
  -H 'Content-Type: application/json' \
  -H 'Idempotency-Key: unique-payout-key' \
  -d '{
    "debit_wallet": "USD",
    "quote_id": "4a72ecf8-6c8a-4e38-9971-8aabe9f785ed",
    "payment_method_id": 21
  }'

Display Tips

// Format a wallet balance for display
function formatBalance(wallet) {
  const balance = parseFloat(wallet.balance);
  const symbol = wallet.meta.symbol;
  const precision = wallet.decimal_places;
  return `${symbol}${balance.toFixed(precision)}`;
}

// Filter out zero balances
const activeWallets = wallets.filter(w => parseFloat(w.balance) > 0);
Wallets with zero balances are included in the response. Filter client-side if you only want non-zero holdings.