Main Page

Business identity

The country sets the currency shown on every price (and the currency Stripe charges in) and pre-selects the default language new visitors land on. You can change the language afterwards — a business in Miami may well want Spanish.

Services

Add as many or as few as you like. Duration drives the booking engine in Phase 2.

Staff

Homepage "Get to know our staff" section

Each staff member auto-gets a public page at /staff.html?id=their-slug.

Reviews

Display mode

Google review link

Your Google Business profile URL, a g.page short link, a ready-made “write a review” link or the bare Place ID — we turn whichever you paste into the right link. It powers the “Read on Google” button on your site and the review invitations you send when approving a review in Members → ⭐ Reviews. Leave it empty and those invitations stay switched off.

Google reviews

Paste an embed snippet from a tool like Elfsight. With no embed the site falls back to a "Read on Google" link built from the review link above.

Internal reviews

Reviews are auto-collected when bookings are marked completed. Toggle whether to show a "Leave a review" CTA on the home page.

Locations

Business locations

Run more than one shop? Add every location here — customers pick one when they book, and each staff member's weekly rota says which location they work at on which day (set it in My Staffs → Hours & rota, or staff set their own in the Staff Portal). Leave this empty for a single-location business.

Main address & contact (homepage)

Map embed

Open Google Maps → search your address → Share → "Embed a map" → copy the src URL from the iframe and paste below.

Extras (optional)

Hours

Bookings

My Staffs

Operational view of every team member — drill in to see their bookings, agenda and internal notes.

Master Agenda

All staff at a glance — find an opening for a walk-in or check who's busy.

Open Booked Off / blocked

Timeline

Pick a date to load.

Waiting list

When a day is fully booked, clients can join a per-service queue. When a spot frees up the first in line gets an email offer with a claim window; if they don't book in time the offer passes to the next person automatically (hourly check). Configure the claim window in Settings → Booking behaviour, and per-service limits in the Services tab.

Queues

Loading…

Payments

Choose which payment methods customers can pick during booking. Drag-friendly: top of list shows first. online methods show their instructions to the customer; in-person methods just record the choice.

💳 Stripe (credit / debit card — pay online)

Card payments are charged inline at checkout (Stripe Elements) and land directly in the business's own Stripe account (Stripe Connect — Standard). Complete the one-time Stripe registration, then enable the card method in the list below.

Server keys never live here — the platform secret key + webhook secret are Firebase Secrets (see STRIPE-GO-LIVE.md). Remember to Save changes after editing.

🧾 Sales tax

When enabled, the tax is added on top of the discounted subtotal at checkout and recorded on every booking (ported from HealthyServices).

Remember to Save changes after editing.

Analytics

Self-tracked metrics. Numbers update as the public site is visited and bookings are created/completed.

Last 30 days

Marketing

🏷 Promo codes

Percentage or fixed-amount discounts. Add an influencer name to track partner campaigns — the 📊 button shows bookings and revenue attributed to that code.

When on, this offer can be applied automatically — choose which services, days and times per service under the Services tab (“🎉 Auto-apply offers”). The biggest eligible auto-offer wins. “Valid to” / “Max uses” still apply as guards.

🎁 Gift cards

Create a stored-value code after the purchaser pays you (cash, e-Transfer, etc.). Clients redeem it in the booking flow; the balance carries over between visits.

Applies to every card sold from now on, so they all follow the same rule. Cards already issued keep the date they were sold with — changing this never shortens one somebody has already paid for. Some regions restrict or forbid expiring gift cards, so check your local rules.

Every card uses the expiry rule set above, and an expired card is refused at checkout. Fill in a recipient email and the card is emailed to them straight away, using the design chosen here — edit either wording under Settings → Email → Templates.

🎟️ Bundles (prepaid packages)

Sell packs like "10 visits for the price of 8". Define the packages here (don't forget 💾 Save changes), then record a sale to a registered client after they pay you.


Sell a bundle

🤝 Referrals

Every signed-in client has a personal referral link (shown in their account page). When someone signs up through it and completes their first booking, both sides earn loyalty points — configure the point amounts in Settings → Loyalty. The store credit rewards below are separate from those points.

Reward for the REFERRER (the existing client who shared their link)

Percentage is always paid after the friend's first booking is marked completed — that is the only moment the service value is known. Fixed follows the timing you pick below.

Reward for the REFERRED FRIEND (the new client)

When is it paid?

This timing applies to the friend's credit, and to the referrer's credit when it is a fixed amount. A percentage referrer reward is always paid after the first completed booking. Every reward is paid once and only once per referral.

Finance

🧾 Tax Return Assistant (Canada)

Enter your filing details, then get the figures for your return plus an estimate of income tax owed on your site revenue — before deductions.

Estimate only — not tax advice. Verify every figure with the CRA or your accountant.

Filing details

Sole proprietors file on a calendar year (December 31). Corporations may choose another fiscal year-end.

Estimate

Auto-filled from completed bookings within the fiscal period — recalculate, or override manually.

Audit log

Who did what, when — booking changes, promo edits, gift cards, loyalty adjustments, CSV exports.

Settings

Booking behaviour

Define Morning / Afternoon / Evening. Used by auto-apply promos limited to a time of day.

Newsletter section

Floating "Book now" button

💝 Loyalty & referrals

Points are earned when a booking is marked completed. Referral bonuses pay out on the referred client's first completed booking.

🏅 Customer badges

Automatic achievement badges from each client's own history (ported from HealthyServices). Loyalty/reviewer badges can carry an automatic discount at checkout; the "frequent canceller" badge is staff-facing only.

Counted from their most recent cancellation. Empty or 0 keeps the badge until an admin removes it from Members.
Visits they actually attend, counted from their most recent no show.
A flagged client is only offered the ticked methods. Tick none to apply no restriction. This sits on the no show badge rather than the frequent canceller, because somebody who cancels at least tells you.

How long each badge lasts

Never keeps a badge permanently. Anything else makes it temporary — only activity inside that window counts, so when it lapses the count starts again.

📧 Email notifications

Sends from the shared platform mailbox (info@smartbooking.studio) out of the box — the same default sender as HealthyServices. To send from the business's own mailbox instead, fill in ONE of the options below. These credentials are stored server-side (Firestore settings/email, admin-only) and never appear in the public site config.

Option A — Gmail / Google Workspace

Option B — Microsoft 365 (own Entra app)

Templates

Every email starts from the defaults imported from HealthyServices. Pick a template to customise its subject/body — {{variables}} like {{customerName}}, {{serviceName}}, {{date}}, {{position}} are filled automatically. Leave blank to keep the default.

📱 SMS notifications (Twilio)

Sends via your Twilio account. Credentials are stored server-side (Firestore settings/sms, admin-only) and never appear in the public site config. Requires the Blaze plan and the sendSms / smsReminders functions deployed.

Plan & add-ons

ChatBot