Callisto Games / Technology
TechnologyOperator API, wallet callbacks and reconciliation.
How the integration fits together. The Developer Docs hold the exact contract.
Architecture
One gateway between your platform and every provider
The gateway speaks each provider's protocol and turns it into one wallet contract.
- Your backend reads the catalogue:
GET /v1/games. - It opens a session:
POST /v1/sessionsreturns alaunch_url. - The player's browser opens the game at
launch_url. - Gameplay runs between the game client and the provider.
- The provider reports bets, wins and rollbacks to the Callisto Games gateway.
- Callisto Games calls your wallet at
wallet_urlin one format. - Your wallet answers with the balance after the movement.
- You reconcile by transaction and round:
GET /v1/transactions,/v1/rounds.
Authentication
Every request is signed, both ways
The same HMAC check covers your calls to the Operator API and our calls to your wallet and webhook.
Signing rules and test vectors# every request, both directions signature = HMAC-SHA256(secret, timestamp + "." + request) X-Agg-Key-Id: ak_5f2c… X-Agg-Timestamp: 1792224000 X-Agg-Signature: 9c41e0…
Wallet callbacks
One contract for every provider
A refusal is final. A timeout or server error is retried, then rolled back. Money moves once per transaction_id.
Wallet contract// getbalance | bet | win | rollback { "action": "bet", "transaction_id": "t-8f21", "session_id": "s-1", "round_id": "r-77", "currency": "EUR", "amount": "1.50" } 200 { "balance": "98.50" } 4xx { "error": "insufficient_funds" } answer, not retried 5xx / timeout: retried, then rolled back
OpenAPI & Postman
Generate a client, or start in Postman
The whole Operator API as OpenAPI JSON/YAML, with a Postman collection and a sandbox environment.
OpenAPI & Postman# machine-readable contract, from the Developer Docs openapi.json openapi.yaml callisto-games.postman_collection.json callisto-games-sandbox.postman_environment.json
Coverage
What the integration covers
| Operator API | Signed REST API under /v1: catalogue, sessions, promotions, reconciliation. |
|---|---|
| Catalogue | Game ID, provider, studio, type, RTP, demo availability, images, country restrictions. Paged by cursor. |
| Player sessions | Create a session, open a demo, close a session. Each session has a session ID. |
| Wallet callbacks | getbalance, bet, win, rollback to your wallet URL. |
| Idempotency | By transaction_id: a retried call carries the same id. |
| Errors & retries | Standard error codes; which are retried is in the Developer Docs. |
| Reconciliation | Transactions and rounds by identifier; optional signed invoice webhook. |
| Promotions | Free spins, jackpots and live tables where the provider supports them. |
| Testing & go-live | Sandbox, signature tester, wallet test suite, go-live checklist, changelog. |
| Rate limits | Set per operator and provided with your credentials. |
| Production access | Production hostnames and allow-listed addresses are issued at go-live. |
Start in the sandbox
Request access: your team gets sandbox credentials and the wallet test suite.
