Operator guideEN

Bet Limits / List

Bet-limit inventory for category and global betting rules, including rule resolution help, filters, status toggles, soft delete, and bulk JSON maintenance.

How to use this guide

Start with the main guide

Follow the explanation and examples first. Extra definitions and formulas are available below when you need them.

What this page shows

This page lists predefined bet-limit rules at /bet-limits.

The list is split into two sections:

  • Category Rules: rules tied to a casino game subcategory.
  • Global Limit Rules: fallback rules where no category is assigned.

The page also shows a small summary above the tables: total loaded rules and how many of those loaded rules are active.

How bet-limit resolution works

The page explains the resolution model operators should use when reviewing rules:

  1. A matching category rule is checked first.
  2. If multiple category rules match, the highest numeric Priority wins.
  3. If no category rule matches, the same tag and priority logic is applied to Global Limit Rules.
  4. If no global rule matches, the casino default from Settings is used outside this page.

Rules marked MWL Inactive are only for players whose Monthly Winning Limit is inactive or declined.

Filters

The filter row affects both tables except for the category dropdown:

  • All categories: filters only the Category Rules request by selected game subcategory.
  • All statuses: sends active-only filtering to both Category and Global requests.
  • All Types: sends MWL type filtering to both Category and Global requests.

Changing a filter resets the affected request back to page 1 with the default row limit.

Table columns

Both tables show the same operational columns:

  • ID: saved bet-limit rule ID.
  • Description: operator description, or No description when empty.
  • Category: category name for Category Rules; Global Limit for global rules.
  • Limit (EUR): amount range in EUR, formatted to two decimals by the page.
  • Tags: include tags in green and exclude tags in red; All players when no include tags are present.
  • Priority: highest numeric priority wins when multiple rules match.
  • Flags: shows MWL Inactive when the rule is gated to MWL-inactive players.
  • Status: Active or Disabled; clicking the pill toggles the saved status.
  • Actions: edit and delete controls.

Important actions

Create

Create opens the create form. No rule is created until the form is submitted.

Edit

The edit icon opens the saved rule detail page.

Status toggle

Clicking a status pill immediately sends a status-toggle request. There is no confirmation dialog.

When a rule is disabled, the save flow also removes assigned player links for that rule.

Delete

The delete icon opens a confirmation dialog. Confirming delete soft-deletes the rule by setting it inactive and setting a delete timestamp.

Delete also removes assigned player links for that rule. Deleted rules are excluded from normal list reads.

Edit as JSON

Edit as JSON opens a bulk editor containing the currently loaded Category and Global rows.

This is a high-impact maintenance tool:

  • invalid JSON cannot be applied;
  • JSON must be an array;
  • existing rows are updated by id or limitId;
  • rows without an ID can create new rules;
  • inactive updated rows can remove assigned player links;
  • the page reloads both Category and Global lists after a successful bulk update.
More details

Definitions and formulas

Open only the section you need. The relevant section opens automatically when you request help for a specific item on screen.

Calculations13 topicsOpen details

Category and Global list split

Logic
The page sends one request with categoriesOnly=true for Category Rules., The page sends another request with globalOnly=true for Global Limit Rules., Source reads exclude soft-deleted rules from both requests., Each response has its own rows and count.

Loaded rules summary

Logic
Rules equals the number of currently loaded Category rows plus currently loaded Global rows., Active equals the number of currently loaded rows whose isActive flag is true., The summary is not the total across every page when pagination hides additional rows.

Category filter flow

Logic
The category dropdown is populated from active casino subcategories., Selecting a category sets category on the Category Rules request., The Global Limit Rules request is not changed by category selection., Filter changes reset Category Rules pagination to pageNo=1 and limit=200.

Status filter flow

Logic
Active maps to activeOnly=true., Disabled maps to activeOnly=false., Empty selection omits activeOnly and returns both statuses., Status filter changes apply to both Category and Global list requests.

MWL type filter flow

Logic
Mwl Inactive maps to mwlInactive=true., Standard maps to mwlInactive=false., Empty selection omits mwlInactive and returns both rule types., MWL type filter changes apply to both Category and Global list requests.

Limit EUR display

Logic
The list displays amountFromEur and amountToEur., Both values are cast to numbers by the page., Both values are formatted to two decimals., The list does not convert the range into other currencies.

Tag display and matching meaning

Logic
Include tags are displayed as green pills., Exclude tags are displayed as red pills., Missing include tags display All players., The page text explains that matching requires all include tags and none of the exclude tags.

Rule priority resolution

Logic
The page explains category rules are checked before global rules., The page explains highest priority wins when multiple rules match., The page explains casino Settings default is the fallback when no category or global rule matches., This list page does not edit the casino default.

Status toggle flow

Logic
Clicking a status pill sends limitId and the inverted isActive value., The save flow verifies the rule exists and is not soft-deleted., The save flow updates isActive inside a transaction., If a rule is disabled, the save flow deletes assigned player links for that rule., The page reloads the list after the toggle succeeds.

Soft delete flow

Logic
Delete first opens a confirmation dialog., Confirmed Delete sends limitId to the delete flow., The delete flow sets isActive=false and deletedAt to the current source timestamp., The delete flow removes assigned player links for the rule., Normal list reads filter deletedAt=null, so the row disappears after revalidation.

JSON editor local guards

Logic
The editor starts with currently loaded Category and Global rows., Invalid JSON syntax sets local error state., Apply Changes is disabled while JSON error state exists., Apply Changes rejects parsed JSON that is not an array., Format, upload, download, and copy are browser-local operations until Apply Changes.

JSON bulk update flow

Logic
The page sends a parsed array to the bulk update flow., The bulk update flow validates limits is a non-empty array., For each item, the bulk update flow updates an existing rule when id or limitId matches a non-deleted row., For each item without an existing ID, the bulk update flow creates a new rule., The bulk update flow removes assigned player links when an existing rule is updated with isActive=false., The bulk update flow commits the bulk operation in one transaction., The page reloads both list requests after success.

Independent table pagination

Logic
Category Rules and Global Limit Rules have separate pageNo and limit state., Default pageNo is 1., Default limit is 200., Visible row-limit choices are 5, 15, 30, 50, 100, 200, and 500., The source applies offset from one-based pageNo when pageNo and limit are present.
Fields10 topicsOpen details

ID

Saved identifier for the predefined bet-limit rule.

Group
table
Data Type
number

Description

Human-readable rule description.

Group
table
Data Type
string
Empty State
No description

Category

Shows the game subcategory for category rules or Global Limit for global fallback rules.

Group
table
Data Type
string
Display
Category Rules: Category name from active category lookup. | Global Rules: Global Limit. | Missing Category Name: Wrong category name with the category ID.

Limit (EUR)

EUR amount range that the rule applies to.

Group
table
Data Type
money-range
Display
Amount From: amountFromEur formatted to two decimals. | Amount To: amountToEur formatted to two decimals.
Caveats
The list shows EUR values only. Currency preview belongs to the create/detail form, not this list.

Include Tags

Player must have all included tags for the rule to match.

Group
targeting
Data Type
string-array
Display
Non Empty: Green pills. | Empty: All players when no include tags are present.

Exclude Tags

Player must not have any excluded tag for the rule to match.

Group
targeting
Data Type
string-array
Display
Non Empty: Red pills. | Empty: No red exclude pills.

Priority

Highest numeric priority wins when multiple rules match the same player and category/global tier.

Group
resolution
Data Type
number

Flags

Shows whether the rule applies only when the player has declined or inactive Monthly Winning Limit.

Group
resolution
Data Type
boolean
Display
True: MWL Inactive pill. | False: Dash.

Status

Shows whether the rule is active and can participate in rule matching.

Group
lifecycle
Data Type
boolean
Display
True: Active. | False: Disabled.
Caveats
The visible pill is clickable and sends an immediate toggle request., Disabling removes assigned player links for the rule.

Actions

Opens the saved rule detail page or opens the delete confirmation dialog.

Group
lifecycle
Data Type
actions
Filters3 topicsOpen details

All categories

Filters Category Rules by a selected game subcategory.

Data Type
select
Source Mapping
Request: category rules request | Query Param: category | Value: masterGameSubCategoryId
Caveats
This filter is applied only to the Category Rules request., The dropdown options are active casino subcategories.

All statuses

Filters both tables by Active or Disabled status.

Data Type
select
Options
Active, Disabled
Source Mapping
Query Param: activeOnly | Active: true | Disabled: false | Empty: all statuses

All Types

Filters both tables by standard rules or MWL-inactive-only rules.

Data Type
select
Options
Mwl Inactive, Standard
Source Mapping
Query Param: mwlInactive | Mwl Inactive: true | Standard: false | Empty: all types
More help

Related pages

Bet Limits

Operator documentation for bet-limit inventory, create flow, and saved limit detail pages.

Bet Limits / Detail

Saved bet-limit edit workspace for one predefined rule, including locked category scope, EUR amount range, helper currency preview, player-tag targeting, MWL behavior, and active state.

Bet Limits / Form

Create workspace for predefined bet-limit rules, including category fan-out, EUR amount range, helper currency preview, player-tag targeting, MWL behavior, and active state.

Activity Tag Rules / List

Main inventory for activity-driven tag rules, with search, activity and status filters, grouped rows, clone, edit, and run actions.

Affiliate Deals / List

Searchable table of affiliate deal rows with PID filter, create action, dashboard shortcut, and edit/delete row actions.

Affiliate Payment Settings / List

Affiliate payment settings inventory page for reviewing configured rows and opening saved records.