ThrillGate Wallet API Documentation (0.1.5)

Download OpenAPI specification:Download

License: Proprietary

The ThrillGate Wallet API provides a standarised API interface for wallets and operator platforms to expose to enable player authentication and wallet operations to be performed on behalf of players.

Authentication

Used to authenticate a player from a specific operator

Prior to making any wallet calls on behalf of the player, the player's session token that was received by the gaming system needs to be authenticated using this call.

Request Body schema: application/json
required
operator_id
required
string

The operator ID for the auth request

brand_id
required
string

The brand ID for the auth request

player_token
required
string

The player's session token for the auth request

source_id
string or null

The source of any future bets from this player in this session This is usually a game code, but can be any unique identifier that the operator has configured to be the source of wagers

currency
required
string

The currency that the player will be wagering in for this game session

Responses

Request samples

Content type
application/json
{
  • "operator_id": "string",
  • "brand_id": "string",
  • "player_token": "string",
  • "source_id": "string",
  • "currency": "string"
}

Response samples

Content type
application/json
{
  • "id": "string",
  • "token": "string",
  • "currency": "string",
  • "balance": 0.1,
  • "operator_id": "string",
  • "brand_id": "string",
  • "nickname": "string",
  • "gender": "string",
  • "country": "string",
  • "jurisdiction": "string",
  • "segments": [
    ]
}

Balance

Retrieve the player's wallet balance details

query Parameters
player_id
required
string

The id of the player requesting a balance for

Responses

Response samples

Content type
application/json
{
  • "balance": 0.1
}

Transactions

Cancel a transaction

Use this call to cancel a historical Debit or Credit transaction.

Expected Returns

  • 200 OK - Transaction successfully cancelled
  • 404 NOT_FOUND - Transaction not found (this is a valid and often expected result)
Request Body schema: application/json
required
transaction_id
required
string
player_id
string or null

Responses

Request samples

Content type
application/json
{
  • "transaction_id": "string",
  • "player_id": "string"
}

Response samples

Content type
application/json
{
  • "balance": "string"
}

Execute a transaction on behalf of the player

This endpoint can be used to either Credit or Debit a player's account. Debit refers to removing money from a player's wallet (for a bet) Credit refers to adding money to a player's wallet (for a win)

Request Body schema: application/json
required
player_id
required
string

The player's ID on the operator's wallet/account system

transaction_id
required
string

The transaction ID for the Debit/Credit

transaction_type
required
string (TransactionType)
Enum: "None" "Debit" "Credit"
provider_id
required
string

The provider identifier (eg 'thrilltech')

amount
required
number <double>

The amount that should be debited or credits from/to a player's account

jackpot_amount
required
number <double>

The amount from amount that is related to jackpots. This value can never be bigger than amount

source_id
required
string

The source of the transaction (could be game code, or jackpot identifier or any other predefined identifier)

source_variant
string or null

A differentiator value for variants of the same game product

gameround_id
required
string

The gaming system's game round ID for the transaction

gameround_complete
boolean or null

Indicator whether this transaction should close the game round

category
string or null

(optional) Free text category indicator

channel
string or null

(optional) Free text channel qualifier

promotion_id
string or null

(optional) promotion ID that the bet is associated with. This will be populated if the transaction is making use of free spins or bonus funds defined in the operator's wallet/account system

promotion_type
string or null

(optional) promotion type of the promotion (if any)

currency
required
string

Optional transaction currency indicator

metadata
any or null

Responses

Request samples

Content type
application/json
{
  • "player_id": "string",
  • "transaction_id": "string",
  • "transaction_type": "None",
  • "provider_id": "string",
  • "amount": 0.1,
  • "jackpot_amount": 0.1,
  • "source_id": "string",
  • "source_variant": "string",
  • "gameround_id": "string",
  • "gameround_complete": true,
  • "category": "string",
  • "channel": "string",
  • "promotion_id": "string",
  • "promotion_type": "string",
  • "currency": "string",
  • "metadata": null
}

Response samples

Content type
application/json
{
  • "balance": 0.1,
  • "metadata": null
}

Health

Service Health Check

Responses

Response samples

Content type
application/json
{
  • "version": "string"
}

Batch Transactions

Execute a batch transaction

This endpoint can be used to issue a batch of either Credit or Debit transactions for multiple player accounts.

Request Body schema: application/json
required
batch_transaction_id
required
string
transaction_type
required
string (TransactionType)
Enum: "None" "Debit" "Credit"
provider_id
required
string
amount
required
number <double>

The total amount of all transactions in the transactions list

jackpot_amount
required
number <double>

The total jackpot amount of all transactions in the transactions list

source_id
required
string
gameround_id
string or null
gameround_complete
boolean or null
required
Array of objects (SWTransactionBatchRecord)
metadata
any or null

Responses

Request samples

Content type
application/json
{
  • "batch_transaction_id": "string",
  • "transaction_type": "None",
  • "provider_id": "string",
  • "amount": 0.1,
  • "jackpot_amount": 0.1,
  • "source_id": "string",
  • "gameround_id": "string",
  • "gameround_complete": true,
  • "transactions": [
    ],
  • "metadata": null
}

Response samples

Content type
application/json
{
  • "total_amount": 0.1,
  • "total_jackpot_amount": 0.1,
  • "errors": [
    ],
  • "metadata": null
}

Cancel a batch transaction

Use this call to cancel a historical batch Debit or Credit transaction.

Request Body schema: application/json
required
batch_id
required
string
transaction_id_list
required
Array of strings

Responses

Request samples

Content type
application/json
{
  • "batch_id": "string",
  • "transaction_id_list": [
    ]
}

Response samples

Content type
application/json
{
  • "success": true
}