Section 06
Your platform's API
The wallet endpoints AIC calls on your platform.
Your platform's API#
These are the endpoints AIC calls on your platform to query and move player balances. Your API must expose them at the base URL you registered for each environment (see Onboarding and credentials).
Common rules#
- All calls are
POSTwith a JSON body to{your base URL}<operation>(in this manual,{{API_URL_CLIENTE}}). - Successful responses must return HTTP 200 in this format. Both fields are required:
{
"data": 2287.3,
"status": {
"code": "0",
"message": "Success",
"datetime": "2026-10-20T21:07:03.930Z"
}
}datais numeric: the player's balance after the operation.statusis required, withcode: "0". If it is missing, AIC rejects the response even if the balance is valid.- Amounts are expressed in your project's currency.
- Error handling is described in Responses and errors.
Operations overview#
| Operation | Seamless | Transfer | Purpose |
|---|---|---|---|
check-balance | ✓ | ✓ | Query the player's balance. |
add-bet | ✓ | ✓ | Debit the balance (a bet, a reversal that takes balance from the player, or the transfer to the game in Transfer). |
add-win | ✓ | ✓ | Credit the balance (a win, a cancellation, or the balance return in Transfer). |
update-totals-games | ✓ | Receive the session totals when a Transfer game closes (informational). | |
rollback | ✓ | Reverse a round (some suppliers). |
Check Balance#
Returns the player's balance.
{{API_URL_CLIENTE}}check-balanceExample request
curl -X POST "{{API_URL_CLIENTE}}check-balance" \
-H "Content-Type: application/json" \
-d '{
"playerName": "casinoPlayer123",
"token_room": "playerSessionToken"
}'Successful response
{
"data": 2287.3,
"status": {
"code": "0",
"message": "Success",
"datetime": "2026-10-20T21:07:03.930Z"
}
}Body parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
| playerName | string | Yes | Player identifier. |
| token_room | string | Yes | Session token you sent in enterGame. |
Add Bet#
Debits the amount from the player's balance. In Seamless it is a bet or a reversal that takes balance from the player; in Transfer, it is the transfer of the balance to the game when the session opens.
{{API_URL_CLIENTE}}add-betExample request
curl -X POST "{{API_URL_CLIENTE}}add-bet" \
-H "Content-Type: application/json" \
-d '{
"playerName": "casinoPlayer123",
"gameId": "clmgj4mer000fawnho0gyt7ma",
"amount": 100,
"idTransaction": "idTransaction",
"token_room": "playerSessionToken",
"movementId": "3f2a9c4e-7b1d-5e8a-9c2f-1a6b4d8e0f73"
}'Successful response
{
"data": 2187.3,
"status": {
"code": "0",
"message": "Success",
"datetime": "2026-10-20T21:07:03.930Z"
}
}Body parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
| playerName | string | Yes | Player identifier. |
| gameId | string | Yes | Game identifier (the same one from the game list). |
| amount | number | Yes | Amount to debit from the balance. |
| idTransaction | string | Yes | Transaction identifier. |
| token_room | string | Yes | Session token you sent in enterGame. |
| movementId | string | Yes | Unique movement identifier, generated by AIC. It only repeats when AIC resends the same movement. |
Response
data: the player's new balance after the debit. If the balance is not enough, respond with the insufficient-balance error.
Add Win#
Credits the amount to the player's balance. It is used for wins, for bet cancellations or refunds and, in Transfer, to return the balance when the session closes.
{{API_URL_CLIENTE}}add-winExample request
curl -X POST "{{API_URL_CLIENTE}}add-win" \
-H "Content-Type: application/json" \
-d '{
"playerName": "casinoPlayer123",
"gameId": "clmgj4mer000fawnho0gyt7ma",
"amount": 150,
"idTransaction": "idTransaction",
"token_room": "playerSessionToken",
"movementId": "3f2a9c4e-7b1d-5e8a-9c2f-1a6b4d8e0f73"
}'Successful response
{
"data": 2337.3,
"status": {
"code": "0",
"message": "Success",
"datetime": "2026-10-20T21:07:03.930Z"
}
}Body parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
| playerName | string | Yes | Player identifier. |
| gameId | string | Yes | Game identifier. |
| amount | number | Yes | Amount to credit to the balance. |
| idTransaction | string | Yes | Transaction identifier. |
| token_room | string | Yes | Session token you sent in enterGame. |
| movementId | string | Yes | Unique movement identifier, generated by AIC. It only repeats when AIC resends the same movement. |
Response
data: the player's new balance after the credit.
Update Totals Games#
When a Transfer session closes, AIC reports the session totals for your records. It does not move balance: the balance has already returned through add-win.
{{API_URL_CLIENTE}}update-totals-gamesExample request
curl -X POST "{{API_URL_CLIENTE}}update-totals-games" \
-H "Content-Type: application/json" \
-d '{
"gameId": "clmgj4mer000fawnho0gyt7ma",
"totalBet": 500,
"totalWin": 420,
"playerName": "casinoPlayer123",
"averageBet": 10
}'Body parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
| gameId | string | Yes | Game identifier. |
| totalBet | number | Yes | Total bet during the session. |
| totalWin | number | Yes | Total won during the session. |
| playerName | string | Yes | Player identifier. |
| averageBet | number | Yes | Average bet of the session. |
Note
Respond with HTTP 200. The content of your response does not affect the session close.
Rollback#
Some suppliers reverse a round with this call. Apply new balance = balance − amountWin + amountBet and respond with the new balance in data.
{{API_URL_CLIENTE}}rollbackExample request
curl -X POST "{{API_URL_CLIENTE}}rollback" \
-H "Content-Type: application/json" \
-d '{
"playerName": "casinoPlayer123",
"gameId": "clmgj4mer000fawnho0gyt7ma",
"amountBet": 100,
"amountWin": 0,
"movementId": "8c1e5d27-4a9b-5f3c-b6d0-2e7f9a1c4b58"
}'Successful response
{
"data": 2287.3,
"status": {
"code": "0",
"message": "Success",
"datetime": "2026-10-20T21:07:03.930Z"
}
}Body parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
| playerName | string | Yes | Player identifier. |
| gameId | string | Yes | Game identifier. |
| amountBet | number | Yes | Amount bet in the round being reversed (returned to the player). |
| amountWin | number | Yes | Amount won in the round being reversed (debited from the player). |
| movementId | string | Yes | Unique movement identifier, generated by AIC. It only repeats when AIC resends the same movement. |