HomeBlog
Loyalty Points Software: How Points Engines Actually Work
Guides

Loyalty Points Software: How Points Engines Actually Work

Gameball Staff
Gameball Staff
October 5, 2026

Loyalty points software is the system that issues, stores, expires and redeems reward points, keeping a ledger of every point a customer earns or spends so that balances stay accurate across every channel. Most buyers judge it by the widget their customers see. The part that decides whether a program makes or loses money sits underneath, in the points engine.

This guide opens that engine up in plain language: how the points ledger records every movement, how accrual rules decide who earns what, how expiry logic works, what happens to a balance when an order is refunded, and how outstanding points show up on the balance sheet. It finishes with the part most articles skip: why float and expiry policy change program economics more than the earn rate does.

What is loyalty points software?

Loyalty points software is the layer that turns customer actions into a points balance and turns that balance back into rewards. It takes events from your store, app or point of sale, applies your earning rules, writes the result to a ledger, and answers one question in real time for every channel: how many points does this customer have, and what can they spend them on?

It is usually one module inside a wider platform. To see how points fit alongside tiers, referrals, campaigns and reporting, read our companion guide to loyalty management software, which maps the full stack and how to choose between vendors. This page goes one level deeper, into the points engine itself.

5 to 25x
Cost of acquiring a new customer versus keeping one
25% to 95%
Profit lift from a 5% increase in customer retention
30% or less
Typical redemption rate in threshold and expiry based programs
60%
Paid loyalty members more likely to spend more, versus 30% for free programs

Why the points engine matters more than the widget

The points engine matters because it is where the money is. Retention is the cheapest growth lever a brand has: acquiring a new customer is anywhere from five to 25 times more expensive than retaining an existing one, and Bain research found that lifting retention by 5% raises profits by 25% to 95%. A points program is how most brands try to capture that, and the engine decides whether the program is accurate, fair and affordable.

When the engine is weak, the failures are quiet. A customer returns an order and keeps the points. A double points weekend stacks with a tier bonus nobody meant to stack. Points never expire, so the outstanding balance grows every month until finance asks why. None of these show up in a widget demo, and all of them show up in the loyalty program ROI a year later.

How a points engine works: the points ledger

A points engine works by recording every change to a balance as its own ledger entry, rather than overwriting a single balance number. Each earn, spend, reversal, adjustment and expiry is written as a line with a timestamp, an amount, a reason and a link to the order or event that caused it. The balance a customer sees is simply the sum of those lines.

That design is what makes everything else possible. Because each earned batch of points is kept as its own lot with an issue date and an expiry date, the engine knows exactly which points expire next month. Because each earn is tied to an order, a refund can reverse the exact points that order created. And because nothing is overwritten, support and finance can always explain how a balance got to where it is.

Here is the life of a single batch of points, from the order that creates it to the moment it is spent or expires.

1
Event arrives
An order, a review, a referral or a visit is sent to the engine from the store, app or point of sale, usually through an API call or a platform integration.
2
Rules evaluate it
The rules engine checks the order value, product categories, the member's tier and any live campaigns, then calculates how many points this event earns.
3
Ledger entry is written
The points are written as a new lot with an issue date, an expiry date and a link to the source order. During a return window the lot can sit as pending.
4
Balance updates
The available balance is recalculated from the ledger and pushed to the widget, the app, the checkout and the point of sale.
5
Points leave the ledger
A lot is consumed by a redemption, reversed by a refund, or removed by expiry. Each of those is its own entry, so the history stays complete.

Accrual rules: how a loyalty points system decides who earns what

Accrual rules are the instructions that convert a customer action into a number of points. A simple loyalty points system has one rule, such as one point per dollar or per riyal spent. A mature one layers several rules on top of each other, and the engine has to know which ones stack, which ones cap, and what counts as the qualifying amount.

Rule typeExampleWhat the engine needs to know
Base earn1 point per $1 or per SAR 1 spentOrder value net of tax, shipping and discounts, so points are not earned on money the store never keeps
MultiplierDouble points on a category or a weekendProduct category, the campaign window and whether it stacks with other bonuses
Tier bonusGold members earn 1.5xThe member's tier at the moment of the order, not at the moment the points post
Action based200 points for a review or a referralThe event source and a cap per member to stop farming
Pending pointsPoints held until the return window closesThe return window per channel, and what releases or cancels the hold

Two details separate a solid engine from a fragile one. The first is the qualifying amount: earning on the gross total, including tax and shipping, quietly raises the cost of every point. The second is stacking. If a tiered loyalty program gives Gold members 1.5x and a campaign gives everyone 2x, the engine needs an explicit rule for whether that becomes 3x, 2x or 3.5x. If you are still designing the earn and burn side itself, our guide to setting up a points reward system covers the customer facing choices.

Brands selling across the GCC add one more requirement. A store that takes orders in riyals and dirhams needs the engine to convert each currency into points at a deliberate rate, so a customer in Riyadh and a customer in Dubai earn the same value for the same spend. Our comparison of loyalty program software in the UAE covers what to check for multi currency setups.

Expiry logic: how points expire and why it matters

Expiry logic is the set of rules that removes unused points from a balance after a period of time or inactivity. It exists for two reasons: to create urgency that brings customers back, and to stop the outstanding balance from growing forever. Most engines support one of four models.

01
Fixed term per lot
Each batch of points expires a set period after it was earned, for example 12 months. Precise and fair, but it needs a ledger that tracks lots, not just a total.
02
Rolling inactivity
The whole balance expires only if the member has no activity for a set period. Any earn or spend resets the clock, so active members never lose points.
03
Calendar reset
All points earned in a year expire on a fixed date. Simple to explain and to account for, but it produces a single spike of expiries and complaints.
04
Tier linked
Higher tiers keep points longer or never expire. It turns expiry into a perk and gives members another reason to climb.

Whichever model you choose, the engine also needs a consumption order. Most use first in, first out: when a customer redeems, the oldest lot is spent first, so the points closest to expiry are used before they lapse. Pair expiry with reminder messages through marketing automation, so members hear about expiring points while there is still time to come back and spend them. Expiry rules also vary by market and by industry, so check local consumer rules before you set them.

What happens to loyalty points when an order is refunded?

When an order is refunded, a well built engine reverses the exact points that order earned, by linking the reversal to the original ledger entry. The hard case is when the customer has already spent those points. Then the engine has to decide whether the balance can go below zero, whether to claw the points back from future earnings, or whether to absorb the loss.

ScenarioWhat a good engine doesRisk if it does not
Refund before points are spentReverses the exact accrual linked to that orderThe customer keeps points for an order they returned
Refund after points are spentPosts a negative entry, so the balance goes below zero and future earnings repay itThe program quietly funds a free reward
Partial refundReverses points in proportion to the refunded amountOver or under correction, and a support ticket either way
Points were redeemed on the refunded orderRestores the redeemed points to the member's balanceThe customer loses value they paid for with earlier purchases
Points still pendingCancels the pending lot so nothing ever postsNone, which is why pending points are worth enabling

Pending points are the cleanest fix. Holding earned points until the return window closes means most refunds never touch a live balance. That matters most for categories with high return rates, such as fashion, and for markets where cash on delivery orders can be refused at the door. For multi location brands, the same logic has to hold in store, which is one of the reasons we list return handling among the features every chain needs in our guide to retail loyalty software.

Points liability: how loyalty points hit the balance sheet

Outstanding loyalty points are a liability, because every point you issue is a promise of a future discount or free product. Under the revenue standards ASC 606 and IFRS 15, points that give the customer a material right are treated as a separate performance obligation, so part of the sale is deferred and the business recognises revenue when those future goods or services are transferred or when the option expires.

Breakage, the share of points that will never be redeemed, is estimated up front. Under ASC 606, a business that expects breakage should recognize the expected breakage amount as revenue in proportion to the pattern of rights exercised by the customer, and reassess that estimate every reporting period. For planning, one loyalty vendor's accounting guide sizes the exposure as outstanding points multiplied by cost per point multiplied by redemption rate, and notes that threshold based programs with expiry usually see a redemption rate of 30% or less.

This is why the ledger matters to finance as much as to marketing. Estimating breakage needs clean history: how many points were issued, redeemed and expired in each period, by cohort. An engine that only stores a current balance cannot produce that. This section is general information rather than accounting advice, so agree the treatment with your auditor before launch.

Why float and expiry change program economics more than earn rate

Float and expiry change program economics more than earn rate because the real cost of a program is not what you issue, it is what gets redeemed. The earn rate sets the face value of every point. The redemption rate, which is driven by thresholds, expiry rules and how long points sit unspent as float, decides how much of that face value ever turns into a real cost.

A simple model shows the effect. Take a store with $1M in annual sales and a program that returns 1% of spend in points. At a 30% redemption rate, the program costs about $3,000 a year in rewards. Doubling the earn rate to 2% doubles that to $6,000. But keeping the 1% earn rate and removing expiry, which in this model lifts redemption to 60%, also costs $6,000. Tightening expiry so redemption falls to 20% cuts the cost to $2,000.

Annual reward cost per $1M of sales
Illustrative model: payback rate multiplied by redemption rate. Assumptions, not benchmarks.
1% earn, 20% redeemed
$2,000
1% earn, 30% redeemed
$3,000
2% earn, 30% redeemed
$6,000
1% earn, 60% redeemed
$6,000

The lesson is not to make points hard to redeem. A program nobody redeems is a program nobody values, and it will not change behaviour. The lesson is that expiry window, redemption threshold and float are economic levers in their own right, and they deserve the same modelling as the earn rate. Track redemption by cohort alongside the other loyalty program success metrics, and use loyalty analytics to see how changes to expiry move both liability and repeat purchase.

What to look for in points program software

The best points program software makes the ledger visible and controllable, not just the widget. Use this checklist when you evaluate vendors, and ask each one to show the feature live rather than describe it.

Seven things to test in a points engine
✓
Every balance can be traced line by line to the orders, events and adjustments that created it.
✓
Points are stored as lots with issue and expiry dates, and redemptions consume the oldest lot first.
✓
Refunds reverse the exact accrual from the original order, including partial refunds.
✓
Pending points can be held for a return window that you set per channel.
✓
Stacking and caps between multipliers, tier bonuses and campaigns are explicit settings.
✓
You can export issued, redeemed and expired points by period for your finance team.
✓
The same balance is available in real time on the website, the app and the point of sale through an API.

Developers will also want to read the API documentation before signing. Gameball publishes its developer documentation openly, and our post on Gameball SDKs and APIs explains when to use each. For the commercial side of the evaluation, the customer loyalty platform buyer's guide includes a scorecard you can copy.

How Gameball helps

Gameball's loyalty points engine holds pending points during the return window, auto adjusts rewards on refunds, and lets you decide how long points stay valid, while handling more than 15 million API calls a day at under 300ms latency. The same ledger powers gamified challenges, referral rewards and program analytics, so you can book a demo to see it on your own data or compare plans and pricing.

Related reads

Frequently asked questions

What is loyalty points software?

Loyalty points software is the system that issues, tracks, expires and redeems reward points for a brand's customers. It receives events such as orders and reviews, applies earning rules, records each change in a ledger, and keeps one accurate balance available on the website, app and point of sale so customers can earn and spend anywhere.

What is a points engine?

A points engine is the core of loyalty points software. It combines a rules engine, which decides how many points an action earns, with a ledger, which records every earn, redemption, reversal and expiry as a separate entry. Because nothing is overwritten, the engine can explain any balance, reverse refunds precisely and report outstanding points to finance.

How do loyalty points expire?

Loyalty points usually expire in one of four ways: a fixed period after each batch is earned, after a period of member inactivity, on a fixed calendar date each year, or on a schedule that depends on tier. Most engines spend the oldest points first, and sending reminders before points expire brings members back to redeem them.

What happens to loyalty points when a customer returns an order?

A good points engine reverses the exact points the returned order earned by linking the reversal to the original ledger entry. If the customer already spent those points, the balance can go negative and be repaid from future earnings. Holding points as pending until the return window closes avoids most of these cases entirely.

Are loyalty points a liability on the balance sheet?

Yes. Under ASC 606 and IFRS 15, points that give customers a material right are a separate performance obligation, so part of each sale is deferred until the points are redeemed or expire. Expected breakage is estimated and recognised over time. Businesses should confirm the exact treatment for their program with their auditor.

What is a typical redemption rate for a points program?

Redemption rates vary widely by industry and program design. One loyalty vendor's accounting guide reports that threshold based programs with expiry usually see redemption of 30% or less. A very low rate cuts cost but often means members do not value the rewards, so track redemption by cohort rather than chasing a single target.

Ready to grow?

Get in touch with our sales team today.

The loyalty vendor checklist your CTO
will thank you for

Discover engineering challenges, essentials, and more from global brands.

Gameball loyalty checklist showing low latency, elastic scaling, A/B testing, and other features with performance charts, titled 'The loyalty vendor checklist your CTO will thank you for'.
Abstract design with orange overlapping shapes on a yellow background.

Gameball Staff

The Gameball team shares news about Gameball, insights on loyalty, gamification, and customer engagement strategies that help brands turn one-time buyers into lifelong fans.

Stay ahead on retention

Subscribe to our newsletter and get all the latest updates as we post.

Thank you! Your submission has been received!
Oops! Something went wrong while submitting the form.

Ready to level up your customer loyalty?

Level up your customer loyalty!

Retain more customers with less work, thanks to gamified engagement built for modern teams.
Keep customers engaged easily with gamified tools for teams.
Blue eight-petaled flower shape on a black background.Blue group of stylized cloud shapes arranged in a pattern.
Abstract orange shape resembling a stylized heart or flame on transparent background.Orange upward-pointing arrow with rounded edges on a transparent background.