Skip to main content
Wallet Certification Suite
GET /tbs/test
The certification suite is a fixed list of scenarios that exercise the Wallet API exactly as RGS does in production: it opens sessions, places wagers, pays wins, rolls wagers back and sends invalid requests. Every scenario checks the HTTP status, the response body and, for rejected requests, that the player’s balance was not changed. Run it against your test environment as often as you need. Each call is a fresh run, nothing is cached. Free bet and tournament flows are not part of the suite.

Preconditions

Before running the suite make sure that in your wallet:
  • the player behind player_token exists and can open a session for game_uuid;
  • the player’s currency equals currency;
  • the player’s balance is at least 100 (the largest single wager is 1, one scenario wagers the whole balance and rolls it back immediately);
  • the X-Auth-Token value you pass as authorization_header is accepted, and any other value is rejected.
The suite uses one player and runs scenarios one after another. Every scenario opens its own session and uses fresh roundId and transactionId values, so the player’s history does not affect the result.

Query Parameters

GET /tbs/test/scenarios returns the current list of scenarios with ids and descriptions.

Response 200 OK

Text format:
For every failed scenario the report shows the step that failed, what was expected, the exact request that was sent and the response that was received. JSON format (format=json) returns the same data as an object:

Errors

A wallet that does not respond within 15 seconds fails the scenario with request failed: HttpRequestTimeoutException.

Scenarios

Every rejected request must return HTTP 400 with the listed error_code, and the player’s balance must stay unchanged. Each invalid request contains exactly one invalid field, so the order in which your wallet validates fields does not matter, except for an unknown playerId combined with a valid sessionId, where both INVALID_PLAYER_ID and INVALID_SESSION are accepted.

Session and balance

Credit-debit

Debit

Every debit scenario first places a wager of 1 with /credit-debit in a new round.

Rollback

Every rollback scenario first places a wager of 1 with /credit-debit in a new round.
Request