ThriveBeauty
ThriveBeauty wiki

Search the system by module, workflow, or role.

Use this knowledge base to understand how ThriveBeauty works, manage daily operations, support users, and keep each module aligned with current roles, routes, permissions, and business processes.

Public mode
Smart assistance
Sign in to let the wiki detect your account scope and role assignments.
Login

Start with the system overview, then choose a module by the process you want to complete.

Module knowledge
20
Guides are grouped by operational module and workflow.
Use cases
60
Each article explains practical tasks users need to complete.
Routes
40
Articles include the system pages connected to each process.
Recommended for All

Start here

Knowledge base

Module-by-module guidance

Showing role-relevant articles

Current
Booking lifecycle, availability, rescheduling, and customer appointments
The booking engine coordinates business, branch, service, staff availability, booking state, customer contact, reminders, payment policy, and appointment execution.
Bookings and appointmentsCustomerFront deskStaffBranchOwnerUpdated 2026-05-20

Booking state model

Bookings move through operational states such as pending, confirmed, in progress, completed, paid, cancelled, no-show, or rescheduled. Each state should reflect what the business team must do next.

Customers choose a listed business, branch, service, and available time.
Front desk users can create walk-ins and link them to POS transactions.
Staff schedules and conflicts should be checked before confirmation.

Availability and payments

Availability combines branch hours, staff skills, staff schedule, existing bookings, leave, and service duration. Booking policy can require full payment, deposit, fixed amount, or per-service rules.

Home and office bookings require location context.
Group and special-event bookings may need deposits and longer durations.
Notifications should remind customers and staff before service time.

Common use cases

Book a customer appointment online or from the front desk.

Explain booking states from pending to paid or cancelled.

Help staff understand accept, decline, transfer, and completion workflows.

Related routes

/book/customer/staff/branch
Current
Configurable approvals, routing, escalations, and sensitive action controls
The workflow engine routes approvals for requisitions, expenses, leave, salary advances, refunds, discount overrides, disciplinary actions, and other sensitive operations.
Workflow and approvalsOwnerBranchPlatformFront deskStaffStockUpdated 2026-05-20

Approval model

A workflow can be triggered by event, manual action, or schedule. Steps can include approvals, notifications, and automated actions. Conditions determine route and escalation.

Branch managers can approve branch-scoped operational requests.
Tenant admins handle higher-risk or cross-branch approvals.
Platform admins handle SaaS-level billing and tenant controls, not routine tenant operations.

Common workflows

Common workflows include requisition approval, expense approval, leave requests, salary advances, refund approval, discount override approval, and disciplinary sign-off.

Approvals should be auditable.
Timeout escalation should keep business operations moving.
Notifications should respect preferences unless mandatory.

Common use cases

Understand which actions need approval.

Route requests by role, amount, entity, or timeout.

Explain escalation when an approver does not act.

Related routes

/approvals/operations/hr/inventory
Current
Consumables, retail products, assets, requisitions, suppliers, and purchase orders
Inventory tracks stock and service consumption, asset management tracks business assets and status, and procurement manages requisitions, suppliers, purchase orders, goods receipt, and invoice matching.
Inventory, assets, and procurementStockBranchOwnerUpdated 2026-05-20

Inventory versus assets

Inventory manages consumables and retail products that move through stock quantities. Asset management tracks business assets such as chairs, dryers, massage beds, devices, and tools by status, assignment, maintenance, and lifecycle.

Equipment can be referenced by inventory and assets, but asset status should live in the asset module.
Consumables should link to services where usage affects cost and replenishment.
Retail products should sync to store stock where sold to customers.

Procurement lifecycle

Procurement starts with requisition, moves through approval, purchase order, goods receipt, invoice matching, and supplier payment tracking.

Low-stock alerts can trigger requisitions.
Batch and expiry tracking matter for perishables and beauty chemicals.
Three-way matching compares purchase order, goods receipt, and invoice.

Common use cases

Track consumables used by services.

Separate fixed assets from stock items while sharing relevant data.

Approve requisitions and receive purchased goods.

Related routes

/inventory/store/approvals
Current
Customer profiles, preferences, history, loyalty, reviews, and complaints
CRM connects customer contact details, booking history, spend, preferences, notes, loyalty, reviews, complaints, and blacklist controls.
Customers and CRMCustomerFront deskBranchOwnerUpdated 2026-05-20

Customer record

A customer record should help the team serve the customer safely and consistently. It can include contact details, booking history, spend history, preferences, allergy notes, loyalty, and feedback.

Sensitive notes should stay protected by role and tenant context.
Customer preferences should guide reminders and communication channels.
Reviews and complaints should be routed through escalation where needed.

Customer self-service

Customers can use their account to book services, manage security, control notifications, review booking history, and interact with listed businesses.

Customer login is simply labelled Login in public navigation.
Signup is a customer onboarding journey, not business tenant onboarding.
Customers should not see package or platform admin actions that do not apply to them.

Common use cases

Find a customer profile before booking or checkout.

Understand allergies, notes, and preferences safely.

Review loyalty and feedback signals for retention.

Related routes

/customer/account/preferences/businesses
Current
Employee profiles, schedules, leave, housekeeping, and daily work
Staff operations connect employee profiles, skills, branch assignments, schedules, shift swaps, leave, absences, housekeeping tasks, earnings visibility, and service execution.
Staff, shifts, leave, and housekeepingStaffBranchOwnerUpdated 2026-05-20

Staff profile

A staff profile should include personal details, public-facing bio where enabled, skills, services the staff member can perform, branch assignments, rating context, compensation model, benefits, advances, and deductions.

Staff can float across branches when assigned.
Public bios and ratings should be opt-in and appropriate for customer discovery.
Compensation rules feed payroll calculations and earnings visibility.

Operations calendar

Shift templates, branch calendars, leave, late tracking, absences, and housekeeping tasks should all block or inform scheduling decisions.

Approved leave should block availability.
Housekeeping tasks can be triggered after booking checkout.
Shift swaps should follow manager approval when configured.

Common use cases

Assign staff to services and branches.

Manage shift calendars and leave requests.

Trigger cleaning tasks after booking checkout.

Related routes

/staff/operations/hr
Current
Expenses, accounting, budgets, receivables, payables, and reports
Finance modules connect branch revenue, expenses, invoices, bills, payments, budgets, cash flow, accounts receivable, accounts payable, and reports.
Finance and accountingOwnerBranchPlatformUpdated 2026-05-20

Accounting pattern

Business transactions should create consistent accounting records rather than duplicating ledger logic in modules. Invoices, bills, payments, expenses, taxes, and budgets should share accounting context.

Revenue and payment events should remain auditable.
Expense approval can be amount-tiered through workflow rules.
Branch P&L depends on accurate booking, POS, payroll, stock, and expense data.

Budgeting and forecasting

Budgets help compare expected spending and cash outflows against actual revenue, expenses, payroll, procurement, and tax obligations.

Tax cash-flow forecasts should come from posted tax transactions and filing obligations.
Procurement and supplier payment timing affects cash planning.
Branch managers need actionable summaries, not raw journal data.

Common use cases

Review branch profit and loss.

Submit and approve expenses with receipts.

Forecast cash flow, supplier payments, and tax obligations.

Related routes

/approvals/tenant/invoices/platform/invoices
Operator guide
How ThriveBeauty is organized
ThriveBeauty is a multi-tenant beauty operating platform with public discovery, tenant workspaces, branch execution, staff workflows, customer booking, and platform admin oversight.
System overviewAllUpdated 2026-05-20

Platform structure

The platform owner manages tenants, invoices, provider readiness, security policy, and launch controls. Each tenant represents a beauty business. Branches represent physical or service locations. Business teams operate services, bookings, POS, customers, stock, staff, payroll, and reports within their tenant boundary.

The default branch is included in the base subscription fee.
Extra active branches are billed separately based on the configured commercial policy.
Public discovery and customer booking are separate from protected operator dashboards.

Core surfaces

The system is web-first and mobile-first. Customers use public pages, business profiles, booking, and account settings. Operators use tenant, branch, POS, staff, inventory, HR, payroll, and reporting workspaces. Platform admins use oversight, invoices, onboarding, security, notifications, and commercial controls.

Public surfaces explain the service and help customers find listed businesses.
Operator surfaces are role-aware and require authenticated access.
Platform surfaces supervise tenant readiness and subscription billing.

Common use cases

Understand the difference between platform admin, tenant admin, branch team, staff, stock, and customer surfaces.

Know which workspace to open when a user asks for help.

Explain how public pages, booking, POS, payroll, inventory, and billing share context.

Related routes

//features/wiki
Operator guide
How to keep the wiki current when the system changes
Every module change should update this structured wiki content, user-facing route guidance, role relevance, search keywords, and any operational docs that support the change.
Knowledge base maintenancePlatformOwnerUpdated 2026-05-20

Update rule

When a module, route, role, permission, workflow, pricing rule, provider, or support process changes, update the wiki in the same change set.

Add or update the article summary, sections, keywords, routes, actions, and relevant roles.
Keep article copy written for users and operators, not just developers.
Add tests for search or role inference when changing wiki logic.

Support quality bar

The wiki should help users complete real tasks. It should answer what the module does, who uses it, what data it shares, what actions are safe, and where to go next.

Prefer concrete workflow language over vague product claims.
Document boundaries between platform admin and tenant operations.
Keep public customer guidance separate from protected subscription and admin controls.

Common use cases

Know what documentation to update after adding a module.

Keep support guidance aligned with current routes and permissions.

Prevent stale user instructions after workflow changes.

Related routes

/wiki
Current
In-app, email, SMS, WhatsApp, push, Firebase, and WebSocket communications
The global notifications module manages channel providers, user preferences, quiet hours, devices, templates, delivery attempts, retries, and operational readiness.
NotificationsAllUpdated 2026-05-20

User preferences

Users can control notification channels by category where policy allows. Preferences include channel enablement, quiet hours, devices, language, and timezone considerations.

Mandatory security notifications should not be disabled casually.
Quiet hours should prevent non-urgent messages from interrupting users.
Push devices should be revocable from user settings.

Platform operations

Platform admins can review provider readiness, queue pressure, recent delivery attempts, and failures without exposing provider credentials.

Provider abstractions keep email, SMS, WhatsApp, in-app, Firebase, and WebSocket logic modular.
Delivery attempts should log safe metadata and avoid secrets.
Retries and failure handling belong in the notification worker, not controllers.

Common use cases

Explain why a user did or did not receive a message.

Help a user change notification preferences.

Check platform provider readiness and delivery attempts.

Related routes

/notifications/account/preferences/settings/preferences/platform/notifications
Current
Login, signup, MFA, passkeys, and session security
Users can sign in through email/password, phone/password where verified, passkeys, Google, or Microsoft. Account settings expose security preferences and session controls.
Authentication and securityAllUpdated 2026-05-20

General login

The login page is shared by platform admins, tenant users, branch teams, staff, and customers. After authentication, the user scope and role assignments decide which dashboard is relevant.

Use email/password for ordinary account access.
Use phone/password only after the phone number is verified for login.
Use passkeys for passwordless access where a device credential exists.
Use Google or Microsoft where OAuth providers are enabled by policy.

Customer onboarding

Customer signup creates a customer-scoped account for online booking, booking history, reminders, notification preferences, and account security management.

Customer signup is intentionally separate from tenant onboarding.
Business owners are created by platform tenant onboarding, not public customer signup.
Account settings should be used to manage security and notification preferences after signup.

Common use cases

Help a user choose the correct login method.

Explain why a user is routed to platform, tenant, or customer workspace after login.

Guide a user to security settings for sessions, MFA, and passkeys.

Related routes

/login/signup/account/security/platform/settings/security
Current
Payroll, compensation, advances, welfare, performance, and discipline
Payroll and HR combine compensation models, completed bookings, hours, salary, commissions, deductions, advances, loans, welfare, performance reviews, and disciplinary records.
Payroll and HROwnerBranchStaffUpdated 2026-05-20

Compensation models

The system supports monthly salary, weekly rate, daily rate, hourly rate, per-service fixed pay, per-service percentage, and hybrid models.

Completed bookings can feed commission calculations.
Hours worked can feed hourly pay and overtime.
Advances and loans should deduct according to configured repayment terms.

HR controls

HR workflows track welfare benefits, recognition, performance reviews, disciplinary actions, and sensitive manager-only notes.

Sensitive HR records require careful role restrictions.
Discipline can move through warning, written warning, suspension, and termination states.
Performance and recognition records support incentives and staff accountability.

Common use cases

Explain how payroll calculates salary and commissions.

Record welfare, recognition, performance, or disciplinary events.

Approve payroll runs and produce payslips.

Related routes

/payroll/hr/hr/welfare/hr/discipline/hr/performance/hr/recognition
Current
Platform oversight dashboard
The platform dashboard gives the SaaS owner visibility into active tenants, public listings, projected MRR, invoice exposure, overdue risk, and admin action queues.
Platform adminPlatformUpdated 2026-05-20

What the dashboard tells you

The dashboard summarizes active tenants, listed businesses, active branches, projected monthly recurring revenue, open invoice amount, overdue exposure, and risk signals.

Projected MRR is calculated from active tenants and active branch counts.
Open past-due invoices and overdue invoices raise billing risk signals.
The action queue links directly to overdue reconciliation, onboarding, commercial controls, security, and messaging operations.

How to operate it

Use oversight first when starting a platform admin session. Clear high-priority billing and tenant risks before onboarding more businesses or changing public marketplace visibility.

Reconcile overdue invoices before support follow-up.
Use tenant onboarding for new businesses instead of manual database setup.
Review commercial controls when package boundaries or branch pricing changes.

Common use cases

Review subscription revenue exposure across all tenants.

Open the next platform action without searching through routes.

Check public directory supply and suspended tenant risk.

Related routes

/platform/platform/oversight/platform/invoices/platform/commercial
Current
POS sessions, checkout, split payments, receipts, tips, and reconciliation
POS gives reception and cashier teams a touch-optimized checkout flow for services, products, staff assignment, discounts, split payments, tips, receipts, and cash-up reporting.
POS and paymentsFront deskBranchOwnerPlatformUpdated 2026-05-20

POS session discipline

A POS session should track who opened it, starting float, transactions, cash movements, payment methods, and close-out totals. Managers use this to reconcile revenue against bookings and receipts.

Open a session before taking live payments.
Link checkout to a booking where possible.
Use receipts for customer confirmation and audit evidence.

Payments

The platform is Uganda-first and should support cash, mobile money, card, and manual reconciliation patterns. Split payments should preserve total paid, payment method, references, and staff tips.

Discount overrides should route through approval rules where configured.
Tips should be attributed for staff reporting and payroll context.
Offline POS requirements should be treated carefully because sync and conflict handling affect financial integrity.

Common use cases

Serve walk-in customers and check out existing bookings.

Record split payments and tips.

Prepare end-of-day reconciliation.

Related routes

/pos/tenant/invoices
Current
Product catalog, stock-aware selling, pickup, delivery, and order handling
The online store supports beauty products, variants, customer orders, stock-aware selling, branch pickup, delivery, order status, and retail reporting.
Online storeCustomerStockFront deskBranchOwnerUpdated 2026-05-20

Product-led operators

The platform supports beauty product shops and hybrid service-retail businesses. Product catalog data should include categories, variants, images, pricing, stock levels, and pickup or delivery options.

Retail products should share inventory stock data.
Product variants can represent size, color, scent, or packaging.
Public profiles should make product-led operators visible as a supported category.

Order handling

Store orders need clear statuses, payment context, fulfillment steps, cancellation rules, and customer notifications.

Pickup orders should reference branch readiness.
Delivery orders need contact and location context.
Stock should be adjusted only through controlled order and inventory workflows.

Common use cases

Sell beauty products alongside services.

Keep product stock connected to inventory.

Manage customer pickup and delivery orders.

Related routes

/store/businesses/customer
Operator guide
Production operations, provider readiness, API deployment, and support evidence
Runbooks document production readiness, API deployment, provider smoke checks, database readiness, release evidence, load smoke checks, and operational support procedures.
Operations and release runbooksPlatformUpdated 2026-05-20

Deployment boundary

Production deployment is split by surface. The web app deploys through Vercel. The API and worker deploy to the VPS through PM2, where the API process is named glow and the worker process is named glow-worker.

The PM2 API deploy workflow intentionally excludes apps/web.
API production port is 9067.
Required environment variables must be validated before process start.
Missing AUTH_SESSION_SECRET prevents startup by design.

Evidence to keep

For production readiness, keep evidence for builds, migrations, API smoke, load smoke, provider readiness, database status, and browser checks.

Run tests before committing major milestones.
Use release docs as the audit trail for what was verified.
Update this wiki when modules, routes, capabilities, or operating procedures change.

Common use cases

Run a production API deployment without frontend deployment.

Check provider readiness before launch.

Collect release evidence after major changes.

Related routes

/platform/oversight/platform/notifications/platform/settings/security
Current
Public pages, business listings, and business profiles
Public pages explain ThriveBeauty, show supported business categories, publish listed businesses, and help customers find a business profile before booking.
Public website and marketplaceAllCustomerOwnerPlatformUpdated 2026-05-20

Customer-facing purpose

Public pages should talk directly to buyers and customers. They should explain what the platform does, which beauty business categories it supports, how pricing works, and how customers can browse listed businesses or book services.

Avoid placeholder language that talks to developers instead of customers.
Show concrete categories and operating workflows.
Make login and onboarding paths clear without exposing irrelevant subscription actions.

Business profile behavior

A public business profile should show the business name, categories, branch information, contact channels, service readiness, and booking call-to-action. Owners control whether their profile is publicly listed.

Clicking a business in the directory opens its profile.
Hidden businesses should not be promoted in public navigation.
Public booking should use tenant and branch context from the selected business.

Common use cases

Help a customer find a business on the platform.

Explain listing visibility to a business owner.

Review whether public communication is specific enough for salons, spas, studios, and product-led operators.

Related routes

//features/businesses/businesses/[slug]/about/contact
Current
Services, templates, categories, pricing, and location rates
The service catalog defines beauty services, categories, duration, pricing models, branch availability, required skills, products, add-ons, and location-specific pricing.
Service catalogOwnerBranchFront deskStaffPlatformUpdated 2026-05-20

What a service contains

A service can describe category, service type, duration, pricing model, branch availability, required staff role, product consumption, equipment dependency, add-ons, and location policy.

Premises services happen at a branch.
Home and office services may include travel fee policies and dispatch information.
Special events can use base fees plus hourly or daily extension pricing.

Template database

Business category templates make onboarding faster by suggesting services for salons, spas, skincare, nails, makeup, retail-led beauty shops, and mobile service teams.

Import templates first, then adjust pricing and duration.
Do not make every business start from a blank catalog.
Keep category templates updated when new business categories are added.

Common use cases

Set up service templates during onboarding.

Configure pricing by category, service type, branch, and service location.

Help staff understand which services they are assigned to perform.

Related routes

/tenant/services/import/features
Current
Tenant onboarding, packages, business categories, and launch setup
Tenant onboarding creates the business account, default branch, tenant admin, tenant schema, category templates, directory preference, package pricing, and first subscription invoice.
Tenant onboardingPlatformOwnerUpdated 2026-05-20

Package model

The base package includes the default branch. Additional active branches use the extra branch fee configured on the tenant. The standard defaults are UGX 100,000 base and UGX 50,000 per extra branch unless a platform admin configures different commercial terms.

The public onboarding journey starts from package selection.
The protected platform onboarding form provisions the operational tenant.
Commercial controls document what customers can see based on their package.

Category setup

The platform supports mixed beauty businesses. A tenant can combine categories such as unisex salon, female salon, male salon, spa, skincare, nail studio, makeup studio, beauty products shop, home services, and office services.

Categories help preload service templates and setup expectations.
A business can select more than one category.
Public pages should describe these categories clearly for buyers and customers.

Common use cases

Create a new beauty business tenant end to end.

Explain which categories the platform supports during buyer evaluation.

Confirm base fee and extra branch pricing before launch.

Related routes

/onboarding/platform/tenant-onboarding/pricing
Operator guide
Tenant, branch, subscription, and directory controls
Tenant admins manage business configuration and branch operations, while platform admins supervise billing, feature boundaries, and public directory listing status.
Tenant and branch managementPlatformOwnerBranchUpdated 2026-05-20

Tenant versus branch

A tenant is the business account. A branch is a location or operational service point. Tenants can have many branches. Branches carry local context such as contact details, location, operating hours, stock, bookings, and branch reporting.

Tenant admins see cross-branch configuration and reports.
Branch managers focus on one branch or assigned branch scope.
Platform admins do not run day-to-day tenant operations, but they can supervise tenant billing and setup readiness.

Directory visibility

Business owners can choose whether their business is listed publicly. Hidden businesses remain operational internally but do not appear in the public business directory.

Use listing controls for go-live readiness, rebrands, or temporary privacy.
Customers only see businesses that owners allow to be listed.
A listed business profile should include categories, branches, contacts, services, staff where enabled, and booking entry points.

Common use cases

Explain why a business appears or does not appear in the public marketplace.

Understand default branch versus extra branch billing.

Route branch setup questions to the correct owner.

Related routes

/tenant/branch/businesses/platform/commercial
Current
Uganda VAT, PAYE, WHT, corporate tax planning, EFRIS, and compliance calendar
The tax module provides configurable company tax profiles, tax codes, effective-dated rules, tax transactions, filing obligations, returns, and Uganda business defaults.
Tax and complianceOwnerBranchPlatformUpdated 2026-05-20

Supported defaults

Uganda defaults include VAT at 18%, VAT registration thresholds, monthly VAT filing guidance, common withholding tax rates, PAYE obligations, corporate income tax planning rate, and an EFRIS support flag.

Defaults are editable and effective-dated.
Future tax rate changes should be configured, not hardcoded.
Tax reports should be tied to accounting source transactions.

Accounting integration

Sales invoices can post output VAT separately from revenue. Purchase bills can post recoverable input VAT separately from expenses. Vendor payments can withhold tax and credit WHT payable.

Every posted tax amount should create a tax transaction.
Tax transactions should link to source document, line, counterparty, fiscal period, and journal context where possible.
Tax summaries should support VAT, WHT, PAYE, and other tax payable reporting.

Common use cases

Install or preview Uganda tax defaults for a company.

Explain how VAT, WHT, and PAYE connect to accounting and reporting.

Forecast upcoming tax cash outflows.

Related routes

/payroll/approvals