Preskoči na sadržaj

E6: Loyalty Program

Overview

Bounded Context / Service: Loyalty Service, Mobile App

Goal: Track fan attendance, calculate loyalty points, and provide early access to qualifying fans.

Priority: Medium

Primary User Roles

  • Fan (loyalty member)
  • Admin (for configuration)

Scope

In-Scope

  • Loyalty points tracking (1 point per attended paid match)
  • 5-year rolling window for points calculation
  • Tiered ticket allocation (points-based, e.g., 27+ = 4 tickets)
  • Early access window configuration per match
  • Hard limit enforcement (4 tickets per match across all phases)
  • Points display in app (Ticketing Profile "My Loyalty Status" section)
  • Points history page with match-by-match breakdown
  • Points notification after match attendance

Out-of-Scope

  • Loyalty tiers with perks beyond ticket allocation
  • Points redemption for merchandise
  • Partner loyalty integration

Features

ID Feature Size Description
E6-F1 Loyalty Points Tracking S Track points with 5-year window
E6-F2 Loyalty Early Access Configuration S Configure points-to-allocation mapping
E6-F3 Loyalty Points Award After Match S Award points on match closure

Dependencies

  • Match service for attendance data
  • User profile service for OIB validation
  • Push notification service

Risks & Open Questions

OQ-E6-1: Points-to-Allocation Mapping

What is the exact points-to-allocation mapping table?

Example from doc: "27 points = 4 tickets"

Needed: Complete tier table.

OQ-E6-2: Match Eligibility

Which matches count for loyalty points - all or configurable subset?


Last Updated: January 2026