Skip to content

Balance Query Callback

VCT Platform queries the player's balance on the Agent (Operator) side.

Note

This API is called by the VCT Platform. When a player launches and enters the game, VCT calls this interface to query the player's available balance on the Agent side, in preparation for the subsequent credits transfer.

Endpoint

PropertyValue
PathPOST /api/v1/callback/balance
CallerVCT Platform → Agent (Operator)

Request Parameters (from VCT)

ParameterTypeRequiredDescription
usernamestringYesPlayer username
currencystringNoCurrency code
signstringYesRequest signature
timestamplongYesRequest timestamp

Response Fields

FieldTypeRequiredDescription
statusstringYesProcessing status: success / player_not_found / error
balancedecimalYesPlayer's current available balance (only valid when status is success)
currencystringYesCurrency code (required when status is success)
usernamestringYesPlayer username (required when status is success)

Example Request

json
{
  "username": "player001",
  "currency": "MYR",
  "sign": "9a2f64d0bcfa829...",
  "timestamp": 1783324700
}

Example Response

Success Response

json
{
  "status": "success",
  "username": "player001",
  "currency": "MYR",
  "balance": 100.00
}

Player Not Found (Abort login)

json
{
  "status": "player_not_found"
}

Validation Logic & Processing Recommendations

1. Strict Status Verification

  • Status Field is Mandatory: The response returned by the Agent system must contain the status field.
  • Reject Game Access: If status is missing, or its value is not "success" (e.g. "player_not_found", "error", etc.), VCT Platform will immediately terminate the game launching process and throw a login exception. This prevents invalid or non-existent players from entering the game and causing subsequent wallet reclaim failures.

2. Player Account Checks

  • It is recommended that the Agent system evaluates the player's account status (e.g., whether it is suspended, locked, etc.) during a /balance query. If the player is not allowed to play, return {"status": "player_not_found"} or {"status": "error"} to abort the launch.

Provider Source Mapping

ProviderCallback PathRequest Format
BGopen.operator.user.balanceJSON-RPC 2.0 (sn/sign/random)
GSCseamless/balanceJSON (operator_code/sign/request_time)
SAGetUserBalanceEncrypted URL-encoded body
WMwebhook (cmd=CallBalance)form-data (cmd/signature/user)

VCT Gaming Integration Platform