Skip to content
ZytePedevelopersDashboard
DocsBalances and transactions
Balances and transactions

Merchant balances

Read the balances returned for the signed merchant account.

Read account balances

Merchant balance uses plugin authentication. The merchant is resolved from the signed API key; do not send merchant_id or a GET body.

Preserve returned fields

The example contains available_balance, locked_balance, collection_balance, collection_locked_balance, payout_deposit_balance, payout_deposit_locked_balance, pending_settlements and currency.

These labels do not establish a funds-custody model or a settlement guarantee. Confirm definitions, funding permissions and how locked amounts are handled for your account before using them in financial calculations.

Keep balances private

Expose only the information your authorized users need. Do not put merchant balances or signed API credentials into public client-side pages.

Request example

Choose Node.js, Python, PHP, Ruby, Java or cURL. Run signed requests on your backend. PHP, Ruby and Java include signing directly. Java requires JDK 17 or newer.

import { pluginSignedHeaders } from './plugin-signing.mjs';
const path = `/payments/balance`;
const query = '';
const body = ''; // GET requests have no body
const headers = pluginSignedHeaders({
  method: 'GET', path, body,
  keyId: process.env.ZYTEPE_API_KEY_ID,
  secret: process.env.ZYTEPE_API_SECRET,
});
const url = 'https://api.zytepe.com' + path + (query ? '?' + query : '');
const response = await fetch(url, { method: 'GET', headers });
if (!response.ok) throw new Error('Request failed: HTTP ' + response.status);
const result = await response.json();
// Store the returned identifiers securely. Do not log customer data.

Request body

No request body for GET.

Example response

JSON · response
{
  "account_id": "merchant-account-uuid",
  "available_balance": 1000,
  "locked_balance": 100,
  "collection_balance": 5000,
  "collection_locked_balance": 500,
  "payout_deposit_balance": 2000,
  "payout_deposit_locked_balance": 200,
  "pending_settlements": 500,
  "currency": "INR"
}