Bookings
🎁 Gift cards — sold at the counter or on the portal
Create a card
All cards
| Code | For | Bought by | Value | Balance | Status |
|---|
A gift card is money the salon already holds — the outstanding balance above is what it still owes in services. Card sales are journalled separately so they never inflate the day's service takings.
Dashboard
Top sellers (this month)
| # | Product | Units | Revenue |
|---|
Reorder now (lowest stock)
| Product | In stock |
|---|
Bookings
Day list
| Time | Client | Staff | Services | AED | Status |
|---|
Sell — scan customer items
| Item | Price | Qty | Total | Stock |
|---|
Cart is empty — scan an item to start.
Receive stock — scan every unit
New/unknown items open a quick registration form.
This session (0 units received)
| Time | Item | +Qty | Now in stock |
|---|
Inventory
| SKU | Product | Brand | Category | Barcode | Cost | Price | Stock | Status | 🛍 Shop |
|---|
Stock Control — expiry, alarms & staff consumables
🧴 Consumables — scan OUT under a staff name
Colours, tools and internal-use items taken by staff. Pick who is taking, then scan — stock goes down and the usage is recorded under their name (no invoice). Every scan is a permanent movement in the audit trail.
| Time | Item | Qty | Taken by | Stock now |
|---|
⏳ Expiry watch
Set expiry dates with the ✎ pencil in Inventory, or type them directly below. Red = expired · amber = within 30 days.
| Product | Stock | Expiry date | Status |
|---|
🚨 Low & out of stock
Items at or below their reorder level — your shopping list. Set the level per product in Inventory.
| Product | Stock | Reorder at | Status |
|---|
👩🎨 Consumption by staff
| Staff | Different items | Units taken | Value AED (at retail) |
|---|
📊 Product Sales Report
Check which products were sold in a selected period. Pick a day or a range (max 1 month). Click any row to see invoice details.
| Product | Barcode | Qty Sold | Unit AED | Revenue AED | Staff |
|---|
Services — printed on invoices (no stock)
Your 2026 price list is loaded. Services are added to a sale with the "💅 Add service" button on the Sell page (or by typing the service name in the scan box). Final price is editable on the cart line.
| Code | Service | Category | Price AED | Minutes |
|---|
Clients — your customer database
Clients are captured automatically when you type their mobile on the Sell page. Every visit, spend and invoice is linked to them — export the list any time for marketing.
| Client | Mobile | Visits | Total spent AED | Last visit | Notes |
|---|
📣 Marketing — campaigns, clients & content
Everything speaks to the real client database: who is due back, whose points are burning, whose birthday is today. Messages are always reviewed and sent by a person — never automatically.
🔔 Today's action list
✨ Today's Instagram plan
🔗 Instagram link
📊 Content record — what we posted, and what it did
Every post you tick above is filed here. Three or four days later, open Instagram → the post → View insights and type the six numbers in. Once four posts have numbers, this page tells you what is working — and the export is the file to send Claude so the next content plan is written from evidence.
🎯 Choose an audience
—
| Client | Mobile | Visits | Spent AED | Points | Last visit |
|---|
Tick only the clients you want, or leave everything unticked to send to the whole list shown above.
✍️ The message
WhatsApp opens one client at a time on the salon's own number — you press send, it moves to the next. Email goes out from the salon address through the server. Every campaign is logged below with who sent it.
🖼 Creative studio — post, story & banner
Less is the whole point: a photograph, one short line, one word. Nothing else.
Made on this device with your logo and brand colours — no design tool needed. Post it, or send it as a WhatsApp status.
⚙️ Marketing settings
Leave the promo empty to hide the banner. It appears at the top of the client booking page and the rewards portal.
📜 Campaign history
| When | Channel | Audience | Sent | By |
|---|
⭐ Rewards — loyalty program
Live control center for your points program — see accumulations, redemptions, and what you owe clients in points. Manage balances and review every change.
Members
| # | Client | Points | Value AED | Expiring soon |
|---|
Recent activity
newest first · last 60 events| Date | Client | Type | Points | Invoice |
|---|
Memberships & packages
Packages are fully customisable — any mix of services, each with its own quantity, or simply a total number of any services. Paid in advance on a normal tax invoice; at checkout the client's services are redeemed from her package automatically and the balance goes down, with a full usage history.
Active & past memberships
| Client | Package | Used | Remaining | Purchased | Expires | Status |
|---|
Package types (edit anything — services included, quantities, price, validity)
| Package | Services | Price AED | Valid (days) | Status |
|---|
🛍 Online shop
Invoices
| Invoice | Date & time | Items | Total AED | Payment |
|---|
Reports
Staff Performance — Services & Product Sales
Click any staff row to see full item detail. Period filter applies to all data below.
Stylists' commission is not shown here — it is earned against a monthly target and this
range can be any few days, so a figure on this screen could never be the one you pay. It lives on
💰 Attendance & Commission, always a whole calendar month. Dhensyl's product
commission is a flat rate with no target, so hers shows for any range.
| Staff | Invoices | Services AED | Products AED | Total AED | Target AED | Achieved | Commission |
|---|
Barcode labels
Queue of items that need a printed barcode label (new items, items without a barcode). Choose your label size and print — works with any label printer installed on this Mac (Brother QL, DYMO, Zebra…), or A4 sticker sheets.
Settings
💳 Online card payment — gift cards, shop orders and appointment prepayments
Business
Points attach to the client's mobile number, appear on the receipt and client profile, and can be sent by WhatsApp. (Current: 10 pts / 100 AED = 5% back; 2 pts = AED 1.)
⏳ Each batch of points expires on its own clock — the oldest points are always spent first, so a client who visits regularly never loses any.
📅 Programme started on is the day rewards began. A sale dated before it earns no points, so keying in old paper records never creates points for visits that happened before the scheme existed. Points a client already held before that date were cleared to zero and the old figure is kept in her points history.
Edit the wording sent to clients. Keep the words in {curly braces} — they fill in automatically.
Scanner test
Click the box and scan any product. A correct setup shows the code instantly and beeps.
🔄 Live sync — all devices share one database
Sales, bookings, stock and clients update on every device through your Netlify site. Works offline too — changes catch up when internet returns.
“Sync now” sends and receives only what changed. Force full re-sync throws away this device's opinion and takes the salon's copy of everything — use it if this device is showing something the reception till does not, for example a booking still blue after it was paid. Work you have typed here and not yet sent is never overwritten.
Backup & export
Nothing is ever deleted automatically — invoices, stock history and clients are kept forever (UAE FTA requires 5 years for tax records; this system exceeds it). Data is stored on this device, mirrored to the cloud sync, and backed up to files below.
A safety backup also downloads automatically once a day while you use the till.
👩🎨 Staff (bookings & commission)
Rename your team here — names appear as calendar columns and in reports. Untick to hide someone from the calendar without losing their history.
👥 Team logins
Three fixed accounts — Reception (till work), Manager (+ voids, reports & settings), Owner (everything incl. exports). Each person changes their own password from the name badge, top right. Forgot? Reset it here (Owner only).
🔐 Admin & security
Opens in a new tab on this same site. Protected by its own super-admin password (separate from the owner password below) — the till is never interrupted.
The owner password protects the Settings page and every data export — Excel workbooks, CSV files, printed reports and backups — because client and sales data are confidential. Day-to-day work (selling, booking, receiving stock) needs no password. Change the password below.