Customer Loyalty Programs: The Software Behind Them
Key takeaway
The hard parts are identifying the same customer across channels, tracking outstanding points as a financial liability, and preventing abuse. Design the earn and burn rules as configuration from the start — marketing will change them far more often than anyone expects.
A loyalty programme looks like a points counter and is actually a ledger, an identity system, and a rules engine that finance has an interest in.
Points are a liability, not a counter
Outstanding points represent goods or discounts you owe. That means an auditable ledger — every accrual and redemption recorded with its source transaction, never a balance updated in place. Finance will need the total liability, its movement, and breakage from expiry. Building this as a simple integer field on the customer record is the mistake that forces a rebuild once the programme is material.
Identity across channels
- The same customer must be recognised in store, online, in the app, and at a call centre — otherwise points are split across phantom accounts and customers complain.
- Decide the identifier: phone number, email, or a scannable card. Each has trade-offs at the till.
- Provide a merge path for duplicate accounts that moves balances and keeps the audit trail.
- Handle the in-store case where a customer forgot their card, or they'll stop bothering.
Make the rules configurable
- Earn rates by product category, tier, channel, and time period — marketing will want a double-points weekend with two days' notice.
- Redemption options with their own rules and exclusions.
- Tier qualification and, importantly, tier downgrade, which is where the fiddly logic lives.
- Expiry rules, including the notifications that regulation or decency requires before points lapse.
- Every rule change versioned and dated, because a customer will ask why they earned what they earned last month.
Anticipate abuse
- Returns after redemption — reverse the accrual, or the programme funds itself out of your margin.
- Staff accounts scanning their own card on unaffiliated transactions; monitor and enforce.
- Automated signups harvesting joining bonuses.
- Points transfers, if you allow them, become a currency with a secondary market. Most programmes shouldn't.
Measure whether it works
Compare enrolled and non-enrolled customers on repeat rate, basket size, and margin — not on enrolment numbers, which measure only how hard the till prompt is. A programme that increases visits but discounts customers who would have shopped anyway is a cost centre with a loyal-looking dashboard.