Skip to main content
POST
/
api
/
v1
/
partner
/
accounts
/
{customer_auth_id}
/
transfer-balance
Transfer balance to customer
curl --request POST \
  --url https://api.vobiz.ai/api/v1/partner/accounts/{customer_auth_id}/transfer-balance \
  --header 'Content-Type: application/json' \
  --header 'X-Auth-ID: <api-key>' \
  --header 'X-Auth-Token: <api-key>' \
  --data '
{
  "amount": 500,
  "currency": "INR"
}
'
{
  "transaction_id": "txn_aabbccdd1234",
  "from_account": "PA_XXXXXXXX",
  "to_account": "MA_XXXXXXXX",
  "amount": 500,
  "currency": "INR",
  "description": "April recharge",
  "status": "completed",
  "partner_balance_after": 47750,
  "customer_balance_after": 2950,
  "timestamp": "2026-03-25T11:00:00Z"
}

Documentation Index

Fetch the complete documentation index at: https://docs.vobiz.ai/llms.txt

Use this file to discover all available pages before exploring further.

← Partner API Reference Transfer credits from your partner master wallet to a customer’s wallet. This is the primary mechanism for reselling voice minutes - you fund your customers, who then spend from their allocated balance on calls.
All Partner API requests use X-Auth-ID and X-Auth-Token headers. See Authentication for details.

Overview

PropertyBehavior
AtomicTransfers complete or fail entirely - no partial states
PermanentCannot be reversed via API - verify amount before submitting
InstantCustomer wallet is credited immediately on success

How Balance Transfer Works

When you call the transfer endpoint, Vobiz atomically debits the specified amount from your partner master balance and credits it to the target customer’s wallet. Both debit and credit are recorded as separate transaction entries in each account’s ledger.
  • Your Master Balance - debited by the transfer amount (e.g. -₹500.00).
  • Customer Wallet - credited by the same amount (e.g. +₹500.00).

Transfer Balance

Transfer credits from your partner master balance to a customer wallet. Transfers are atomic and permanent - verify the amount and target customer before submitting.

Request Body

FieldTypeRequiredDescription
amountnumberRequiredAmount to transfer in the partner’s currency
currencystringRequiredISO 4217 currency code, e.g. INR
descriptionstringOptionalFree-text note recorded in both transaction ledgers
curl -X POST \
  "https://api.vobiz.ai/api/v1/partner/accounts/{customer_auth_id}/transfer-balance" \
  -H "X-Auth-ID: {your_partner_id}" \
  -H "X-Auth-Token: {your_auth_token}" \
  -H "Accept: application/json" \
  -H "Content-Type: application/json" \
  -d '{
    "amount": 500.00,
    "currency": "INR",
    "description": "April recharge - Credresolve"
  }'
import requests

BASE = "https://api.vobiz.ai/partner/v1"
HEADERS = {
    "X-Auth-ID": "{your_partner_id}",
    "X-Auth-Token": "{your_auth_token}",
    "Accept": "application/json",
    "Content-Type": "application/json",
}

# Check your own balance first
profile = requests.get(f"{BASE}/me", headers=HEADERS).json()
if profile["balance"] >= 500.00:
    response = requests.post(
        f"{BASE}/accounts/MA_48149cf4/transfer-balance",
        headers=HEADERS,
        json={
            "amount": 500.00,
            "currency": "INR",
            "description": "April recharge - Credresolve",
        },
    )
    print(response.json())

Notes

  • Transfers are permanent and cannot be reversed - Once a transfer completes, there is no API endpoint to reverse it. If you transfer the wrong amount or to the wrong customer, contact Vobiz support. Always verify the customer_auth_id and amount before calling this endpoint.
  • Transfers are atomic - your balance is checked at submission time - The API checks your master balance at the moment the request is received. If concurrent transfers cause your balance to drop below the required amount between your check and the actual transfer, the request fails with a 400 error.
  • Description appears in both ledgers - The description field is recorded in your partner transaction ledger as a debit and in the customer’s transaction ledger as a credit. Use clear notes for easier reconciliation during billing cycles.

Before Transferring - Checklist

  • Verify the target customer_auth_id is correct.
  • Confirm the transfer amount and currency.
  • Confirm your master balance is sufficient.
  • Add a clear description for ledger reconciliation.
  • Remember that transfers are permanent and cannot be reversed via API.

Authorizations

X-Auth-ID
string
header
required

Your Vobiz account Auth ID

X-Auth-Token
string
header
required

Your Vobiz account Auth Token

Path Parameters

customer_auth_id
string
required
Example:

"MA_ZKITB8Z2"

Body

application/json
amount
number
required

Positive decimal. Your master balance must be ≥ this amount.

Example:

500

currency
string
required

Must match your partner account currency.

Example:

"INR"

description
string

Note for your records. Appears in both ledgers.

Example:

"April recharge - Credresolve"

Response

Transfer completed