TREN

Multi-Branch Management

Most systems crack when the second branch opens. Each site starts keeping its own records, head office asks for files to add them up, and at month end the totals never agree.

The answer is not to separate the branches but to separate them by scope inside one system. Everyone writes to the same place, and everyone sees only their own scope.

Talk to us about this

What the System Covers

Branch hierarchy

A layered structure of branch, region and head office. A regional manager sees the branches beneath them and a branch manager sees only their own. How many layers there are depends on the business.

Where scope comes from

Which branch a user can see is derived from their session rather than from the request. In a system that trusts a branch id sent by the client, changing the address in the browser reads another branch data.

Reporting by branch

Revenue, stock and staff performance are held per branch. Comparison is what head office uses most, because a dip at one site only becomes visible next to the others.

Shared and local data

Some data such as the product catalogue comes from the centre, while price and stock belong to the branch. Which is defined where gets decided at the start, because separating them later is hard.

Opening and closing branches

A new branch opens without a code change. The data of a closed branch is archived rather than deleted, because historic reports still read from it.

Keeping data from leaking

Every query is bounded by scope, applied from one place. Writing that check into each query by hand means one forgotten query opens every branch to every other.

How We Work

  • Scope is derived from the session, a branch id sent in a request is not accepted alone.
  • The restriction lives in a shared layer rather than being written into each query.
  • Cross access is actually attempted with two branch accounts rather than assumed safe.
  • A closed branch is archived, so historic reporting does not break.

Frequently Asked Questions

The structure is the same, the boundary is just harder. A franchisee sees their own data, head office sees the total, and franchisees see nothing of each other. What matters here is testing it, meaning opening two accounts and asking for the records of one while signed in as the other. We do not assume that, we try it.

They can. The decision is which fields are locked centrally. Usually the product definition sits at the centre while price and stock sit with the branch. Leaving everything to the branches makes the catalogue drift apart over time.

That is a data decision rather than a permissions one. Revenue and stock are normally open to the centre. For staff records and customer contact details the necessity is worth questioning, because a system where everyone sees everything does the widest damage on the day something leaks.

The limit is set by data volume rather than branch count. If the structure was built with scope from the start, adding a branch is a definition change. Adding scope afterwards means reviewing every query one by one, and that is where the real cost sits.

Which Service This Belongs To

This page covers one topic. The full scope and pricing live on the related service page.

Our Other Areas of Expertise