SideBets

Type: object

Sent with QoS 1, retained.

This contains the side bet payout results for all active players in the current round.
A player position is seen as active any cards are assigned to it.

This is sent whenever the results change as more cards are revealed.
For most side bets the result is known when the player has its first two
cards and the dealer has an upcard.

round_id matches the id in live_update /
state_changed messages — use it to reset / update client display state.

Type: stringFormat: uuid

Type: array
No Additional Items

Each item of this array must be:

PlayerSideBetResults

Type: object

Side bet evaluation results for a single player in a round.

side_bet_results is a list because a player may participate in multiple side bets
simultaneously (e.g. both 21+3 and Perfect Pairs at the same table). Each entry
corresponds to one configured side bet and is ordered to match the side bets declared
in the table configuration.

Type: array
No Additional Items

Each item of this array must be:

SideBetResult

Type: object

One side bet evaluation result for a single player.

result is a tagged union with three cases:
- SideBetDetermined: we determined that the side bet was won or lost based on the cards.
- NotYetDetermined: not enough cards on the table to evaluate yet.
- PayoutTableUnknown: the side bet type is configured but has no payout table
implemented for this casino.

is_played is True only when a chips model for this casino is deployed and the
betting spots are correctly configured.

side_bet_id is the stable identifier the side bet is configured and keyed by (e.g. 'PP');
unlike side_bet_name it is unique, so consumers matching results across messages should
key on the id.


SideBetDetermined

Type: object

The side bet outcome has been fully evaluated.

outcome is a string label for the winning hand category (e.g. "STRAIGHT_FLUSH",
"PERFECT_PAIRS") or "LOSS" when the player loses. It is a plain string rather than
an enumeration so that operator-configured side bets with arbitrary hand categories can be
supported in the future without changing this type.

payout encodes the multiplier applied to the player's stake:
- -1.0 — loss (stake forfeited)
- A positive float — win multiplier (e.g. 3.0 means 3 : 1)
- "GRAND" / "MAJOR" / "MINOR" — jackpot tier whose exact value is resolved by the
casino's progressive payout system rather than a fixed multiplier.

Type: enum (of string)

Must be one of:

  • "SideBetDetermined"

NotYetDetermined

Type: object

Type: enum (of string)

Must be one of:

  • "NotYetDetermined"

PayoutTableUnknown

Type: object

Type: enum (of string)

Must be one of:

  • "PayoutTableUnknown"