Back to Guides
Settings

Multi-location — running more than one store on a single account

How locations interact with services, staff, hours, closures, and reports. Common pitfalls.

A multi-location tenant runs multiple physical stores under one Trimsy account. Customers, staff, services, and inventory are shared at the tenant level; rosters, hours, closures, payments, and reports can all be sliced per location.

Configure under Settings → Locations.

When to use multi-location vs separate accounts

Pick multi-location if:

  • Same brand across stores (one website, one customer database)
  • Customers travel between locations (a Sydney customer wants to book at the Melbourne store)
  • Centralised reporting (you want a "total revenue across all stores" view)
  • One owner, one Stripe / Square account

Pick separate accounts if:

  • Different brands, websites, branding
  • Independent finances (different Stripe accounts, different tax registrations)
  • Franchises operating semi-autonomously

What's shared vs per-location

Shared across locationsPer-location
Customers✓ shared(preferred location flag only)
Services✓ shared cataloguescoped via "available at" list
Products / inventory✓ sharedoptional per-location stock
Staff✓ sharedrosters can be different per location
Business hours
Closuresboth — optional
Bookings(linked to location)
Receipts / invoicesshared catalogue✓ tagged with location
Reports✓ tenant-wide view✓ per-location filter
Stripe / Square✓ tenant-level(single processor for whole tenant)

Adding a location

  1. Settings → Locations → Add Location.
  2. Name (visible to customers — e.g. "Melbourne CBD"), address, phone.
  3. Timezone — important if locations are in different timezones (Sydney vs Perth). Hours and closures are interpreted in this timezone.
  4. Optional: per-location email, social URLs, photo for the public site.

Service availability per location

Each service has an Available at list under its edit form. By default a service is available at every location. Restrict to just one or two if a location lacks the staff or equipment for it.

The booking flow respects this — a customer picking the Melbourne location only sees services available there.

Staff availability per location

Staff can have different rosters per location, AND can be unavailable at some locations. Under Team → Staff → {Person} → Roster:

  • Add a roster row for each (location, day) combo where they work.
  • Leave the roster empty for locations they never work at — they won't appear as bookable there.

A staff member who works at one location only is the typical case. A staff member splitting time between locations gets multiple roster rows.

Hours per location

Each location has its own Settings → Store Hours view (location switcher in the top-right of the page). Hours, breaks, and closures are independent per location.

The "Allow Bookings on Days With No Roster" tenant setting still applies tenant-wide.

Closures per location

When you create a closure under Settings → Store Hours → Closures, you pick Applies to — a multi-select of locations. Default is "All locations" (the closure blocks every store). Pick specific locations for "Sydney only — burst pipe" type closures.

Reports per location

Every report has a Location filter dropdown. Default is "All locations". Switch to a specific one to see that store's revenue, staff productivity, etc. Useful for store-level KPIs.

The financial report goes one further — break down by location view shows revenue, COGS, payroll, and net per location side-by-side.

Common pitfalls

  • Forgetting to assign a service to a new location. Default is "all", but if you've previously restricted a service to specific locations, opening a new store doesn't auto-add it. Audit your services after opening location 3.
  • Roster gaps when staff move stores. If a staff member moves from Sydney to Melbourne, you have to add new roster rows for Melbourne and remove the Sydney ones. They don't auto-migrate.
  • Customer preferred location stuck in old store. When a customer's local store closes / they move, update their Preferred location under their profile so reminder emails reference the right address.
  • Stripe / Square is tenant-wide, not per-location. All payments go to one merchant account. If you need per-location bank accounts, split into separate tenants.