Loyalty & Members · Points & Tiers
Turn one purchase into the next — loyalty that compounds.
A points program is a financial liability on your books. If it credits twice, lets expired points linger, or blows past its own earning limits, it costs you money and trust. Flash's engine is built for one thing first: getting the numbers right.
The problem
A leaky points engine quietly bleeds margin.
The failures that hurt most are the invisible ones — the same purchase credited twice, a technical hiccup that drops an earning limit, points that should have expired but didn't. Each one is real money leaving the business.
Double-credited awards
A retry or a re-run can award the same purchase twice — and your liability quietly grows.
Earning limits that leak
When the system tracking daily limits blips, a naive engine just keeps awarding — the limit silently disappears.
Tiers that drift
Status based on a moving balance, or points expiring out of order, leaves members at the wrong tier and disputes piling up in support.
How it works
Accuracy is built in, not promised.
Every change to a member's balance or tier is handled one at a time, so it stays accurate even under heavy concurrent use. The same purchase is never credited twice. Points are spent oldest-first. Earning limits can't be over-spent. None of it is left to chance.
One award path
One capped award that's never double-credited — for every source.
Calculate the points
spend amount × base rate × tier multiplier, with a minimum-spend floor
Check the daily limit
confirms the member is still within their daily earning limit
Award the points
if the same purchase comes through twice, nothing is added — the original award stands
Update the daily total
only counts a genuinely new award
Safe by default. If the system that tracks daily limits is ever unavailable, the award is held back rather than granted — a technical hiccup can never quietly disable the limit.
The same path powers points from scanned receipts, Shopify orders, and marketplace orders — so the limit is enforced once, everywhere.
Tier engine
Upgrades on points earned in the last 12 months.
Re-upgrade bonus
Earn your way back up after a downgrade and you're paid a bonus.
Grace on downgrade
Slip below the level you need to maintain → drop one tier, but only after a grace period with warnings.
Tiers are based on points earned over the last 12 months — not current balance — so redeeming rewards never quietly demotes a member.
Oldest points spent first
Spending draws from a member's oldest un-expired points first, skipping anything already expired — and it's blocked up front if the balance is short, so a member can never overdraw.
Never double-credited
Changes to a balance happen one at a time per member; if the same award arrives twice, the original stands and nothing extra is added — so every record stays consistent.
Fully auditable
Every points spend is recorded in detail, so you can always show exactly which points were spent and when.
Why it's different
Reward real spend, everywhere — accounted for correctly.
Most loyalty apps reward actions on a single storefront. Flash awards points from verified purchases across every channel — and runs them all through one engine built so the numbers always tie out.
Typical approach
Single-storefront points engines
Reward clicks and purchases on one storefront only.
Flash, by design
Scanned receipts, Shopify, and marketplace orders all earn through one shared award path with the same limits.
Typical approach
Naive award logic
A retried request can credit the same purchase twice.
Flash, by design
If the same purchase comes through twice, the original award stands and nothing extra is added.
Typical approach
Fragile earning limits
If the limit tracker goes down, awards keep flowing past the limit.
Flash, by design
Safe by default — the award is held back rather than quietly bypassing the limit.
Built for integrity
The innovation here is rigor, not a chatbot.
This module's value isn't AI — it's a financially accurate points balance. Staying correct under heavy use, never double-crediting, and being safe by default are the features, because they're what keep your liability accurate.
Accurate under heavy use
Awards, spends, and tier checks for a member are handled one at a time, so simultaneous activity can never corrupt a balance.
Tiers update the moment a member qualifies
Upgrades fire as soon as a member earns their way up over the last 12 months; downgrades run on a schedule with a grace period first.
Built to keep running
Point expiry, tier checks, and birthday and re-engagement bonuses run in the background — one member's hiccup is isolated and never holds up everyone else.
What changes for the business
A points liability you can trust on the balance sheet — and a tier ladder that genuinely reflects who your best members are.
Oldest-first
points are always spent oldest-first
Always safe
earning limits hold even during a technical hiccup
Never twice
no award is ever double-credited
Tiers that update the moment a member qualifies on the last 12 months.