Skip to main content
The cancel callback is sent when a player’s bet fails to complete — due to network issues, timeouts, or system errors. Your server must refund the full bet amount back to the player’s balance to ensure account accuracy. This operation is idempotent — if your wallet receives more than one request with the same transactionId, you must register the refund only once.
  • URL: Your configured Callback URL
  • Method: POST
  • Headers: X-Request-Signature, Content-Type, Accept

Request parameters

command
string
required
Always "cancel" for this callback type.
transactionId
long
required
Unique reference of this cancel transaction created in iGamingAce. Use this to enforce idempotency.
playerId
string
required
Unique identifier of the player from your system.
roundId
long
required
Unique reference of the game round.
providerId
number
required
Unique identifier of the game provider in iGamingAce.
gameCode
number
required
Unique game id of the game in iGamingAce.
timestamp
number
required
Unix timestamp of the request.

Response fields

Your server must respond with HTTP 200 and a JSON body containing the following fields:
balance
number
required
The player’s updated balance after the refund is applied.
statusCode
string
required
Result of the operation. Must be "OK" on success. See the status codes table below for all possible values.

Status codes

Status codeDescription
OKRequest successful
ERR_NOT_AUTHENTICATEDThe player is not authenticated
ERR_TRANSACTION_DOES_NOT_EXISTThe referenced bet transaction does not exist in your system
ERR_TRANSACTION_ROLLED_BACKThe referenced transaction has already been reversed
ERR_INTEGRITY_CHECK_FAILEDMessage integrity check failed
ERR_UNKNOWNInternal server error
Your response must be returned within 4 seconds. If the request times out or returns an error, iGamingAce will automatically retry the request up to 2 more times.
Use referenceId to locate the original bet in your database. If the bet was never recorded (e.g., your system never received it), you can safely return OK with the player’s current balance — there is nothing to refund.

Examples

{
  "command": "cancel",
  "transactionId": "SP215202",
  "referenceId": "SP215201",
  "playerId": "1101",
  "roundId": "65215842315484512",
  "providerId": 1,
  "gameCode": 655,
  "timestamp": 1586335186372
}