🚀
Getting Started
Everything you need to know to set up your shop
What is LoyalStack?
LoyalStack is a loyalty rewards platform for Indian local shops. You get a unique QR code — your customers scan it with their phone, enter their mobile number, and play a spin wheel, scratch card, or lucky draw to win rewards. No app needed for customers.
🎡
Spin Wheel
Customers spin to win prizes. You control which prizes appear and their odds.
🎴
Scratch Card
Virtual scratch card reveals a hidden reward. Fun and engaging for customers.
🎟️
Lucky Draw
Customers enter the draw on every visit. You pick a winner from the dashboard.
🎫
Stamp Card
Collect X stamps across visits, earn a reward. Brings customers back every time.
Your Setup Checklist
1
Create your accountFill in your shop details, select your business type from the dropdown, verify your email with OTP, and log in.
2
Create a CampaignGo to Campaigns → Add Campaign. Give it a name and set the dates.
3
Add RewardsGo to Rewards → Add Reward. Add prizes with their probabilities. Make sure all probabilities add up to 100%.
4
Design your QR PosterGo to QR Poster Designer, choose a theme, and download your poster. Print it and place it at your counter.
5
Test it yourselfScan your QR code with your own phone to see what your customers experience.
6
Verify coupons at billingWhen a customer shows a coupon, go to Coupons → enter the code → click Mark as Used.
Your Unique QR Link
Your shop has a unique URL like loyalstack.in/shop/?qr=yourshopcode. Share this link on WhatsApp, Instagram, or print it as a QR code. This is the only link your customers need.
Free Trial
You get a 7-day free trial — no credit card needed. Explore everything. After the trial, choose a plan to continue. Your data is saved during the grace period.
🏠
Dashboard Home
Your daily command center
Stats Overview
The top of your dashboard shows 4 live counters:
👥 Total Customers
Unique customers who have ever scanned your QR. Includes today's new count.
🎡 Total Spins
Total plays (spins/scratches). Shows how active your program is.
🎟️ Active Coupons
Coupons issued but not yet used. Shows redeemed count in brackets.
📅 Spins Today
How many customers played today.
Quick Actions
Six shortcut buttons below the stats take you directly to the most-used pages: Manage Rewards, QR Poster, Verify Coupon, Campaigns, Settings, and View QR Page.
Pending Approvals Queue
This section only appears when Approval Mode is ON. Every customer scan waits here for your approval before a reward is given.
1
Customer scans your QRThey enter their number and play — but the reward is held in a queue.
2
You see the queue on dashboardEach row shows the customer name, mobile, action type (Spin / Scratch / Stamp) and time.
3
Approve or RejectClick ✅ Approve (reward issued) or ✕ Reject (no reward). Or click ✅ Approve All to clear the queue at once.
ℹ️ Turn Approval Mode on/off from Settings → Scan Approval Mode. Useful to prevent fraud — only approve customers you see in person.
🎪
Campaigns
Group your rewards into timed events or festivals
What is a Campaign?
A campaign bundles your rewards into a named, time-limited event. For example: "Diwali Offers — Oct 15 to Nov 5" or "Regular Offers — always on". Only one campaign can be active at a time.
💡 If you only run one rewards program year-round, create one campaign called "Regular" with no end date and keep it active forever.
How to Create a Campaign
1
Go to CampaignsClick Campaigns in the left menu.
2
Click "+ Add Campaign"A popup form appears.
3
Fill in the detailsCampaign name, festival type, start and end dates, and optional banner text shown to customers.
4
Set it ActiveOnly an active campaign is visible to customers. Inactive ones are saved drafts.
Campaign Fields
Campaign Name
What you call this campaign. Max 150 characters.
Festival Type
Generic, Diwali, Holi, Christmas, Eid, New Year, Ganpati — changes the visual theme.
Start & End Date
When this campaign runs. End date must be after start date.
Banner Text
Shown at the top of your customer's QR page. E.g. "🎉 Diwali Special Offers!"
Edit / Delete a Campaign
- Click Edit on any campaign row to open the edit form.
- Click Set Active to make a campaign live (deactivates the current one).
- Click Deactivate to pause a campaign without deleting it.
- Click Delete to permanently remove a campaign. This cannot be undone.
⚠️ Deleting a campaign does not delete your rewards — rewards are separate.
🎁
Rewards
Control what prizes customers can win
How Rewards Work
Rewards are the prizes on your spin wheel or scratch card. Each reward has a probability (%) — the higher the number, the more likely customers win it. All probabilities for the same reward type must add up to exactly 100%.
⚠️ If your probabilities don't add up to 100%, the system shows a warning. Customers may not get accurate odds until you fix it.
How to Add a Reward
1
Go to Rewards → "+ Add Reward"
2
Choose the reward typeSpin, Scratch Card, or Lucky Draw — based on which game you're running.
3
Set Name and ValueName: what customers see. Value: the actual discount (10%, ₹50 flat, FREE item, or BETTER LUCK NEXT TIME).
4
Set Probability %How often this reward appears. E.g. 50% for "Better Luck", 30% for "10% Off", 20% for "Free Item".
5
Save and check the warningIf total ≠ 100%, adjust probabilities until the warning disappears.
Reward Fields Explained
Name
What the customer sees. E.g. "10% Off", "Free Samosa", "Better Luck Next Time".
Type
Spin, Scratch Card, or Lucky Draw. Determines which game this reward appears in.
Value
Discount value. Use "10" for 10% off, "50" for ₹50 flat, "Free Tea" for a free item, "SORRY" for no win.
Probability %
0.01 to 100. Higher = more likely to win. All rewards of same type must total 100%.
Daily Limit
Max number of times this reward can be won in a day across all customers. Default: 50.
Description
Optional note shown on the coupon. E.g. "Valid on orders above ₹200".
Prize Type
Controls what happens when a customer wins this slot: 🎟️ Issues Coupon — a real discount coupon is generated. 😅 Better Luck Next Time — no prize, friendly no-win screen. 🎰 Lucky Draw Entry — customer is entered into your draw pool.
Wheel Color
Color of this segment on the spin wheel. Use the color picker.
⭐ Points Awarded
If your Points Program is active, customers earn this many points when they win this reward.
Edit, Disable, Delete
- Edit — Change any detail of an existing reward.
- Disable — Hide a reward from the wheel/card without deleting it. Good for seasonal prizes.
- Delete — Permanently removes the reward. Old coupons already issued are not affected.
Example Probability Setup
| Reward Name | Type | Value | Probability |
| Better Luck Next Time | Spin | No Win | 50% |
| 5% Off | Spin | 5% | 30% |
| 10% Off | Spin | 10% | 15% |
| Free Chai | Spin | Free Item | 5% |
| Total | 100% ✓ |
🎫
Stamp Cards
Bring customers back visit after visit
How Stamp Cards Work
A digital stamp card gives customers 1 stamp per visit (per day). When they collect all the required stamps, they earn a reward coupon. The card then resets and they start again. It's the most powerful tool for repeat visits.
💡 A 10-stamp card means a customer must visit 10 times before earning their reward — great for building a habit.
How to Create a Stamp Card
1
Go to Stamp Cards → Create First Stamp CardOr click "+ Add" if you already have cards.
2
Set the card name and descriptionE.g. Name: "Loyalty Card" · Description: "Get a free coffee after 10 visits!"
3
Choose Total Stamps NeededOptions: 3, 5, 7, 8, 10, 12, 15, 20, 25, or 30 stamps.
4
Set the Reward on CompletionChoose: % Discount, ₹ Flat Discount, or Free Item. Enter the value and an optional description.
5
Check "Active" and SaveOnly active stamp cards are shown to customers.
Stamp Card Fields
Card Name
Shown to the customer. E.g. "Loyalty Card", "Coffee Lover's Card".
Description
Optional subtitle. E.g. "Visit 10 times, get a free coffee!"
Total Stamps Needed
How many visits to complete the card. Lower = reward comes faster.
Reward Type
Percent Off, Flat Discount (₹), or Free Item.
Reward Value
E.g. "10" for 10% off, "100" for ₹100 off, "Free Coffee" for free item.
Active
Only one active stamp card is shown at a time. Toggle others off.
Stamp Card Stats
Each card shows live stats: Customers Started (how many have at least 1 stamp), Completed Cards, and Rewards Claimed.
Edit / Delete Stamp Card
- Edit — Change name, description, or reward. Existing customer progress is not lost.
- Activate / Deactivate — Only the active card is shown to customers.
- Delete — Removes the card and all customer stamp progress for that card. Cannot be undone.
⚠️ Deleting a stamp card removes all customer stamp progress. If customers are mid-way through collecting, they will lose their stamps.
Approval Mode & Stamps
If Approval Mode is ON, stamp additions also go into the pending queue. The customer sees a ⏳ pending stamp on their card until you approve it from the dashboard home.
👥 View Customer Progress
Each stamp card has a 👥 View button that opens a customer list for that card. You can search by name or mobile. Customers are split into two sections:
🎁 Ready to Redeem
Customers who have filled all stamps but haven't collected their reward yet. Shown at the top with amber highlight — act on these first.
🎯 In Progress
Customers currently collecting stamps. Sorted by stamp count — highest first. Each row shows a progress bar.
🎁 Ready to Redeem — How to Give the Reward
Below your stamp cards list on the Stamp Cards page, a 🎁 Ready to Redeem section shows all customers across all your cards who have completed their stamp card and are waiting to collect their reward. This section is visible to staff too (if Staff Login is set up).
1
Customer completes their cardThey fill all required stamps across enough visits. They show you their phone with the completed stamp card.
2
Verify on screenAsk to see their stamp card on their phone. Check that all stamp circles are filled (✓). The reward shown on screen is what they're entitled to.
3
Find them in Ready to RedeemTheir name appears in the 🎁 Ready to Redeem section on your Stamp Cards page (or in the Staff dashboard).
4
Give the reward and click "✓ Mark Claimed"After handing over the free item / discount. This removes them from the list and records the reward as claimed.
💡 Customers who have already claimed their reward disappear from the Ready to Redeem list — you can still find their history in Customers → View History.
⚠️ Once you click "Mark Claimed" it cannot be undone. Only tap it after you have actually given the reward to the customer.
🎰
Lucky Draw
Pick a random winner from all visiting customers
How Lucky Draw Works
Every customer who scans your QR during the campaign period gets an entry into the lucky draw. From your dashboard, you press one button to pick a random winner. Perfect for big prizes — TV, cash, gift hampers.
ℹ️ Lucky Draw is available on Growth and Premium plans.
How to Draw a Winner
1
Go to Lucky DrawYou'll see the total entries count and past winners.
2
Select the campaignIf you have multiple campaigns, pick the one you're drawing for.
3
Click "🎰 Draw a Winner Now"Enter the prize description (e.g. "LED TV 32 inch") and click Confirm Draw.
4
Winner is revealedYou'll see the winner's name and mobile. Use the WhatsApp or Call buttons to notify them.
Past Winners
All previous draws are saved in the Past Winners table with the winner's name, mobile, prize, and the date/time of the draw. You can re-notify winners using the 📱 WA or 📞 Call buttons at any time.
🎟️
Coupons
Verify and manage reward coupons at your counter
How to Verify a Coupon
1
Ask the customer for their coupon codeThey'll see it on their phone after winning. It's a short code like WIN-AB12CD.
2
Go to Coupons → Quick VerifyType or paste the code in the input box and click Verify.
3
Check the resultYou'll see the customer's name, what they won, expiry date, and current status (Active / Used / Expired).
4
Click "Mark as Used"After giving the discount, mark the coupon as used. It cannot be used again.
💡 Coupons are valid for 30 days from the date they were won.
Coupon Statuses
Active
Valid and not yet used. Customer can redeem this.
Used
Already redeemed at the counter. Cannot be used again.
Expired
Past the validity date. Cannot be redeemed.
Searching and Filtering Coupons
- Use the filter tabs (All / Active / Used / Expired) to quickly find what you need.
- Use the search bar to find a specific coupon by code.
- Coupons are shown 25 per page — use pagination to browse older ones.
👥
Customers
View your customer base and their full history
Customer List
Every customer who has ever scanned your QR and entered their mobile number appears here. You can search by name or mobile number.
Viewing a Customer's History
1
Find the customerSearch by name or mobile in the search bar.
2
Click "View History"A popup opens with their full profile.
3
See everythingTotal visits, spins, coupons, stamp card progress, recent plays, and coupon history all in one place.
Customer Detail Shows
- Visits / Spins / Coupons — quick stats at the top
- Stamp Card Progress — shows current stamps collected, which card, and reward
- Recent Spins — last few plays with results
- Coupon History — all coupons with status (Active / Used / Expired)
⭐
Points & Loyalty
Run a points-based reward program alongside games
How Points Work
When a customer wins a reward, they also earn points (if you set it up). Once they collect enough points, they can redeem them for a flat discount coupon directly from the customer QR page.
Setting Up the Points Program
2
Enable the Points ProgramCheck the "Enable Points Program" toggle.
3
Set the exchange rateE.g. "1000 points = ₹100 discount coupon".
4
Go to Rewards → Edit each rewardSet the ⭐ Points Awarded field for each reward. E.g. "50 points" for a 5% off win.
5
Save SettingsPoints are now live. Customers see their balance on the QR page.
Adjusting a Customer's Points
You can manually add or remove points from a customer's balance (e.g. for a goodwill gesture or correction). Go to Points & Loyalty → find the customer → click Adjust → enter a positive or negative number with a reason note.
💡 Points balance never goes below 0, even if you enter a negative adjustment that exceeds the balance.
🖼️
QR Poster Designer
Design and download a print-ready poster for your shop
What the Poster Designer Does
Creates a professional A4-sized poster (800×1120px) with your QR code, shop name, and reward game icons. Customers scan the poster to open your rewards page. You can print it, frame it at your counter, or share it as a WhatsApp story.
How to Design and Download
1
Choose a Theme6 options: Royal (purple), Saffron (orange), Emerald (green), Festive (red), Ocean (blue), Midnight (dark).
2
Edit the headline textMain headline (e.g. "SCAN & WIN!"), sub-headline, and instruction text. All editable.
3
Toggle reward type iconsShow or hide 🎡 Spin Wheel, 🎴 Scratch Card, 🎟️ Lucky Draw icons on the poster.
4
Customize the QR codeChange dot colour, background colour, and size (Small / Medium / Large).
5
Download your posterThree options are available in the Simple Poster download card:
- ⬇️ Download Poster PNG — full-design poster, print-ready (800×1120px)
- 📲 Download WhatsApp Story — story format for sharing (1080×1920px, 9:16)
- 📦 Download QR Code Only — clean QR code square, no design (1000×1000px) — for shop owners who print their own custom banner
⚠️ After downloading, always scan the QR code with your phone to confirm it opens your correct shop page before printing or sharing.
💡 Print the poster at A4 size, laminate it, and place it on your counter near the billing area for maximum scans.
📈
Analytics
Understand how your loyalty program is performing
ℹ️ Analytics is available on Growth and Premium plans. Upgrade from Billing to unlock.
What Analytics Shows
📉
Spins Per Day
Line chart — last 30 days of customer plays. See your peak days.
🍩
Reward Distribution
Doughnut chart — which prizes are won most often.
👤
New vs Returning
Are customers coming back? This ratio tells you how sticky your program is.
🕐
Hourly Activity
Bar chart — when during the day customers scan most. Plan your promotions around peak hours.
📊
Coupons Issued vs Redeemed
Stacked bar — tracks how many coupons are actually being used.
How to Use Analytics
- If New customers are high → your QR reach is good. Focus on retention (stamp cards, points).
- If Returning customers are high → your program is working. Consider increasing prize value to attract more new customers.
- If Coupons issued >> Redeemed → customers are winning but not returning to use coupons. Shorten coupon validity or remind them.
- If Hourly peak is at 7–9pm → that's when to run special offers.
🏪
Shop Info & Social Links
Update your shop details and connect social pages
Shop Information Fields
Shop Name *
Your shop's display name. Shown on the customer QR page and welcome email.
Branch / Area
Optional. Add your area or location name (e.g. "Andheri West") — shown next to your shop name on the customer QR page. Max 100 chars.
Owner Name *
Your name. Shown in dashboard greetings and emails.
Mobile Number
10-digit Indian mobile. Shown in the Help tile on customer page.
WhatsApp Number
Include country code, e.g. 919876543210. Customers can tap to chat with you directly.
Email Address
Read-only. Your login email cannot be changed. Contact support if needed.
Social Links
Add your social media URLs to show follow/visit buttons on the customer QR page. All fields are optional — buttons only appear if a URL is saved.
📸 Instagram URL
Your Instagram profile link. E.g. https://instagram.com/yourshop
📘 Facebook URL
Your Facebook page URL.
▶️ YouTube URL
Your YouTube channel link.
🐦 Twitter / X URL
Your Twitter/X profile link.
💬 WhatsApp Group
Your WhatsApp group invite link. Go to group → Invite via Link → Copy link.
💡 All social URLs must start with https://. Invalid URLs are silently removed on save.
Social Buttons Display Style
Choose how social follow buttons appear on your customer QR page. Set this in the same Shop Info form.
Icon + Text (default)
Pill-shaped buttons with icon and label — e.g. "📸 Follow on Instagram". Wraps to multiple rows if you have many links.
Icons Only
Small circle icons in a single row — compact, all icons fit in one line. Hover/tap shows the platform name as a tooltip.
Change Password
1
Scroll to "Change Password" section in Settings
2
Enter your current passwordThis is required to confirm it's you.
3
Enter new password (min 8 characters) and confirm it
4
Click "Update Password"You'll stay logged in. Use the new password next time you log in.
⭐
Google Reviews & Rating Protection
Get more 5-star reviews while blocking negative ones from reaching Google
How It Works
After a customer enters their mobile number, a Smart Rating Gate appears — they tap 1–5 stars privately. Happy customers (4–5★) are sent to your Google review page with a template pre-loaded. Unhappy customers (1–2★) are shown a private complaint form that never reaches Google. This protects your public rating while giving you real internal feedback.
💡 This is the most impactful feature for local shops. Enable it immediately — it takes 2 minutes to set up and your Google rating will only go up from here.
Setup Steps
1
Get your Google Review linkOpen Google Maps → search your shop → click "Reviews" tab → "Get more reviews" → copy the link.
2
Go to Settings → Google ReviewsPaste your link in the "Your Google Review Link" field.
3
Enable the promptToggle "Enable Google Review prompt" to ON.
4
Select your Business CategoryChoose the category that best matches your shop. This determines which review templates and feedback tags are loaded.
5
Auto-fill review templatesClick "✨ Auto-fill Reviews from Library". 20 SEO-friendly, category-specific templates are loaded automatically.
6
Edit templates if neededYou can modify any template, delete ones you don't like, or add your own (max 20 total).
7
Enable Smart Rating Gate(Optional but highly recommended) — see below. Then click Save.
✨ Smart Rating Gate Recommended
The Smart Rating Gate adds a star-rating step before the Google review prompt. Customers first rate their experience privately (1–5 stars), then the system routes them smartly:
⭐⭐⭐⭐⭐ High Rating (≥ threshold)
Customer is sent to your Google review link with a template pre-loaded. Builds your public rating.
⭐⭐⭐ Average (3 stars)
Customer sees a softer Google ask — "If you're happy to, a quick Google review would mean a lot to us."
⭐⭐ / ⭐ Low Rating (1–2 stars)
Customer is shown a private feedback form. Their complaint is saved only to your dashboard — never goes to Google.
💡 This protects your Google rating by catching unhappy customers before they leave a public bad review. You can then resolve their issue privately.
How to Enable Smart Rating Gate
1
Go to Settings → Google Reviews
2
Check "✨ Smart Rating Gate"The toggle appears below the review templates section.
3
Set the minimum star threshold4★ (default) — 4 or 5 star customers go to Google. 5★ — only perfect ratings go to Google. 3★ — anyone 3 and above goes to Google.
4
Save Google Review SettingsThe rating gate is now active for all new customer scans.
ℹ️ Private feedback from low-rating customers is visible in the Private Feedback section of your dashboard. You can mark complaints as Noted or Resolved.
Re-ask Unhappy Customers New
This toggle controls what happens when a customer submits a low-rating (1–3★) feedback. It appears inside the Smart Rating Gate settings section.
✅ Re-ask ON (default)
The rating gate is shown again on the customer's next visit. They may rate better after a good experience — giving you a second chance to get that Google review.
❌ Re-ask OFF
Once a customer submits bad feedback, they are never shown the rating gate again. Their future visits skip directly to the game.
💡 Leave this ON (default) — unhappy customers often become happy regulars after you fix the issue. You want another shot at their Google review.
✨ One-Tap Review Templates
When you save review templates, customers see them as ready-to-use cards on the Google Review prompt screen. When a customer taps a template card:
- The review text is copied to their clipboard automatically
- Your Google review page opens in a new tab instantly — no second tap needed
- They paste the text and submit the review in one smooth action
💡 This one-tap flow removes all friction — the #1 reason customers drop off before leaving a review. More templates = more reviews.
Skip Review for Returning Customers
Turn on "Skip review prompt for returning customers" — this is recommended. Customers who have scanned before won't see the review prompt again. Only first-time customers see it.
💡 This avoids annoying loyal customers and feels natural — you only ask once.
Business Categories for Auto-fill (31 categories)
| Group | Categories |
| 🍽️ Food & Beverage | Restaurant / Dhaba, Cafe / Coffee Shop, Bakery, Cake Shop, Sweet Shop / Mithai, Fast Food / Street Food, Ice Cream Parlour, Juice Bar |
| 🛒 Retail Stores | Kirana / General Store, Supermarket / Grocery, Clothing / Fashion, Footwear / Shoe Store, Electronics / Appliances, Mobile / Phone Shop, Jewellery / Gold Shop |
| 💆 Health & Beauty | Medical / Pharmacy, Salon / Barber Shop, Spa / Beauty Parlour, Gym / Fitness Center, Clinic / Doctor |
| 🔧 Services | Car Service / Garage, Bike Service / Two-Wheeler, Mobile Repair, Electronics Repair, Laundry / Dry Cleaning, Tailoring / Stitching, Photography Studio |
| 📚 Education | Coaching Institute / Tuition, Driving School |
| 🏨 Hospitality | Hotel / Guest House, Banquet Hall / Event Venue |
Each category comes with 20 SEO-friendly review templates and 6–7 specific negative feedback tags (used in the Smart Rating Gate complaint form).
📝
Private Feedback
View and resolve private complaints from low-rating customers
What is Private Feedback?
When the Smart Rating Gate is enabled, customers who give 1 or 2 stars are shown a private complaint form instead of being sent to Google. Their feedback is saved only to your dashboard — it never appears on Google. This protects your public rating while giving you valuable internal insights.
ℹ️ Private Feedback only works when the Smart Rating Gate is enabled in Settings → Google Reviews.
How the Gate Works — Full Customer Flow
★★★★★ 4–5 Stars (Happy customer)
Customer scans QR → enters mobile → rates 4–5 stars → Google Review link opens with a pre-written template → customer writes and submits → your Google rating goes up ✅
★★★☆☆ 3 Stars (Neutral — optional threshold)
Customer can be sent to Google with a softer ask ("if you're happy to"), or blocked to the private form — depends on your minimum star setting.
★★☆☆☆ 1–2 Stars (Unhappy customer)
Customer is shown a private complaint form (never Google) → selects issue tags → optional message → feedback saved to your dashboard only 🛡️ → customer still gets their reward
💡 The rating gate appears before the game, right after the customer enters their mobile number — when they're most engaged and honest.
Step-by-Step: What the Customer Does
1
Customer enters mobile numberThe Smart Rating Gate screen appears immediately — before the game.
2
Customer selects 1 or 2 starsSystem routes them to the private complaint form — not to Google.
3
They select issue tagsE.g. "Food Quality", "Wait Time", "Staff Behaviour" — tags are specific to your business category.
4
They can add a personal messageOptional text field for more detail.
5
Feedback saved privately — customer plays the gameYou see it in your dashboard. The negative review never reached Google.
Viewing Feedback in Your Dashboard
Go to Insights → Private Feedback in your dashboard left menu. You'll see:
📊 Stats Grid
Total feedback received, average rating, new/unread count, and resolved count — at a glance.
🔍 Filter Tabs
Filter by status (All / New / Noted / Resolved) or by star rating (⭐ / ⭐⭐).
👤 Customer Info
Each row shows the customer's name, mobile number, star rating, issue tags selected, and their personal message.
🕐 Timestamp
Date and time the feedback was submitted.
Managing Feedback Status
Each feedback item has a status you can update:
New
Fresh unread feedback. Shown with a red badge in the dashboard nav.
Noted
You've seen the complaint and are working on it. Removes it from the "New" count.
Resolved
The issue has been fixed or addressed. Good for tracking improvement over time.
Click the status dropdown on any row to change it. The change is saved instantly — no page reload needed.
Best Practices
- Check the Private Feedback page at least once a day — the nav badge shows unread count in red.
- Look for patterns in issue tags — if "Wait Time" keeps appearing, investigate your service speed.
- If a customer leaves their mobile number in the message, consider calling them to resolve their complaint personally.
- Mark feedback as Resolved once you've addressed the issue — it helps track your improvement over time.
💡 A steady stream of private feedback — and a rising Resolved count — means your quality improvement process is working.
🔐
Scan Approval Mode
Prevent fraud — approve every scan manually
What is Approval Mode?
When Approval Mode is ON, no reward or stamp is given immediately after a customer scans. Instead, the scan goes into a pending queue on your dashboard home. You review it and manually approve or reject it.
When Should You Use It?
- You want to ensure only real customers in your shop get rewards (not people scanning from outside).
- You're worried about family members or employees abusing the QR to collect stamps/spins.
- You're running a high-value prize campaign and want full control.
How to Enable / Disable
1
Go to Settings → Scan Approval Mode
2
Toggle the switch ON or OFF
3
Click Save Approval SettingChange takes effect immediately.
⚠️ When Approval Mode is ON, customers don't get their reward instantly. Make sure you check the dashboard queue regularly so customers aren't waiting long.
Approving from the Dashboard
- Go to Dashboard Home — the pending queue shows at the top.
- Each row shows: customer name, mobile, action type (Spin / Scratch / Stamp), and time of scan.
- Click ✅ Approve to give the reward, or ✕ Reject to deny it.
- Click ✅ Approve All to approve everything in the queue at once.
- The queue updates live — click 🔄 Refresh to check for new entries.
🖼️
Shop Logo
Brand your customer page with your shop logo
ℹ️ Shop Logo upload is available on Growth and Premium plans.
How to Upload Your Logo
1
Go to Settings → Shop LogoYou'll see the current logo or a placeholder.
2
Click "Choose File"Select a JPG, PNG, WebP, or GIF file. Max 2MB. Recommended size: 200×200px square.
3
Click "Upload Logo"Your logo appears on the customer QR page immediately.
Remove Logo
Click the "Remove" button to delete the current logo. The customer page will show the default emoji/icon instead.
💡 Use a square logo with a transparent or white background for the best result.
💳
Billing & Plans
Manage your subscription and payments
Available Plans
| Feature | Starter (₹299/mo) | Growth (₹399/mo) | Premium (₹599/mo) |
| Max Customers | 300 | 1,000 | Unlimited |
| Max Campaigns | 1 | 5 | Unlimited |
| Spin / Scratch / Lucky Draw | ✅ | ✅ | ✅ |
| Google Review Prompts | ✅ | ✅ | ✅ |
| 🛡️ Smart Rating Gate | ❌ | ✅ | ✅ |
| 🎫 Stamp Cards | ❌ | ✅ | ✅ |
| 📣 Promotions & Ads | ❌ | ✅ | ✅ |
| 📈 Analytics | ❌ | ✅ | ✅ |
| Custom Shop Logo | ❌ | ✅ | ✅ |
| Priority Support | ❌ | ❌ | ✅ WhatsApp |
| Yearly Option | ₹2,999/year | ₹3,999/year | ₹5,999/year |
How to Renew or Upgrade
1
Go to Billing from your dashboard
2
Choose Monthly or YearlyYearly saves you 2 months of cost.
3
Click "💳 Renew Online"Razorpay payment page opens. Pay via UPI, card, or net banking.
4
Payment confirmedYour plan activates immediately. Receipt is shown in Payment History.
💡 Subscriptions do NOT auto-renew. You'll receive a reminder email before your plan expires.
What Happens When Plan Expires?
- Your customer QR page stops working immediately.
- Your dashboard remains accessible but customers cannot scan.
- Your data is preserved for 30 days — renew anytime to resume.
- After 30 days without renewal, data may be permanently deleted.
Refund Policy
We offer a full refund within 7 days of payment. After 7 days, no refund is issued. See our Refund Policy for full details.
Payment via WhatsApp
Prefer to pay via UPI and confirm manually? Click "💬 Pay via WhatsApp instead" on the Billing page to message us directly and we'll activate your plan after confirming payment.
👤
Staff Login
Let your billing staff handle day-to-day tasks without sharing your full dashboard
What is Staff Login?
Staff Login lets you create a 4-digit PIN for your billing staff. They open a separate limited page on their phone — loyalstack.in/staff/ — and log in with your Shop ID and the PIN. They can only see what they need to do their job. Your full dashboard, analytics, rewards config, and billing remain completely hidden from them.
What Staff Can Do
⏳
Approve Scans
See and approve or reject pending stamp/spin/scratch scans from the approval queue. Auto-refreshes every 30 seconds.
🎁
Give Stamp Rewards
See all customers who completed their stamp card and are waiting for a reward. Verify their phone, hand over the gift, and tap "Mark Claimed".
🎟️
Verify Coupons
Type a coupon code to look it up — see the customer name, discount, expiry, and status. Mark it as used at billing.
What Staff Cannot See
- Analytics, charts, and revenue data
- Reward setup (spin probabilities, scratch card config)
- Billing and plan details
- Customer list or export
- Settings of any kind
- Lucky Draw entries or winners
How to Set Up Staff Login
1
Go to Settings → Staff Sub-Account
2
Enter a 4-digit PINThis is the PIN your staff will use to log in. Choose something they can remember but others won't guess. Avoid 1234 or 0000.
3
Tick "Enable Staff Login"Without this, even the correct PIN won't work.
4
Click "Save Staff Settings"The staff login link is shown below — copy it and share it with your staff.
5
Staff bookmarks the linkThey open the link, enter the Shop ID and PIN, and log in. They stay logged in for 8 hours (one full shift).
💡 The staff login link looks like: loyalstack.in/staff/?shop=your-shop-id. The Shop ID is pre-filled so staff only need to enter the PIN.
Changing the PIN
Go to Settings → Staff Sub-Account → enter a new 4-digit PIN → click Save. The old PIN stops working immediately. Staff currently logged in will be logged out on their next action.
Disabling Staff Access
Untick "Enable Staff Login" in Settings and click Save. Staff cannot log in until you re-enable it. Useful if a staff member leaves and you haven't changed the PIN yet.
Security Notes
- After 5 wrong PIN attempts, the login is locked for 15 minutes — prevents brute force guessing.
- Staff sessions expire after 8 hours — they need to log in again for the next day's shift.
- Staff cannot access the owner dashboard at all — the pages are completely separate.
- Change the PIN if you suspect it has been shared outside your team.
⚠️ Never share your owner dashboard login (email + password) with staff. Use Staff Login instead — it limits what they can access.
🏆
Customer Tiers
Bronze, Silver, and Gold membership levels based on visit count
What are Customer Tiers?
Customer Tiers automatically assign a loyalty level to each customer based on how many times they've visited your shop. Customers see their tier badge on the QR page after logging in — it motivates them to visit more to reach the next level.
🥉 Bronze
All new customers start here. Shown from visit 1 until they reach Silver threshold.
🥈 Silver
Reached after the Silver visit threshold (default: 6 visits). Progress to Gold is shown.
🥇 Gold
Reached after the Gold visit threshold (default: 16 visits). Your most loyal customers.
💡 Even without offering extra rewards per tier, the badge alone motivates customers. "Gold Member" feels special and increases loyalty.
How to Enable Customer Tiers
1
Go to Settings → Customer Tiers
2
Tick "Enable Customer Tiers"The Silver and Gold visit count fields appear.
3
Set visit thresholdsE.g. Silver = 6 visits, Gold = 16 visits. The preview shows the exact ranges (Bronze: 1–5, Silver: 6–15, Gold: 16+).
4
Click "Save Tier Settings"Tiers are active immediately for all existing and new customers.
Tier Settings Fields
Silver Tier — visits needed
Minimum 2. All visits from this number up to Gold threshold count as Silver.
Gold Tier — visits needed
Must be higher than Silver. All visits at or above this number count as Gold.
What Customers See
After logging in on the QR page, a tier badge appears showing their level, total visits, and how many more visits until the next tier. Gold members see "You've reached our highest tier!" instead of a progress bar.
ℹ️ Tiers are based on total lifetime visits — every scan since the customer first joined your program counts.
Disabling Tiers
Untick "Enable Customer Tiers" and save. The tier badges disappear from the customer page. Your existing visit data is not deleted — re-enabling tiers restores all badges correctly.
🗑️
Delete Account
Permanently remove your shop and all its data
What Gets Deleted
Deleting your account is permanent and cannot be undone. The following is removed immediately:
Customers
All customer records, mobile numbers, visit history, and points are permanently deleted.
Stamps & Coupons
All stamp card progress, completed cards, issued coupons, and redemption history.
Games & Rewards
All spin, scratch, and lucky draw results and reward records.
Settings & Content
All promotions, banners, Google Review templates, shop logo, and account settings.
⚠️ There is no recovery option. Once deleted, data cannot be restored by support either.
How to Delete Your Account
1
Go to Settings and scroll to the bottom — the ⚠️ Danger Zone card is the last section.
2
Click "🗑️ Delete My Account" — a confirmation popup appears.
3
Type DELETE (in capitals) in the confirmation box.
4
Enter your current password to verify it's you.
5
Click "Permanently Delete Account" — all data is deleted and you are logged out automatically.
Can I Register Again After Deleting?
Yes. Once your account is deleted, your email address and mobile number are fully released. You can sign up again from scratch with the same details — as if you were a brand new user.
💡 If you're thinking of deleting because of a billing issue or a feature you need — contact support first. We may be able to help without losing your data.
📢
Broadcast Message
Send personalised WhatsApp messages to your customers
What is Broadcast?
Broadcast lets you compose a message and send it via WhatsApp to any segment of your customers — all at once, or filtered by tier, loyalty, or when they joined. Use it to announce offers, remind customers about their stamp card, or bring back inactive visitors.
💡 Personalise every message with {name}, {shop_name}, and {link} — the system replaces these with the actual customer's name and your shop details automatically.
How to Send a Broadcast
1
Go to Broadcast in your dashboardClick the 📢 Broadcast link in the left menu or the More sheet on mobile.
2
Write your messageUse the text area. Click variable chips ({name}, {shop_name}, {link}) to insert them at the cursor. Keep messages under 300 characters for best results.
3
Choose your audienceSelect a filter: All Customers, Bronze / Silver / Gold tier, Loyal (5+ visits), or New (joined this week).
4
Click "🔄 Load"The system counts how many customers match your filter and loads their details. A live preview shows the personalised message for the first customer.
5
Click "📱 Send via WhatsApp"A modal opens showing each customer one by one. Tap "Open WhatsApp" to launch their pre-filled chat, then send the message. Tap "Sent · Next →" to move to the next customer.
6
Done — broadcast is loggedAfter finishing, the session is saved in Past Broadcasts with the message, filter, and count.
Message Variables
{name}
Replaced with the customer's first name. If no name is saved, shows "Friend".
{shop_name}
Your shop's name as set in Settings → Shop Info.
{link}
Your full QR page URL — e.g. loyalstack.in/shop/?qr=yourshop. Customers can tap it to scan again.
Audience Filters
| Filter | Who it targets | Best use |
| 👥 All Customers | Every customer in your list | Big announcements, festival offers |
| 🥉 Bronze Tier | Customers below Silver threshold | Win-back campaigns, first offer |
| 🥈 Silver Tier | Mid-range visit count customers | Upgrade nudge — "you're close to Gold!" |
| 🥇 Gold Tier | Your most loyal visitors | Exclusive VIP offers, early access |
| 💎 Loyal (5+ visits) | Customers who visited 5+ times | Loyalty reward announcement |
| 🌱 New (7 days) | Joined in the last 7 days | Welcome message, first-time offer |
Plan Limits
| Plan | Max recipients per broadcast |
| Starter | 50 customers |
| Growth | 500 customers |
| Premium | Unlimited |
Copy Numbers Only
Click "📋 Copy Numbers" to copy all matching customer phone numbers to your clipboard as a comma-separated list. You can then paste these into WhatsApp Business's built-in Broadcast List feature to send without opening one chat at a time.
💡 WhatsApp Business app → Broadcast Lists → New List → paste numbers → type your message → Send. This is the fastest way to reach many customers at once.
Past Broadcasts
Every completed broadcast is saved in the Past Broadcasts table at the bottom of the page — showing the message preview, audience filter, number of recipients, and the date sent. Use this to track your communication history.
⚠️ WhatsApp messages are sent manually — you open each chat, then tap Send yourself. This keeps you in control and complies with WhatsApp's terms. Never use third-party tools that claim to automate WhatsApp sending — your number can get banned.
📍
GPS Location Verification
Ensure customers are physically at your shop before earning rewards
What is GPS Verification?
When enabled, a customer's phone location is checked the moment they submit their mobile number on your QR page. If they are within your set radius (e.g. 200 metres), they get their reward instantly. If they are too far away, they see a friendly error and cannot proceed. This prevents remote abuse of your QR code.
💡 This is the strongest anti-fraud tool after Approval Mode. Enable it if you suspect customers are scanning from outside your shop — e.g. employees at home, competitors, or people sharing your QR link online.
How it Works
1
Customer submits their numberThe browser asks for location permission. "📍 Checking location…" appears on the button.
2
Location is checked server-sideThe distance between the customer's GPS coordinates and your saved shop coordinates is calculated using the Haversine formula.
3
Within radius → reward grantedIf the customer is within your set radius, they proceed normally and get their stamp / spin / scratch instantly — even if Approval Mode is ON (GPS-verified customers skip the queue).
4
Too far away → blockedThe customer sees: "You appear to be X km away. Please scan this QR code at the shop." They cannot proceed.
5
GPS denied or unavailable → fallbackIf the customer blocks location permission, the scan is allowed but goes into the Approval queue (if Approval Mode is ON). If Approval Mode is OFF, they proceed normally.
How to Enable GPS Verification
1
Go to Settings → Access tab → GPS Location Verification
2
Click "📍 Use My Location"Your browser asks for location permission. Open this page while you are physically at your shop — this saves your shop's coordinates.
3
Set the radiusUse the slider (50m – 1000m). Recommended: 150–300m for most shops. Choose 50–100m for very precise control (malls, markets). Choose 300–500m if your building is large or GPS drifts indoors.
4
Tick "Enable GPS Verification"
5
Click "Save GPS Settings"GPS verification is now active for all new customer scans.
GPS Settings Explained
Shop Coordinates
Set by clicking "📍 Use My Location" while at your shop. Latitude + Longitude are saved automatically. Must be set before enabling GPS.
Radius (metres)
How far a customer can be and still get a reward. 50m = very strict (same building). 200m = default, good for most shops. 500m = loose (whole street/market).
GPS-Verified Customers
Customers who pass the GPS check get their reward instantly — even if Approval Mode is ON. They're physically at your shop, so no manual approval is needed.
GPS Denied / Fallback
If a customer blocks location permission, they see an orange notice. Their scan uses Approval Mode rules (queue if ON, instant if OFF).
GPS vs Approval Mode — Which to Use?
| Scenario | Best Option |
| Prevent completely remote scanning (people far away) | GPS Verification |
| Verify each customer is actually inside your shop in person | Approval Mode |
| Maximum anti-fraud (both) | GPS + Approval Mode together |
| No fraud concerns — fast customer experience | Both OFF |
Indoor GPS Accuracy
GPS accuracy on phones is typically 5–20m outdoors and 20–100m indoors (buildings affect signal). Set your radius to at least 150m to account for indoor drift. Setting it too tight (e.g. 50m) in a mall or basement may incorrectly block genuine customers.
⚠️ GPS coordinates can be spoofed by tech-savvy users using fake GPS apps. For high-value rewards, use Approval Mode alongside GPS for a two-layer check.
🕐
Shop Hours
Restrict rewards to your open hours only
What are Shop Hours?
Shop Hours let you set a time window during which customers can earn rewards. Outside these hours, the QR page shows a friendly "shop is closed" message with your opening time — preventing late-night abuse or customers scanning when you're not there to serve them.
How to Set Shop Hours
1
Go to Settings → Rewards tab → Shop Hours
2
Tick "Enable Shop Hours"The open and close time fields appear.
3
Set Open Time and Close TimeE.g. Open: 10:00 AM · Close: 09:00 PM.
4
Click "Save Shop Hours"Rewards are now restricted to those hours only.
What Customers See When Closed
Outside shop hours, after a customer enters their mobile number they see:
ℹ️ "This shop is closed. Rewards are available between 10:00 AM and 9:00 PM."
They cannot play, scan, or earn stamps until the shop opens. The message includes your exact open and close time.
Disabling Shop Hours
Untick "Enable Shop Hours" and save. Rewards become available 24/7 again. Your saved hours are preserved — just unticked — so you can re-enable them easily next time.
💡 Use Shop Hours if you've been seeing scans at midnight or early morning — a sign someone is abusing your QR code outside business hours. Combine with GPS Verification for complete control.
🎨
Customer QR Page Theme
Change the colour scheme of your customer-facing scan pages
What Does the Theme Control?
The theme changes the colour scheme on all customer-facing pages — the main scan page, spin wheel, scratch card, lucky draw, and coupon pages. Every colour (buttons, gradients, stamps, points card, profile sheet) follows the theme automatically.
💡 Pick a theme that matches your shop's brand colour. A café can choose Coffee ☕, a spa can choose Emerald 🍃, a clothing store can choose Rose 🌸.
Available Themes
| Theme | Best For | Colour Tone |
| 💜 Default Purple | Any shop — classic LoyalStack look | Deep purple gradients, white background |
| 🌊 Ocean Blue | Water brands, clinics, tech, services | Sky blue, light blue background |
| 🍃 Emerald Green | Juice bars, salons, pharmacies, eco brands | Green, mint tint background |
| 🌅 Sunset Orange | Food stalls, fast food, warm brands | Orange gradient, warm cream background |
| 🌸 Rose Pink | Salons, beauty parlours, clothing boutiques | Pink-red, light rose background |
| ☕ Coffee | Cafes, bakeries, dessert shops | Rich brown, warm amber background |
How to Change the Theme
1
Go to Settings → Shop Info tabScroll down to the "Customer QR Page Theme" section.
2
Click a theme swatch cardEach card shows a colour dot, theme name, and sample background. The selected one shows a coloured border.
3
Click "Save Changes"The theme applies to all your customer pages immediately — no restart needed.
4
Test itOpen your QR page link in a new tab to see the new colours in action.
What Changes with the Theme
- Page background — changes from white to a soft tint matching the theme
- Buttons and CTAs — primary buttons use the theme colour
- Sticky header bar — background adapts to match
- Stamp card — header gradient, filled stamp dots, reward box border
- Points balance card — gradient matches theme
- Profile sheet — active tab, avatar circle, Save button all themed
- Spin wheel & scratch card result screens — accent colours follow theme
ℹ️ The theme is purely visual — it does not affect rewards, probabilities, stamp rules, or any other settings.