Restaurant operations
Analytics

Franchise Financial Visibility in Restaurant Groups: Who Sees What

Franchise financial visibility access by entity in a restaurant group

Financial Visibility Is an Access Decision, Not a Toggle

Franchise financial visibility control is the practice of deciding which roles in a multi-entity group can see which numbers, then enforcing those decisions by scoping access to the entity, not the person. In a franchise group it means a franchisee sees their own outlets' costs and reports, the franchisor sees the whole group, and neither sees what they should not.

Most groups never make that decision explicitly. Access gets set up once during onboarding as a list of features a user can open, and the entity dimension - which outlets those features apply to - gets left on a default. That default is almost always "all of them". The gap surfaces the first time a franchisee opens a report and sees another franchisee's food cost, or a regional manager edits prices for a brand they do not run.

The granularity to prevent this already exists: Supy builds every role from 200+ customisable permissions, and access to consolidated reporting across the group is one of the things a role can grant or withhold. The work is not finding a switch. It is deciding how to use that granularity per entity before the first franchisee logs in.

Supy roles are built from 200-plus customisable permissions

Where Franchise Visibility Actually Breaks

Two failure modes account for almost every complaint. The first is over-scoping: a franchisee is given a role that can open financial reports, but the role is never tied to their specific outlets, so it reads across all 12. Nobody notices until the franchisee mentions a number they should never have seen. The second is under-scoping: a user has the right feature permissions but is still blocked from the item categories they need to raise a requisition, because the scope that would let them act on their own outlets was never granted.

Both come from the same root cause - treating access as a single list of features instead of features scoped to entities. In Supy every action, from viewing a report to receiving a delivery, is gated by a role check scoped to the specific outlet the user is operating in. When the entity scope is blank, the feature permission is the only gate left, and a feature permission with no entity boundary is exactly what lets a role either see everything or reach nothing useful.

How a missing entity scope lets a franchisee see every outlet's numbers

A Decision Tree for Franchise Permission Roles

Building the roles is easier when you start from one question for each role: is it for a franchisee, or for the franchisor? A franchisee role - an owner or an outlet manager - should be scoped to that franchisee's entities only, with financial figures limited to their own outlets. A franchisor role - group finance or an admin - should get consolidated read access across every outlet, but not the right to edit prices, recipes or settings inside a franchisee's operation.

Two habits keep this clean at scale. Build franchisee roles up from a default view-only role rather than trimming down an admin role, because the built-in default roles are view-only and protected, so you are adding access deliberately instead of remembering to remove it. And lean on the permission tree's dependency checks - when a permission needs another to work, Supy validates the chain and shows what a change affects before you save, so you do not grant a reporting view that quietly pulls in an editing right. This is the same role-based access control that governs who can edit stock, applied to the financial layer. A user can hold more than one role where someone genuinely wears two hats, and a role update takes effect immediately.

There is a second lever worth knowing about, because it changes how you think about the franchisor side. Access runs through two independent gates: the role-based permission check, and a per-entity activation setting that decides whether a whole module is even switched on for that entity. So a franchisor can enable the financial reporting module across every entity for group finance, while a franchisee entity has it enabled only for its own owner. The permission tree decides what a role can do; the per-entity setting decides where that role's remit reaches at all. Design both, and a franchisee never has a live path to a number outside their outlets, even if a permission is granted by mistake.

Decision tree for building franchisee versus franchisor permission roles

Franchisor vs Franchisee: What Each Role Should See

The matrix below is a starting point for a three-franchisee group. Adjust the rows to your structure, but keep the principle: financial detail narrows as you move from the franchisor to a single outlet, and no franchisee row ever reaches another franchisee's numbers.

Data or actionFranchisor adminFranchisee ownerOutlet manager
Group-wide reports and P&LYesNoNo
Own outlets' food cost and reportsYesOwn outletsOwn outlet
Other franchisees' numbersNo, by designNoNo
Price and recipe editingNoOwn outletsNo
Supplier terms and contractsYesOwn outletsView only
Order approval authoritySet limitsWithin own outletsWithin threshold

To place your own group, name the branch you are in. If a franchisee can open any report that is not scoped to their own outlets, you are in the over-scoped branch, and the first move is to rebuild that franchisee's role from a view-only default and add back only their entities. If a franchisee is blocked from their own requisitions or reports, you are under-scoped, and the fix is to check the entity scope on their role before granting any broader permission. Fix the scope first; adding more permissions on top of a missing scope is what created the problem.

Book a Demo with Supy - franchise financial visibility

Ready to optimize your restaurant operations?

Blog

Our operational insights

No items found.

Your questions 
answered

Everything you need to know about Supy — from setup to integrations, pricing, and daily use. If it’s not covered here, just ask.

What is financial visibility control in a franchise restaurant group?
+

Financial visibility control is how a multi-entity group decides which roles can see which numbers, and then enforces those decisions by scoping access to the entity rather than the individual user. In a franchise, it keeps each franchisee looking only at their own outlets' costs, reports and margins, while the franchisor keeps a consolidated view across every entity. Done well, it is invisible: franchisees never encounter numbers that are not theirs, and finance never has to manually filter a report. It is set at the role level, not per person, so it holds as the group adds outlets.

How do you stop one franchisee from seeing another franchisee's numbers?
+

You stop it by scoping every franchisee role to that franchisee's entities, not just by choosing which reports the role can open. The common mistake is granting report access without tying the role to specific outlets, which leaves it reading across the whole group. Build the role up from a view-only default, add back only that franchisee's outlets, and confirm the entity scope is set before the person logs in. A second safeguard is per-entity module activation: switch the financial module on only for the entities that role should ever reach, so a stray permission still has nowhere to land.

Why can a user with permissions still be blocked from a report?
+

Because a feature permission and an entity scope are two different gates, and the user is missing the second one. A role can carry the right to open reports or raise requisitions, but if it is not scoped to the outlets the user actually works in, the action has no entity to act on and the user hits a wall. The fix is to check the entity scope on the role first, rather than piling on more permissions, which usually over-corrects into the opposite problem. Scope defines where a permission applies; without it, even a correct permission does nothing useful.

Can one user hold more than one role across entities?
+

Yes. A single user can be assigned several roles at once, so their access reflects every responsibility they genuinely hold. This matters in franchise groups where one person may run an outlet and also sit in group finance, or where an area manager covers outlets across two franchisees. Assign each role scoped to its own entities, and the user's combined access is the sum of those scopes, with no need for a bespoke one-off role. Role changes take effect immediately, so when someone's remit changes you adjust their roles and the access updates without waiting for a sync.

What is the difference between a role permission and an entity scope?
+

A permission decides what a role can do, such as view a food-cost report, edit a recipe or approve an order. An entity scope decides where that permission applies, meaning which outlets or franchisees it reaches. The two are independent: a role with a reporting permission but no scope can either see everything or nothing useful, depending on the default. Franchise financial visibility depends on designing both together, permission by permission and entity by entity. When people describe access as broken, the permission is usually correct and the scope is what was never set.

How many permission roles does a franchise group actually need?
+

Fewer than most groups expect, because the entity scope does the heavy lifting. A workable starting set is a franchisor admin, a group finance read-only role, a franchisee owner and an outlet manager, with each franchisee role scoped to its own entities rather than duplicated per franchisee. With 200-plus customisable permissions available you can tune each one precisely, but resist creating a separate role per person, which becomes unmaintainable as outlets are added. Build a small library of scoped roles, reuse them across franchisees by changing only the entity scope, and add a bespoke role only when a real responsibility has no fit.

Should franchisees be able to edit prices and recipes?
+

Usually within their own outlets only, and never across the group. Whether a franchisee edits prices and recipes at all depends on your operating model: a tightly controlled brand may keep recipe and price editing with the franchisor to protect margin and consistency, while a looser model lets franchisee owners adjust within their outlets. Either way, the editing right should be scoped so it can never touch another franchisee's operation, and the group-wide reporting role should stay read-only. Decide the model first, then express it as a scoped permission rather than granting a broad edit right and hoping it is not misused.

Ready to transform your operations?

Join 3500+ restaurant operators cutting costs, streamlining operations and making smarter decisions with Supy.