Skip to main content
Version: 2019-05-29 (Current)

Balance API

Overviewโ€‹

The Balance API allows you to retrieve your current account balance, including available funds, pending amounts, and transferable balances across all supported currencies.

Available Endpointโ€‹

What You Can Doโ€‹

  • Check Available Balance - See how much money is available for transfers
  • View Pending Amounts - Monitor funds that are pending settlement
  • Multi-Currency Support - View balances across THB, JPY, SGD, MYR, USD, and more
  • Real-Time Data - Get up-to-date balance information
  • Transferable Amounts - Check how much can be transferred to bank accounts

How Balance Worksโ€‹

Balance Typesโ€‹

Your Omise account has three types of balances:

  1. Total Balance - All funds in your account (available + pending)
  2. Available Balance - Funds available for immediate transfer
  3. Transferable Balance - Funds that can be transferred to bank accounts

When Balance Updatesโ€‹

Your balance updates when:

  • โœ… A charge is successfully completed
  • โœ… A refund is processed
  • โœ… A transfer is created
  • โœ… Fees are deducted
  • โœ… Disputes are won or lost
  • โœ… Chargebacks are processed

Settlement Periodsโ€‹

Different payment methods have different settlement periods:

  • Credit Cards: Usually 2-3 business days
  • PromptPay: Instant
  • Mobile Banking: 1-2 business days
  • Installments: Per installment schedule

Use Casesโ€‹

Monitor Cash Flowโ€‹

Check your available balance before initiating transfers to ensure sufficient funds.

Multi-Currency Managementโ€‹

View balances across different currencies if you accept payments in multiple currencies.

Reconciliationโ€‹

Compare API balance with bank statements and dashboard for accounting purposes.

Automated Transfersโ€‹

Check transferable balance before creating automatic transfer schedules.

Balance Object Structureโ€‹

{
"object": "balance",
"livemode": true,
"available": 1250000,
"total": 1500000,
"currency": "thb",
"transferable": 1200000,
"reserve": {
"amount": 50000,
"percentage": 10.0
}
}

Best Practicesโ€‹

โœ… Do Thisโ€‹

  • Check before transfers - Verify available balance before creating transfers
  • Monitor regularly - Set up automated balance monitoring
  • Handle multiple currencies - Account for different currency balances
  • Cache appropriately - Balance data can be cached for 1-5 minutes
  • Use webhooks - Listen for charge.complete and transfer.create events

โŒ Don't Do Thisโ€‹

  • Don't poll excessively - Avoid checking balance more than once per minute
  • Don't assume immediate availability - Account for settlement periods
  • Don't ignore reserves - Consider reserve requirements for your account
  • Don't forget pending amounts - Remember that total includes pending funds

See Alsoโ€‹


Need help? Contact support@omise.co