# Customization overview

> How restaurant-wide and branch-level settings work together, and which one wins.

Source: https://sofra.tablixai.com/docs/customization-overview

Section: Customization

Sofra is designed so you set things up **once for the whole restaurant** and then **override only what differs** in a branch. This section explains the model, lists every customization, tells you which plan unlocks it, and documents exactly which setting wins when both exist.

## The two levels

| Level | Also called | What lives here | Who can change it |
|---|---|---|---|
| Restaurant-wide | Tenant-based | Things that are the same everywhere: the menu catalog, tax definitions, discounts, coupons, roles, ingredients, recipes, customers, prep workflows, document templates, domains and the subscription. | Owner, and staff with the matching permission (for example `catalog:write` or `settings:write`). |
| Branch | Branch-based | Things that belong to one location: hours and closed days, order and invoice prefixes, floor areas and tables, stock, printers, staff access and roles, and **overrides** of the catalog. | Owner; branch managers for the branch they run. |

Many items can exist at **both** levels. A service charge, payment method, department, prep station, prep workflow, role or document template can be created for **all branches** or for **one branch**. Where both apply, the more specific (branch) one wins.

## How to know which level you are editing

- Restaurant-wide pages (Menus, Menu Items catalog, Taxes, Discounts, Coupons, Roles) do not depend on the selected branch.
- Branch pages (Tables, Floor Areas, Reservations, Inventory, Printers, Print Rules, Schedule) always work in the **branch selected in the header**.
- Pages that can do both show a **Branch** or **Scope** field (“All branches” or one branch), for example Service Charges, Payment Methods, Departments, Prep Stations and Document Templates.
- The **Menus**, **Menu Items** and **Taxes** pages show a branch tab or ask you to select a branch before you can edit overrides.

## Which setting wins

When a restaurant-wide setting and a branch setting both exist, Sofra resolves them in a fixed order. These rules are what the POS, kitchen and documents actually use.

### Item price

1. **Channel price.** The branch’s price for the order channel (dine-in, takeaway, delivery, online or QR), if set.
2. **Branch override price.** The branch’s single override price, if set.
3. **Base price.** The price on the global menu item.

The first one that is set wins. Without Pro (branch customization), only the base price is used.

### Item tax

Taxes set on the item **for that branch** win over the **default taxes** on the global item. Separately, order totals use the branch’s **tax rules** (see below).

### Order tax and service charge

- Taxes come from the branch’s **tax rules**, filtered by order channel (all, dine-in, takeaway, delivery).
- If the branch has **no tax rules**, Sofra uses the **tax rate** and **service charge rate** from the branch settings, then the restaurant defaults.
- If you define **Service Charges** (restaurant-wide or branch-specific), they replace any service charge that came from a tax rule, so guests are never charged twice.

### What the POS menu shows

An item appears at a branch only if: its menu is assigned and within its dates, its category and item are enabled and not temporarily unavailable, it is visible on the current channel, and the time and weekday fall inside any schedule. Without Pro, every active menu, category and item is shown at base price.

### Prep workflow

Most specific first: item profile (this branch), item profile (restaurant), category profile (this branch), category profile (restaurant), branch default, restaurant default, then the system default *Standard Kitchen*. Modifiers can inject steps or override the station on top.

### Document template

Most specific first: the template explicitly requested, the branch’s selection for that document type, a branch template, the restaurant’s selection, a restaurant template, then the built-in system default.

### Staff role

In a branch, a person’s role is taken from: a **branch-specific role** with their role name, else the role assigned to them **for that branch**, else their **restaurant-wide role**. A person can therefore be a manager in one branch and a cashier in another.

### Discounts

Percentage discounts are capped by the **role’s** maximum, regardless of the discount rule.

## What happens if your plan changes

- Nothing you configured is deleted when you downgrade.
- Branch menu overrides are **ignored** while the plan lacks Pro; they apply again when you upgrade.
- Print rules are kept but **stop firing** without automatic printing.
- Custom templates and roles stay saved but can no longer be created or edited until you upgrade.
- Limits (staff, items, tables) only stop new records from being created.

## Where next

- [Restaurant-wide customizations](https://sofra.tablixai.com/docs/restaurant-customizations): Every tenant-level setting and the plan it needs.
- [Branch customizations](https://sofra.tablixai.com/docs/branch-customizations): Every branch-level setting and the plan it needs.
- [Customization matrix](https://sofra.tablixai.com/docs/customization-matrix): One table with everything, by scope and plan.
- [Plans & limits](https://sofra.tablixai.com/docs/plans-and-limits): Prices, limits and the feature matrix.