How do I run a loyalty program for my shop?

The short answer
Points on spend rather than stamps on visits, because retail baskets vary enormously and a customer spending two hundred should not earn what a customer spending five earns. Then the part most shops skip: knowing what each person buys, so the reward and the reason to come back are about them rather than generic.
On this page
Stamps are the wrong shape for retail
A stamp card treats every visit as equal. In a café that is fine, because every visit is roughly a coffee. In a shop it is not: one customer spends five, the next spends two hundred, and a stamp each is both unfair and expensive.
Points on spend fixes it. The reward scales with what somebody is actually worth to you, the big spender feels recognised, and the person buying one small thing is not accidentally earning their way to something you cannot afford to give.
The exception is a shop with a genuinely uniform basket — a bakery, a newsagent, a takeaway counter. There, stamps are simpler and simpler wins.
Set the rate so it is legible
The mistake shops make is a points rate nobody can hold in their head. If a customer cannot roughly estimate where they are, the scheme stops influencing anything.
Aim for a rate they can state in one sentence. "A point per unit spent, a reward at two hundred" is legible. "Two point five points per unit, redeemable at four hundred and eighty" is a spreadsheet, and it will be ignored.
Then set the reward level from real basket data. Look at what a regular actually spends in three months and put the reward inside that, not beyond it. A threshold nobody reaches is a scheme nobody joins — and worse, it is a promise that quietly reads as a trick.
The thing shops know and never write down
Here is the real opportunity in retail loyalty, and it is not the points.
A good shopkeeper knows their regulars — what they buy, what size, what they came in asking for last month, what they would like when it arrives. That knowledge lives in one person's head, disappears on their day off, and leaves entirely when they do.
Writing it down changes the business. "The new stock in the brand you like has arrived" is worth more than any discount, and it is only possible if the purchase history is attached to a person rather than to a till receipt. That is what a loyalty scheme is actually for in retail: it is the excuse to have a customer record at all.
Two things worth more than the points
Hold something for someone. "Call and we'll put it aside" is a stronger offer than most loyalty rewards and almost nobody publishes it. It costs nothing and it is a reason to be your customer rather than the internet's.
Tell them first. Early access to new stock or a sale, for people on the list. Free to run, genuinely valued, and it moves stock before you have to discount it — which is a better outcome than the discount was.
What this looks like in Helm
Loyalty is a module on the same dashboard as your website, so the customer with points is the same record as the customer who enquired or bought.
You pick points rather than stamps for retail, set the threshold, and name the reward. Redemption is a QR at the counter using a code that expires in minutes, so nobody redeems from a screenshot. Boost periods let you run double points on a quiet weekday rather than discounting a busy one.
Customers underneath is where the retail value actually sits: who they are, what they have spent, when they were last in, and a leaderboard you can sort by spend. That is the shopkeeper's head, written down and surviving a day off.
And the card lives on your own website, behind a customer login rendered in your own pages, with nothing to install. For a shop competing with online retail, not sending your customer to somebody else's app to check their points is worth more than it sounds.
The short version
Use points on spend unless your basket is genuinely uniform. Make the rate legible enough to say in one sentence and set the reward inside what a regular actually spends in three months. Then use the customer record for the thing that only a shop can do — knowing what someone buys and telling them when it arrives, which beats any discount you could offer.