3.3 Transaction Status Query API
POST /api/v1/user/exchange/transfer-wallet-transactions/statusQuery the latest status of a single transaction (real-time) by ticket_id, commonly used to confirm whether a deposit / withdrawal succeeded. Data is retained for the most recent 6 months. Requests must include the HMAC authentication headers.
TIP
This API is rate-limited to 100 requests / minute; exceeding it returns code:10060. The quota is counted per api_key × endpoint — endpoints do not share a quota, and every request (including those returning an error) counts toward it.
Request Body (JSON)
| Field | Required | Type | Description |
|---|---|---|---|
| ticket_id | TRUE | string | Exchange ticket ID, up to 256 characters |
{ "ticket_id": "fadbd4ce-4f14-4b9e-8ee4-accd4b9c729e" }Response data
Returns a single transaction record (not a list).
{
"code": 0,
"message": "success",
"data": {
"player_id": "45d3d8eb-1a95-4e47-9315-bc507ea06d65",
"player_external_id": "player1",
"player_name": "player1_name",
"agent_id": "bea4274e-4333-423c-a8e8-4c203d256d2c",
"agent_name": "agent_demo",
"transaction_type": "EXCHANGE_TRANSACTION_TYPE_DEPOSIT",
"currency": "CNY",
"amount": "100",
"balance_after": "1000",
"created_at": "2026-05-20T10:00:00Z"
}
}IMPORTANT
When no record matches the ticket_id, the API returns code:10030, transfer wallet transaction not found.
10030 covers both "does not exist" and "not yet posted". A transfer is a single, fully synchronous database transaction — there is no intermediate "accepted but not yet posted" state, so not finding the record means it has not been posted.
Do not use 10030 to infer that a compensating entry is needed. Once you have confirmed the transfer was not posted, simply resend the original request with the same ticket_id (the HMAC headers must be regenerated with a fresh X-Nonce and X-Timestamp).
data fields
| Field | Type | Description |
|---|---|---|
| player_id | string | Internal player ID (UUID) |
| player_external_id | string | Player ID |
| player_name | string | Player name |
| agent_id | string | Internal agent ID (UUID) |
| agent_name | string | Agent name |
| transaction_type | string | Transaction type (see transaction type enum) |
| currency | string | Currency |
| amount | string | Amount change (may be negative) |
| balance_after | string | Balance after the change |
| created_at | string | Transaction time (RFC3339 UTC) |