Перейти до основного вмісту

Verticals

Translator note: machine-translated baseline. Needs human review by a native UK speaker. EN source is canonical.

Vertical — це категорія casino product — casino, sportsbook, lottery, poker, esports, virtual_sports, bingo. Tenant config обирає, які verticals активні; effective capabilities перетинають tenant config з adapter support.

Чому verticals мають значення

Різні verticals мають:

  • Різні канонічні події. Casino settle-ить миттєво (bet_placed + bet_settled); sportsbook settle-ить години-до-днів пізніше (sport_bet_placedsport_bet_settled або sport_bet_voided або sport_cashout).
  • Різні reporting axes. Sportsbook GGR pivot-ить по sport + bet_type; casino — по game category.
  • Різні player profiles. Деякі гравці casino-only, деякі sportsbook-only, більшість змішані.

Канонічні події per vertical

Casino

bet_placed, bet_settled, bet_won, bet_lost

bet_settled — це канонічна подія, яку рахуємо для GGR + wagering progress; інші — допоміжні. properties.amount (ставка), properties.payout (виграш), properties.game_id, properties.game_category (slots / live / table / crash / dice / sports / other).

Sportsbook

sport_bet_placed, sport_bet_settled, sport_bet_voided, sport_cashout

Двофазовий lifecycle: sport_bet_placed, потім один з sport_bet_settled / sport_bet_voided / sport_cashout. properties.sport (football / basketball / tennis / hockey / mma), properties.bet_type (single / accumulator / system), properties.odds (decimal), properties.event_ref (ідентифікатор матчу).

Player vertical activity

players.vertical_activity — це JSONB rollup keyed по vertical:

{
"casino": { "first_at": "2026-01-15T...", "last_at": "2026-05-08T...", "bet_count": 142 },
"sportsbook": { "first_at": "2026-03-02T...", "last_at": "2026-05-07T...", "bet_count": 18 }
}

Stream-processor підтримує це на кожному bet_settled / sport_bet_settled. Admin UI використовує key presence для рендерингу "casino-only / sportsbook-only / mixed" badges на player row.

UI gating

Admin Sidebar отримує tenant.verticals з layout. Items з requires predicate фільтрують динамічно:

  • Sportsbook nav item з'являється тільки коли tenant.verticals містить sportsbook.
  • Той самий pattern для майбутніх per-vertical reports / segments.

Якщо ви оперуєте casino-only сьогодні + додаєте sportsbook завтра, просто відкрийте Settings → Tenant configuration + поставте галочку. Sidebar оновлюється миттєво; existing journeys/segments недоторкані.