Concept · article 03 of 18

Switching between
locations.

How the location picker changes every tab below it — and why two locations never bleed into each other's numbers.

Ibrahim Ölmez Ibrahim ÖlmezFounder · nouz · 5 min read · Updated this week
Top-right, every page. The location picker is in the header on every authed tab. Whatever you pick scopes everything below it — Home, P&L, Revenue, the lot.

If you run multiple shops, the location picker is the most important control in nouz. It's the single switch that determines which shop's data you're looking at on every tab. Get used to glancing at it whenever you open Home — especially first thing in the morning when you're still half asleep.

01 Where the picker lives

Look at the top-right of Home. The location picker is a button showing the current shop's name with a small downward caret. Click it for a dropdown of every location you've created on your business — pick one, the picker closes, the page reloads scoped to the new one.

On mobile, the picker collapses into the header more compactly but works the same way. On every tab — Home, Revenue, Expenses, Products, Fixed Costs, P&L, Statistics — it lives in the same place.

02 What it scopes

Picking a location changes the data shown on every tab:

  • Home — today's tile, week-so-far, sentence — all per-location.
  • Revenue / Expenses — entries shown belong only to the active location.
  • Products / Fixed Costs — only the active location's catalogue.
  • P&L — all four views (day / week / month / year) recompute against the active location's data.
  • Statistics — insights, charts, ranking, all single-location.

03 How it's remembered

Your last-picked location is stored in a cookie + localStorage. Closing the tab and coming back later drops you back on the same location. Switching device — phone vs desktop — defaults you to your first location, then remembers your pick on that device too.

If you delete your last-picked location (or it gets archived), the next page load drops you on your first available location instead. You'll never end up on a "no location" screen.

04 Server-side enforcement

The picker is a real boundary. Every database query in nouz checks the active location_id server-side. There's no way to accidentally see another location's data, even if you tried to forge the request — the middleware rejects it.

In code terms, the active location is passed into every server query as a filter. The middleware also independently verifies you have access to that location before returning any data. So even if a bug in the UI sent the wrong location_id, the server would reject it — not silently return the wrong shop's revenue.

Was this article helpful?

Your vote helps us decide what to write next.

Still stuck? Email support@nouz.co — a founder replies, usually the same business day.