Two stacked glass trays: a receipt under a loupe below, reward tokens above.

Receipt scanning loyalty programs have two layers. Most of them fail in the first one.

A receipt program needs an evidence layer that reads and checks every receipt, and a reward layer that decides what it earns. Where each one breaks, and how to split the job.

If you sell through someone else’s shop, the sale happens on someone else’s system. You see the order you shipped to the retailer. You do not see the person who bought your product, what else was in their basket, or whether they will be back next month.

For a lot of brands that has been the end of the loyalty conversation. There is nothing to reward, because the transaction belongs to the retailer.

The receipt changes that. It is the one record of the sale that the shopper owns and can hand to you. A receipt scanning loyalty program asks for it, turns it into a transaction, and rewards it. We have written about what that gives a brand. This piece is about how the program is built, because the build is where most of them go wrong.

Two layers, two different jobs

Every receipt program has two layers, whether its owners think about it that way or not.

The evidence layer answers one question: is this receipt real, does it qualify, and what exactly does it say? It reads the image, checks it, and produces a clean transaction or a clear reason why not.

The reward layer answers a different question. The purchase is real and it counts. So what does this member earn? Points, progress on a challenge, a prize draw entry, an instant win, a tier.

Most programs put their attention on the second layer. That is the part the marketing team designs and the member sees. The first layer gets bought as a commodity, usually described as OCR, and treated as solved.

It is not solved. It is where the fraud comes in, where the review team’s time goes, and where members give up.

What the evidence layer actually has to do

Reading the text off a receipt is the easy part. OCR tells you what a receipt says, not whether it qualifies. The evidence layer has four jobs, and each one fails in its own way.

Read. Merchant, store, date, time, line items with quantities and prices, totals, tax lines. From a crumpled till receipt photographed on a kitchen table, from a PDF that arrived by email, and from a two-page trade invoice. The fields are the ones your campaign needs, not a fixed template.

Check. Is the date inside the campaign window? Is the retailer on the list? Is the qualifying product actually on the receipt, in the right size? Has this receipt, or this image, been submitted before, by anyone, at any point in the program? Do the line items add up to the total, and do the tax lines match the items at the correct rates? That last check matters more every month. AI can now make a fake receipt from one sentence. And a fake made from scratch is never a copy of anything, so a duplicate check will not catch it.

Decide. A clear receipt goes straight through. A doubtful one goes to a person, with the image, the extracted fields, and the reason it was flagged, side by side. An unreadable photo is sent back with a request to retake it, not rejected days later. A program that cannot make that three-way split ends up either paying out on fraud or reviewing everything by hand.

Deliver. The approved purchase has to arrive in the reward layer as a real transaction with its line items, exactly once. A retry must never award points twice. What if the shopper’s email does not match a member yet? The purchase should still arrive and wait. That way a first-time scanner is not lost while they sign up.

Get these four right and the reward layer has something it can trust. Get them wrong and no amount of clever mechanics will save the program.

Scanning is an ask, so the reward has to be worth it

Saving a receipt, opening an app, and taking a clear photo is real effort. Nobody does it for a reward they cannot feel.

That is where the reward layer earns its place. A few mechanics carry most programs:

  • Points on spend, the baseline. Simple, but slow to feel rewarding on low-value purchases.
  • Challenges with a clear goal and a deadline. Three purchases in eight weeks. A first purchase in a new category. Something to finish.
  • Prize draws, which suit low-margin products. A reward on every purchase would eat the margin. A chance at something big still gets people scanning.
  • Instant wins, which are often the strongest of the four. The reward arrives while the member is still holding the phone.

Instant wins are also where the two layers meet. A win is only instant if the evidence layer decides in the moment. If every receipt waits in a review queue, “instant” means Thursday. So clearing the easy receipts on the spot is not just about saving time. It decides which rewards you can offer at all.

Where this works

Receipt programs started with everyday products bought in supermarkets, and that is still the largest group. But the same pattern fits anywhere a brand sells through someone else.

Everyday products. High volume, low value per receipt, many retailers. The challenge is scale and fraud at scale. Two simple checks do most of the work. Has anyone sent this receipt before? And do the numbers add up?

Trade and professional buyers. Think of installers, builders and workshops. They buy a brand’s products through small wholesalers. Fewer submissions, much higher value each. The paperwork is harder too. Full-page invoices, several pages long, with trade prices, from old printers. Because each reward is bigger, the case for a person reviewing the doubtful ones is stronger too.

Baby, health, and pharmacy products. Here the goal is less about winning a new customer and more about keeping one through a change. A new formula stage, a new pack size, a refill that is due. The hard part is telling close variants apart from a short receipt line, which is really a product catalogue problem. We wrote about making your catalogue speak receipt for pet care, and the same approach applies.

Shopping centres. Many tenants, many receipt formats, one program. The centre gets something no single tenant has: a view of how members spend across the whole building.

Splitting the job

We built Steve to be the evidence layer, and Open Loyalty to be the reward layer. The split is deliberate.

Steve reads each receipt and runs the checks your campaign needs. Clear receipts go straight through. Doubtful ones go to a person, with the reason attached. Approved purchases land in Open Loyalty as transactions with line items. Your earning rules, challenges, and draws apply to them as they would to any other purchase. Other verified evidence can land as a custom event.

Each layer stays out of the other’s question. Steve does not decide that a member has completed a challenge. It supplies the approved transactions that make the challenge measurable. Open Loyalty does not try to make up for weak evidence by guessing. Campaign rules only act on purchases that have been verified.

Both work on their own. Steve can send results to any system over an API. The Open Loyalty integration is a shortcut, not a must.

Start small, with your hardest receipts

A good first pilot is one country, two product families, and three to five retailers. Collect real receipts, and include the bad ones. Faded, folded, discounted and returned. Multipacks. Online orders. Agree what the right answer is for each, before anything runs. Then measure three things, each on its own. How often the data was read right. How often receipts went to review, and why. And how members responded.

The review reasons are the most useful output. “Most reviews came from one retailer’s abbreviations” is something you can fix. “8% of receipts were reviewed” is not.

If you are planning a receipt program, book a demo and bring the receipts that worry you most.

Stop sampling.
Start proving.

Bring a source. Tell us the fields you need. Let’s extract the data and verify what matters.

Book a demo 30 minutes. Your use case. Real possibilities.