Skip to main content

Balance API

Use the Balance API to check your merchant account balance. This is especially important before initiating withdrawals to ensure sufficient funds.
API v1 Balance requests require the balance.read or balance.view scope on your API key. API v2 merchants use HMAC authentication with the same balance permissions.

Get Balance by Currency

Pass balance_type=main explicitly when checking funds for a payout. Omitting the type does not guarantee selection of the main balance. Retrieve the balance for a specific currency.
API v2 merchants use the same response format through the HMAC-authenticated endpoint:

Query Parameters

Response

Get All Balances

Retrieve balances for all currencies at once.
API v2 merchants can request all balances with HMAC authentication:

Response

Response Fields

All amounts are in minor units. /balance top-level monetary fields are JSON numbers; nested balance.balanceAmount, balance.availableAmount and balance.frozenAmount are decimal strings. /balance/all uses the camelCase string fields shown above, plus numeric aliases. Prefer the string fields for exact arithmetic and validate numeric values before calculations.

API v2 HMAC Signing

For GET balance requests, sign an empty raw body. The empty body SHA-256 hash is:
Canonical string examples:
See Authentication for the complete HMAC header and signing rules.
Available vs Frozen:
  • available_amount — funds you can use right now for new withdrawals
  • frozen_amount — funds reserved by pending withdrawals that have not yet completed. These are temporarily locked and cannot be used for new operations
When a withdrawal completes, frozen funds are released and debited. If a withdrawal fails, frozen funds return to available_amount.

Usage Example: Check Balance Before Withdrawal

How Balance Changes