LoyalBite Live demo
Products/Restaurant software/Loyalty & rewards

LoyalBite: loyalty that runs on the receipt

Updated 23 Sep 2026 English & Arabic (RTL) iOS · Android · Web admin Light & dark mode
LoyalBite app home screen with a total balance of 1,102 points, quick actions and stamp cards
Latest offers in the LoyalBite app, each with days left and a Get Offer button
EXAMPLE RECEIPT
BEAN & BREW
JBR · Dubai

Iced latte19.00
TOTAL AED19.00

MemberBS-DEMO02
19.00 × 2.0+38 pts
19 ≥ 15+1 stamp
Invoice check✓ new

Latest version 1.0 · 23 September 2026

Flutter 3.9 (iOS & Android) ASP.NET Core on .NET 10 SQL Server 2022 Firebase push notifications
×ratePoints = bill in AED × the restaurant’s rate, rounded down
+1stamp for each visit above the restaurant’s minimum spend
20%example redemption cap: points can cover up to this share of a bill
A→Bstamps earned at one branch, redeemed at another
How it works

The till decides. The app just shows it.

Every point and stamp starts at the point of sale. The customer app never adds or removes anything by itself, so there’s nothing on the phone to tamper with.

Member shows their QR

The code carries a member ID, member code and a signature. No balance, no points.

Cashier scans at the POS

The POS sends the invoice number, branch and bill amount to /transaction/earn.

The server does the maths

Rate × bill, the best live campaign multiplier, and a stamp if the bill passes the threshold. A repeated invoice is rejected.

The member gets a push

“You earned 38 points at Bean & Brew.” Balance, stamps and history update right away.

Customer app

Everything a regular wants, one tap from home

Built with Flutter for iOS and Android, in English and Arabic, with a matching dark mode.

Points wallet

Total balance with its AED value, plus a balance for each restaurant.

Stamp cards

Round stamps fill up visit by visit, with a clear “Reward ready” state.

Offers

Discounts, free items and point multipliers, each with its own QR to claim at the counter.

Around you

Nearby branches on a map with addresses and directions.

Notifications

Earned, redeemed, offer and update alerts, with read and unread states.

English & Arabic

Every screen is translated, with a true right-to-left layout for Arabic.

Offer types

Four kinds of offer, set up in minutes

Each offer can target certain branches or days, and set a minimum spend, a limit per customer and an overall cap.

20% OFF
Discount %A percentage off the bill, e.g. at one branch only.
FREE
Free itemFries, a lassi or a pastry on the house.
3× POINTS
Points multiplierTriple points every Tuesday, for example.
CUSTOM
CustomAnything else, like a free upgrade.
Screens

A home screen built around the next reward

Balance first, then stamp progress, live offers and recent activity. Scroll sideways to see more.

Home screen: balance card, My QR and History buttons, quick actions and stamp cards
HomeBalance, quick actions and stamp cards
Bean and Brew restaurant page with 324 points and a stamp card
RestaurantPoints and stamps at one restaurant
Latest offers list with banners, days left and Get Offer buttons
OffersLive offers with days left
Member QR code screen shown to the cashier
Member QRShown to the cashier at the till
Home screen in Arabic with a right-to-left layout
ArabicRight-to-left layout
Admin panel

Run every restaurant and branch from one place

Points issued and redeemed, new members and a 14-day activity chart, right on the dashboard.

  • Restaurants & branches. English and Arabic names, map locations, menus, brand colours and social links.
  • Earning rules per restaurant. Point rate, stamp threshold, stamps to a reward and the redemption cap.
  • Campaigns. Point multipliers by minimum spend, day of the week or a new branch opening.
  • Managers. Each restaurant manager sees and edits only their own restaurant.
  • Push notifications, analytics and an audit log so you can see what happened and when.
/Dashboard
LoyalBite admin dashboard showing total users, new members this week, points issued and redeemed, and a 14-day points activity chart
This is the real admin panel. Sign in to explore it. Open the live demo
POS & security

Rules the server enforces on every visit

Balances only change inside a database transaction, and only when the POS sends the request.

No double counting

Each invoice can earn once per branch. Sending it again returns “already processed”.

INV-20417 @ bean-brew-jbr → earned
INV-20417 @ bean-brew-jbr → rejected

Redemption cap, applied quietly

A customer can only use points up to a share of the bill. Anything above that simply isn’t deducted, with no error at the till.

Bill AED 120 · cap 20% · rate 1.0
asked 30 pts → 24 pts used

Stamps work across branches

Collect stamps at Dubai Marina and claim the reward in Downtown, as long as it’s the same restaurant.

A QR code that can’t be forged

The member QR is signed on the server and holds no balance, so a copied or edited code gets nothing.

What’s included

Full source for all three parts

Flutter app

Feature folders with Cubit state management and dependency injection. English and Arabic text files.

lib / features / <feature>

Admin panel + API

ASP.NET Core MVC for the admin panel and a REST API for the app and POS, with a service layer.

Controllers · API · Services

Database

EF Core migrations, a starter seed with roles and an admin account, plus demo data for testing.

SQL Server 2022 · Docker compose
FAQ

Common questions

Can customers earn points without the POS?

No. Points and stamps are only added when the POS sends a transaction. The app shows balances but never changes them, which keeps the numbers trustworthy.

Do points work across all our restaurants?

Members see one total balance plus a balance for each restaurant. Each restaurant sets its own point rate and redemption cap, and stamps can be used at any branch of the same restaurant.

What happens if a customer tries to use too many points?

The server uses as many points as the restaurant’s cap allows and leaves the rest in their balance. The cashier and customer don’t see an error.

Is there a tier system (silver, gold)?

No. Everyone earns at the same rate. Campaigns and offers are how you reward quiet days, big spends or a new branch.

Can we use our own brand and colours?

Yes. The app’s colours and fonts come from one theme file, and each restaurant has its own logo, banner and theme colour set in the admin panel.

Give your regulars a reason to come back

Sign in to the admin panel and explore it with demo restaurants, offers and customers.

Open the live demo