Release Notes - September 2025
IMPORTANT: As with most of our releases, the intent is that all packages are deployed to their latest versions (stipulated in Docker Images (beta images)).
General
This release is not mandatory
BREAKING CHANGES
The following updates may represent breaking changes in your existing integration. Please review the release notes carefully and if you have any doubts, feel free to reach out to your technical point of contact.
-
ThrillPots:
-
New indexes on large collections. Namely
log_contributionscollection was upgraded with new indexes that might slow down the booting time of the service. We recommend applying those indexes off-band prior to upgrading to September release. Script for index creation here -
Previously, contributions where the
base_wagerwas zero would be rejected. This constraint has been relaxed to only reject contributions where thebase_wageris less than zero. This has been done to support more intuitive semantics for jackpot contributions that are not driven by wagering or financial activities.
-
-
ThrillConnect:
- When retrieving instances by source, for jackpots that have specific support for alternate currency minimum bets will now have an additional field
contribution_values_altin the response which contains the minimum bet per alternate currency.
- When retrieving instances by source, for jackpots that have specific support for alternate currency minimum bets will now have an additional field
-
ThrillGate:
- Transaction requests have 2 additional fields added to them:
bonus_amountandbonus_id:bonus_amountindicates how much of the total bet was funded by bonus moneybonus_idindicates the bonus ID that was applied for the transaction. If not bonus was applied,bonus_idwill be null.
- [BETA2]
metadata(optional) field added toAuthRequest,AuthResponseandCancelBetRequest.
- Transaction requests have 2 additional fields added to them:
INFRA + DATABASE CHANGES
- ThrillOffice: New set of ENV variables required to define a secondary, read-only connection to ThrillGate DB. Full list here.
- [BETA2]
thrilloffice.top_playerscollection has had a new index added ("metadata.instance_id", "_id") - [BETA2]
thrillpots.log_contributionscollection has had a new index added ("data.brand_id", "timestamp") - [BETA2]
thrillpots.optinoutcollection has had a new index added ("data.brand_id", "timestamp", "data.player_id") - [BETA2]
thrillgate.player_bonusescollection has had an index change:- ("player_id", "operator_id", "brand_id") -> ("operator_id", "brand_id", "player_id")
New Features
ThrillPots
- Added the ability to have all brands in organisation hierarchy beneath the instance's
ownerasallowed_brands. This is achieved by using the newinstance_org_boundflag on the Instantiate Template API and setting it tofalse(the default istrue). - Added per route request count metrics on thrillpots gateway;
- Jackpots that support multi-currency contain minimum contribution amounts per currency when fetched;
- New V2 API added: [Batch Add/Remove Allowed Brands for Jackpot Instances]
- [BETA2] Advanced Diversion Pools
- Diversion pools now support targetting multiple targets for funds diversion (before only one target was possible)
- When diverting funds to another Jackpot Instance, the new system respects the seed and pot funding rulesets
- Non-progressive and capped-value jackpots are correctly supported
ThrillGate
-
Jackpot Freebets
- It is now possible to award Jackpot Freebets to players. These act similar to promotional free spins in a normal game and can be configured in different ways. For more information on the new free bets system, follow this link
- Transaction requests have 2 additional fields added to them:
bonus_amountandbonus_id:bonus_amountindicates how much of the total bet was funded by bonus moneybonus_idindicates the bonus ID that was applied for the transaction. If not bonus was applied,bonus_idwill be null.
- The
amountfield on the Transaction Requests should be treated as usual - it indicates how much money should be debited from the player's wallet.- To calculate the total value of the contribution, you must now use:
- When
bonus_idis populated:amount+bonus_amount - When no
bonus_idis populated:amount
- When
- To calculate the total value of the contribution, you must now use:
-
Raffle Leaderboard-based Payouts
- Previously raffles would resolve using a standard random ticket selector. This would theoretically improve the chances of players that had high numbers of tickets but the wins would not be guaranteed
- Raffles now support Leaderboard-style payout mechanics which pay players based on how many tickets they have earned
-
[BETA2] Added support for asynchronous credit flows when processing zero-value credit transactions
ThrillOffice
-
Support for delegated OAuth based authentication
- It is now possible to provision accounts to make use of a configured OAuth Provider. Check the API docs for setting up OAuth Provider.
- Supported providers:
- KeyCloak
- Providers not tested but expected to work:
- Microsoft
- Auth0
-
Wallet Integration Tester (beta)
- An automated wallet integration tester has been added to
ThrillOffice > ThrillGateto allow technical team to perform wallet-integration specific testing. - To access it, hover over the ThrillGate icon on the left of the screen, and click on the
Wallet Configurationmenu item - You should see a list of configured wallets
- Click the three dot button on the right of the wallet you wish to test and select the
Test Wallet Integrationoption - Fill in the form, providing a valid player token, an invalid player token and a usable wallet currency and then click
Run Test - You should see the results of the tests shown, giving you an indication of compliance on the integration
- An automated wallet integration tester has been added to
-
Added Player Country as a filter for Winners, Transactions and Optin reports
-
Added Instance and Brand filters for Dashboard view
-
Brand filters for reporting views have been completely reworked. Brand selection is now done via the Filters slide and allows multi-select
-
Bets distribution widget in Dashboard now features a shortcut to Transactions view
-
Reconciliation View now exposes per brand data for all periods via the
Download Contribution Dataaction -
[BETA2] Support for bonus information in the ThrillPots > Transactions reports
-
[BETA2] Support for retrieving additional information (including metadata and wallet transaction IDs) for Jackpot Contributions
Changes/Improvements
ThrillPots
- Added validation for empty
instance_idon latest winners APIs; - Added the ability to copy
allowed_brandsof a jackpot instance when doing model switches; - Diversion pools now support diverting funds between jackpots and systems of differing currencies
- Percentage-based Jackpots have received some improvements:
- It is now possible to ensure that a minimum contribution amount is contributed regardless of how low the player's base wager is
- The variable contribution system now fully supports percentage based jackpots using the exact same approach as the fixed contribution jackpots.
- [BETA3] Improved seed-deficit tracking on a per-pot basis.
- [BETA3] Seed deficits are now part of the RTP calculation
ThrillPots Gateway
- Added additional metrics for the webhook callbacks when using async contributions:
contribution_webhook_errorscontribution_webhook_time
ThrillGate
- Improved ability for age-restricted bet limits to be specified. In previous versions it was required to send a player's date of birth, which is not ideal when it comes to PII data.
- In this release, the platform has the capability of specifying what the max bet limit is for any player as part of the
SWAuthResponsepayload using the newly added (and optional)max_betfield.
- In this release, the platform has the capability of specifying what the max bet limit is for any player as part of the
- [BETA2] Improved caching strategy for certain "hot objects"
- [BETA2]
metadata(optional) field added toAuthRequest,AuthResponseandCancelBetRequest.
ThrillConnect
- If jackpots are configured to support "alternate currencies" to enable the Always Fair Multicurrency system, when retrieving instance details you will now receive the instance with a new field,
contribution_values_altwhich contains the configured minimum bets per alternate currency.- An example may look like this:
{ "id": "664c8e3c-055b-4c5d-8645-8e4704ca1176", "currency": "EUR", "opt_in_required": true, "opt_in_per_currency": true, "contribution_type": { "Fixed": 0.1 }, "contribution_values_alt": [ { "currency": "GBP", "value": 0.1 }, { "currency": "USD", "value": 0.1 }, { "currency": "JPY", "value": 15.0 }, { "currency": "SEK", "value": 1.0 } ], ... "timestamp_start": null, "timestamp_end": null, "status": "Active" }
ThrillOffice
- Introduced organization tree filter to replace brand tabs in views
- [BETA3] Improved memory usage and performance for Top Player reports
- [BETA3] Smoother main and submenu navigation.
- [BETA3] Link to Contributors reports added to ThrillPots submenu.
- [BETA3] Player IDs in Dashboard top player widgets are now clickable and lead to Contributors reports, filtered by the player ID.
- [BETA3] Auto refresh button added to Contributors reports.
BitBridge
- Addressed the issue of error log spamming as false negatives from the
bitbridge.message_logcollection - [BETA3] Improved support for micro-currency configuration (eg mETH, mBTC, mSOL etc)
Bug Fixes
ThrillPots
- Added validation for empty
instance IDswhen retrieving latest winners