Loyalty: points, tiers, and rules
The heart of the system is the loyalty program. A program defines how points are earned, how they're redeemed, and what tiers exist.
Program
A program is the main loyalty unit. A tenant can have one or several — for example, one for end consumers and another for B2B professionals.
Each program has:
- Points currency — name, symbol, rounding rules.
- Members — who belongs to the program.
- Earning rules — how they earn points.
- Burning rules — what they can do with those points.
- Tiers (optional) — program levels.
Points
The base unit of reward. Accumulated in the member's balance when they trigger an earning rule (purchase, referral, visit). Spent when they redeem a burning rule (reward, discount).
Points can have expiration (e.g. expire 12 months after being earned) or be permanent.
Tiers
A tier is a step of the program. Typically:
- Bronze → 0-1000 points accumulated
- Silver → 1001-5000
- Gold → 5001+
Each tier can have:
- Points multiplier — "Gold earns 1.5× on purchases".
- Exclusive rewards — products only available at that level.
- Differentiated cashback — "Silver = 3%, Gold = 5%".
The tier is computed from points accumulated over the last N months (configurable window) — not current balance.
Earning rules (how points are earned)
Rules that grant points to a member when something happens. Typical examples:
| Event | Example rule |
|---|---|
| Purchase | "1 point per euro spent" |
| Evidence approved | "100 points per pharmacy receipt > €20" |
| Sign-up / Birthday | "500 points on sign-up, 300 on your birthday" |
| Referral | "1000 points when someone signs up with your code" |
| Check-in | "50 points per store visit (via QR/GPS)" |
| External event | "X points when a webhook arrives from your ERP" |
Rules can have conditions: valid only in date ranges, for members of a segment, capped at N uses per member.
Burning rules (how points are redeemed)
Rules that say what members can do with their points:
| Type | Example |
|---|---|
| Catalogue reward | "500 points = 1 t-shirt" |
| Gift card | "2000 points = Amazon 20€ card" |
| Direct cashback | "1000 points = €10 in your account" |
| Purchase discount | "200 points = €2 discount" |
| Donation | "500 points = €5 to charity" |
Every rule can be limited by stock, dates, minimum tier.
Cashback
A special case: the member receives actual money (or credit to bank account / gift card) instead of accumulating points. It works like an earning rule but instead of granting points it initiates a disbursement.
Paid out via:
- Internal or external gift cards (Tango, Tremendous).
- Bank transfer / Bizum / Stripe Connect (when configured).
- Internal credit for future purchases.
Referrals
Every member has a unique referral code. When a new member signs up with that code:
- The referrer earns points / cashback.
- The new member gets a welcome bonus.
Stamps (digital punch cards)
Alternative to points — the classic "every 10 coffees, the next one is free". Members accumulate stamps until a card is full, then they get the associated reward. Useful for hospitality, services.
How campaigns relate
Campaigns can modify program rules during a period: "in July give double points on purchases", "during launch each ticket earns 500 bonus". They are activation layers over the base program, they don't replace it.