How to check your residential proxy account balance before you order

Check your ZTProxy account balance in the console or with the official balance API before you place or renew an order. Insufficient funds return a documented balance error. This is not remaining dynamic traffic. Not for mainland China.

Before you buy dynamic residential traffic, or place or renew a static residential IP, confirm the wallet balance, not whether a single proxy request succeeded. The official Balance docs say to check the account balance before creating or renewing an order. If funds are short, the create or renew call returns a non-zero code or an HTTP error. The documented messages are usually 「用户余额不足」 or 「目标用户余额不足」 (insufficient user or target-user balance).

This is not a rewrite of how to check remaining dynamic traffic. Traffic quota is the byte ledger for bandwidth you already bought. Balance is the wallet used to pay for new purchases, renewals, or adjustments. For top-ups, see USDT TRC20. For pricing structure, see GB vs IP billing. Authorized targets only. Not supported in mainland China.

What to prepare

ItemWhere it comes from
A signed-in console session, or an API tokenThe console shows balance directly; the API requires a login first, see how to authenticate
Balance endpointsOfficial docs describe a dashboard overview and a current-user balance call
Optional billing recordsUse these to confirm a top-up or charge posted, see billing records

Placeholders only (not production): token example TOKEN_EXAMPLE_NOT_REAL. Do not treat sample balance figures in docs as your live account. This page does not need a proxy host; placeholders such as proxy.example.invalid are unrelated to a balance check.

Console versus API

Most buyers only need the console figure before they top up or place an order. If you reconcile with the API, official docs provide two paths. Do not mix them with dynamic-traffic usage endpoints.

EndpointWhat it returnsWhen to use it
GET /open/app/dashboard/info/v2Dashboard overview for the current user, including balance and resource statsWhen you also want the overview
GET /open/app/user/balance/currentBalance for the signed-in user onlyWhen you only need the wallet figure
Console balanceLabel follows the live UIEveryday check before ordering

The API base URL is https://backend.ztproxy.net/api. Authenticated calls must include a valid access token. Querying balance does not create an order and does not debit the wallet.

Example: current-user balance

export ZTPROXY_BASE="https://backend.ztproxy.net/api"
export ZTPROXY_TOKEN="TOKEN_EXAMPLE_NOT_REAL"

curl -X GET "$ZTPROXY_BASE/open/app/user/balance/current" \
  -H "Authorization: Bearer $ZTPROXY_TOKEN"

Send the token in the Authorization header, not in the URL. On HTTP 401, sign in again from the authentication docs instead of retrying the same balance call indefinitely. The balance docs do not freeze a single official JSON field name as the only wallet key, so read the live console and response, then cross-check billing records.

If the balance is too low

SituationWhat to do
Create or renew returns insufficient-balance messagesTop up or reduce the order, then submit again; do not retry the same underfunded request
You already transferred USDT, but the balance has not changedConfirm the top-up status, review billing records, then query balance again
The wallet has funds, but dynamic traffic is exhaustedThat is a traffic-quota issue, not a wallet issue; see remaining traffic
You only need a spend historyOpen billing records; you do not need a new order

For a short API landing page, see API integration. This article does not reprint the OpenAPI and does not invent settlement times or minimum top-up amounts.

Compliance and scope

Use this only on authorized targets. Do not treat this page as a bypass tutorial. Prices follow the console and Pricing (dynamic about $0.40/GB, about $0.20/GB for the 100 TB package; static shared about $1.50 and exclusive about $5 per IP per month). USDT/USDC are available; Visa/Mastercard are still being applied for. Not supported in mainland China.

FAQ

Is account balance the same as remaining dynamic traffic?

No. Balance pays for new purchases or renewals. Remaining dynamic traffic is the byte quota on resources you already bought. Check both, but do not merge them into one number.

Do I need an order number to check balance?

The official balance endpoints query the signed-in user. They do not need an order number to return the wallet figure. Use billing records to inspect a specific charge or top-up.

Should I call the dashboard or the current-balance endpoint?

Use the current-user balance endpoint when you only need the wallet figure. Use the dashboard endpoint when you also want the overview, which the docs say includes balance and resource stats. Both require a valid token.

The API says funds are insufficient. Should I keep submitting the order?

No. Top up or reduce the purchase, confirm the balance, then place or renew the order.

I just topped up. Why is the balance unchanged?

Confirm the top-up status and the billing record, then query balance again. Do not create more top-up orders just because the wallet has not moved yet. See USDT top-up.

Can a regular user look up someone else's balance?

This page only covers the signed-in user's own balance. The "target user" insufficient-balance message appears when an order is created or renewed for a specified user. That is not permission to browse other wallets.

Can a balance change tell me a static IP is ready?

No. A debit only shows that a charge may have been accepted or recorded. Whether the static resource is usable still depends on the order list and status; see buy a static residential IP.

Where do prices come from?

Follow the console and Pricing. Amounts in docs or samples are not a live quote.

Next steps

  1. Check the figure in the console or with the current-balance endpoint.
  2. Top up if needed, and confirm the record in billing history.
  3. When the balance is enough, buy dynamic traffic or a static IP.