AIC Aggregator

Buscar en la documentación

Buscar secciones, endpoints, parámetros...

Sección 06

La API de tu plataforma

Los endpoints de wallet que AIC llama en tu plataforma.

La API de tu plataforma#

Estos son los endpoints que AIC llama a tu plataforma para consultar y mover el balance de los jugadores. Tu API debe exponerlos en la URL base que registraste para cada entorno (ver Alta y credenciales).

Reglas comunes#

  • Todas las llamadas son POST con cuerpo JSON a {tu URL base}<operación> (en este manual, {{API_URL_CLIENTE}}).
  • Las respuestas exitosas deben devolver HTTP 200 con este formato. Los dos campos son obligatorios:
{
  "data": 2287.3,
  "status": {
    "code": "0",
    "message": "Success",
    "datetime": "2026-10-20T21:07:03.930Z"
  }
}
  • data es numérico: el balance del jugador después de la operación.
  • status es obligatorio, con code: "0". Si falta, AIC rechaza la respuesta aunque el balance sea válido.
  • Los montos están expresados en la divisa de tu proyecto.
  • El manejo de errores se describe en Respuestas y errores.

Resumen de operaciones#

OperaciónSeamlessTransferPropósito
check-balance✓✓Consultar el balance del jugador.
add-bet✓✓Descontar del balance (apuesta, reversión que le quita saldo al jugador, o transferencia al juego en Transfer).
add-win✓✓Acreditar al balance (ganancia, cancelación, o devolución del balance en Transfer).
update-totals-games✓Recibir los totales de la sesión al cerrar un juego Transfer (informativo).
rollback✓Revertir una ronda (algunos proveedores).

Check Balance#

Devuelve el balance del jugador.

POST{{API_URL_CLIENTE}}check-balance
AuthSin autenticación

Ejemplo de solicitud

curl -X POST "{{API_URL_CLIENTE}}check-balance" \
  -H "Content-Type: application/json" \
  -d '{
    "playerName": "casinoPlayer123",
    "token_room": "playerSessionToken"
  }'

Respuesta exitosa

{
  "data": 2287.3,
  "status": {
    "code": "0",
    "message": "Success",
    "datetime": "2026-10-20T21:07:03.930Z"
  }
}

Parámetros del body

ParámetroTipoRequeridoDescripción
playerNamestringSíIdentificador del jugador.
token_roomstringSíToken de sesión que enviaste en enterGame.

Add Bet#

Descuenta el monto del balance del jugador. En Seamless corresponde a una apuesta o a una reversión que le quita saldo al jugador; en Transfer, a la transferencia del balance al juego al abrir la sesión.

POST{{API_URL_CLIENTE}}add-bet
AuthSin autenticación

Ejemplo de solicitud

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"
  }'

Respuesta exitosa

{
  "data": 2187.3,
  "status": {
    "code": "0",
    "message": "Success",
    "datetime": "2026-10-20T21:07:03.930Z"
  }
}

Parámetros del body

ParámetroTipoRequeridoDescripción
playerNamestringSíIdentificador del jugador.
gameIdstringSíIdentificador del juego (el mismo de la lista de juegos).
amountnumberSíMonto a descontar del balance.
idTransactionstringSíIdentificador de la transacción.
token_roomstringSíToken de sesión que enviaste en enterGame.
movementIdstringSíIdentificador único del movimiento, generado por AIC. Solo se repite si AIC reenvía el mismo movimiento.

Respuesta

data: nuevo balance del jugador tras el descuento. Si el balance no alcanza, responde con el error de saldo insuficiente.

Add Win#

Acredita el monto al balance del jugador. Se usa para ganancias, para cancelaciones o reembolsos de apuestas y, en Transfer, para devolver el balance al cerrar la sesión.

POST{{API_URL_CLIENTE}}add-win
AuthSin autenticación

Ejemplo de solicitud

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"
  }'

Respuesta exitosa

{
  "data": 2337.3,
  "status": {
    "code": "0",
    "message": "Success",
    "datetime": "2026-10-20T21:07:03.930Z"
  }
}

Parámetros del body

ParámetroTipoRequeridoDescripción
playerNamestringSíIdentificador del jugador.
gameIdstringSíIdentificador del juego.
amountnumberSíMonto a acreditar al balance.
idTransactionstringSíIdentificador de la transacción.
token_roomstringSíToken de sesión que enviaste en enterGame.
movementIdstringSíIdentificador único del movimiento, generado por AIC. Solo se repite si AIC reenvía el mismo movimiento.

Respuesta

data: nuevo balance del jugador tras el abono.

Update Totals Games#

Al cerrar una sesión Transfer, AIC te informa los totales de la sesión para tus reportes. No mueve balance: el balance ya regresó mediante add-win.

POST{{API_URL_CLIENTE}}update-totals-games
AuthSin autenticación

Ejemplo de solicitud

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
  }'

Parámetros del body

ParámetroTipoRequeridoDescripción
gameIdstringSíIdentificador del juego.
totalBetnumberSíTotal apostado en la sesión.
totalWinnumberSíTotal ganado en la sesión.
playerNamestringSíIdentificador del jugador.
averageBetnumberSíApuesta promedio de la sesión.

Nota

Responde HTTP 200. El contenido de tu respuesta no afecta el cierre de la sesión.

Rollback#

Algunos proveedores revierten una ronda con esta llamada. Aplica nuevo balance = balance − amountWin + amountBet y responde con el nuevo balance en data.

POST{{API_URL_CLIENTE}}rollback
AuthSin autenticación

Ejemplo de solicitud

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"
  }'

Respuesta exitosa

{
  "data": 2287.3,
  "status": {
    "code": "0",
    "message": "Success",
    "datetime": "2026-10-20T21:07:03.930Z"
  }
}

Parámetros del body

ParámetroTipoRequeridoDescripción
playerNamestringSíIdentificador del jugador.
gameIdstringSíIdentificador del juego.
amountBetnumberSíMonto apostado en la ronda a revertir (se devuelve al jugador).
amountWinnumberSíMonto ganado en la ronda a revertir (se descuenta al jugador).
movementIdstringSíIdentificador único del movimiento, generado por AIC. Solo se repite si AIC reenvía el mismo movimiento.