VIP programs and loyalty system through the platform

Introduction

The loyalty system and VIP programs keep the most active players and increase lifetime value (LTV). At the platform level, a multi-layered model of accumulating points, automatic transitions between statuses, personalized awards and reporting is implemented. All elements are controlled by the promo engine and PMS microservices.

1. Loyalty system architecture

1. Loyalty Service

Stores level configuration ('Bronze', 'Silver', 'Gold', 'Platinum') with turnover thresholds and bonus privileges.
API: `/loyalty/{playerId}`, `/loyalty/points/add`, `/loyalty/status/update`.
2. Event Bus

Kafka события: `BetPlaced`, `WinCredited`, `DepositMade`, `BonusRedeemed`.
Loyalty Service consumer aggregates turnover and awards points.
3. PMS integration

After a player status change, the PMS is notified via webhook to update segmentation and access rights.

2. Points Model

1. Turnover-based scores

For each 1 EUR rate equivalent, 1 Point (configurable) is charged.
2. Odds by game

Slots: × 1, board games: × 0. 5, live casino: × 1. 5, exclusive: × 2.
3. Promotional multipliers

As part of the campaigns ('DoublePointsWeek'), the promo engine sets a temporary 'multiplier'.

3. VIP Levels and Privileges

LevelThreshold turnover (EUR)Bonus multiplierMini cashbackPersonal manager
Bronze0–9 999×10 %
Silver10 000–49 999×1. 11 %
Gold50 000–199 999×1. 252%Email Support
Platinum≥ 200 000×1. 53%Personal Manager

Automatic upgrade when the threshold is reached and downgrade via rolling 30-day turnover.
Personal offers: special freespins, exclusive tournaments, accelerated withdrawals.

4. Triggers and workflow

1. Event-driven processing

For each 'BetPlaced' event, Loyalty Service recalculates cumulative turnovers and points.
2. Workflow for statuses

The service supports state machine:
  • ```
  • if cumulative_turnover ≥ level. threshold and current_level < level:
    • transition to next_level
    • if rolling_30d_turnover < prev_level. threshold:
      • transition down
      • ```
      • 3. Notifications to player

      When changing the level, the promo engine sends email/SMS/push through the Notification Service.

      5. Expense accounting and points redemption

      Points conversion → bonuses

      Scale: 1000 Points = 10 EUR free play.
      Points are blocked when a redemption request is created, written off after confirmation of use.
      Validity period

      Points expire after 12 months of inactivity (rolling expiry), automatic deduction via Cron-job.

      6. Integration with promo engine and GMS

      Linking campaigns

      VIP triggers ('OnLevelUp') run campaigns in the Campaign Engine.
      Set up RTP adjustments

      For Platinum players in GMS, you can set a higher RTP minimum through the feature flag.

      7. Analytics and Reporting

      1. Loyalty Service Metrics

      `points_accrued_total`, `points_redeemed_total`, `level_up_events`, `avg_points_per_user`.
      2. Dashboard at Grafana/BI

      Level hopper, retention by VIP status, impact on ARPU.
      3. Data export

      CSV files with accrual and redemption details for financial analysis.

      8. Security and access control

      RBAC

      Differentiation of rights to configure levels and view VIP data: roles' loyalty _ admin ',' marketing _ manager '.
      Audit Trail

      Log of all operations: changing thresholds, manual score adjustments, forced statuses.

      9. Scalability and fault tolerance

      Stateless Loyalty Service

      Horizontal scaling via Kubernetes HPA by lag-y in Kafka.
      Replica-sharing Redis

      Cache cumulative\_ turnover and current\_ level, replication and Sentinel for HA.
      Circuit Breaker

      Protection against failures in Event Bus: fallback to the last saved values.

      Conclusion

      The platform implementation of VIP programs and loyalty systems combines event-driven architecture, state machine for levels, integration with the promo engine and GMS, as well as detailed accounting of savings and repayments. This approach gives flexible configuration of privileges, transparent monitoring and retention of the most valuable players.