Bring franchisees on one at a time, and bill the licence from the same numbers
Import each location from whatever it runs on today, push the group's plans with a diff before anything changes, and raise licence invoices monthly from the same counts your consolidated reporting uses. No flag day, and no spreadsheet between what you report and what you charge.
Bringing a location on
The same path whether it is a new build or a space that has traded for five years.
Create the operator
The franchisee's legal entity, brand and domain. Their Stripe account, their money.
Inherit the template
Plans, entitlements and rate card come from the group rather than being typed again.
Import what exists
Members, companies, plans, open invoices and bookings from CSV, each keeping its source system and original ID.
Run in parallel
Both systems through the final month, so the first invoice run is checked before it sends.
A template push is never a surprise. You pick the locations, and before anything applies you are told how many of them would change and what would differ at each — a price, an entitlement, a notice period. Locations already on the version are listed as such.
Set an amount per location per month, an amount per member per month, or both. Each month the active locations and members across the group are counted and an invoice is raised against the group's Stripe customer. It bills once per month by construction, so a retry or a redeploy cannot double-charge a franchisee.
What an imported record remembers
Every entity an import creates carries where it came from, which is what makes a migration auditable rather than hopeful.
| Imported | What comes across |
|---|---|
| Members | Name, email, status, company, and their original ID in the old system |
| Companies | Name, billing email, and the members attached to them |
| Plans | Price, interval, deposit, notice period and entitlements |
| Open invoices | Amounts, period and what is still outstanding |
| Bookings | Room, member and time window, so the calendar is not empty on day one |
Onboarding and licensing questions
How do you move a franchise onto one platform?
One location at a time, not all at once. Each franchisee exports members, companies, plans, open invoices and bookings as CSV and we import them; every record keeps a reference to its source system and original ID so the import can be checked against what it came from. A location still on its old system does not hold up the rest.
Can a franchisor set pricing for every location?
Yes, through plan templates. Build the plan once at group level and push it to chosen locations. Before anything applies, you see exactly how many locations would change and what would change at each, so a franchisee is never surprised by a price moving overnight.
Can a franchisee keep a local rate?
Yes. A plan can belong to a single location rather than the whole group, so a site in an expensive market can hold its own price while everything else follows the template. The diff shows you where that is happening rather than hiding it.
How are franchise licence fees billed?
The group carries its licence terms — an amount per location per month, an amount per member per month, or both — and an invoice is raised monthly against the group's own Stripe customer. The counts come from the same data as the consolidated reporting, so what you bill and what you report cannot drift apart.
Does the franchisor see franchisee member data?
No. Members and companies belong to the operator, and tenant isolation is enforced by row-level security in the database rather than by the application. The franchisor sees aggregate occupancy and revenue, and the licence counts those figures are billed on — not names, not email addresses, not a member list.
What happens when a franchisee leaves?
They keep their data. Members, companies, plans, invoices and bookings are readable through the REST API on every plan, and we will produce a full extract on request at no charge. The operator is a tenant in its own right, so ending a licence agreement is an administrative change rather than a data extraction project.
How long does onboarding a location take?
Five working days for a new site, and about a week for an existing one with a migration, running both systems in parallel through the final month so the first invoice run can be checked before it sends. A location that inherits the group's template starts most of the way configured.
Bring one franchisee's export
Thirty minutes. We will import a real CSV, push a plan template to it, and show the licence invoice that would be raised.