Skip to main content
A branch is the unit a workspace divides itself into. Each branch carries its own pricing constants, proposal copy, payment methods, financing terms, timezone, and multiplier ranges. Every branch belongs to exactly one workspace and is created together with a single set of branch settings that holds all of those values. This reference lists what must always be true about a branch, what a save may and may not change, and the exact errors you see when a rule is broken. For how branches relate to workspaces and how access is scoped per person, see Org and branch scoping. For the rules that govern multiplier coverage specifically, see Multiplier range overlap.

What must always be true

These rules can never be violated — a branch can never exist in a state that breaks one of them.

A branch belongs to exactly one workspace

Every branch is owned by a single workspace, and it is only visible and editable inside that workspace. You can never see or change a branch that belongs to a different workspace.

A branch name is unique within its workspace

Two branches in the same workspace cannot share a name. The same name is fine in a different workspace.

A branch always has a name

The name is required and must be at least one character.

A branch always has one set of settings

Every branch has exactly one linked set of branch settings — its pricing constants, proposal copy, timezone, and the rest. The branch and its settings are created together, and the link between them is never re-pointed.

A branch always has a color

The color is one of a fixed palette (Accent, Info, Bronze, Success, Warning, Error, Teal, Neutral). When you create a branch without choosing a color, the next color in the workspace’s rotation is assigned automatically (Accent, then Info, then Bronze, wrapping around).

A branch has a valid timezone

The timezone is one of Pacific, Mountain, Central, or Eastern. It drives how dashboard periods (day, week, month) are bucketed for the branch.

Multiplier ranges fully cover pricing from $0 upward

The multiplier ranges attached to a branch must cover every job cost with no gaps and no overlaps. The set must contain at least one range, start at $0, include a range with no upper limit, leave no uncovered band, and never have two ranges overlap. Without full coverage, a proposal whose cost falls in an uncovered band cannot be priced. See Multiplier range overlap for the full coverage rules.

Ranges and work areas belong to the same workspace

Every multiplier range and work area attached to a branch must belong to the branch’s own workspace. A branch can never reference another workspace’s pricing ranges or work areas.

Max open estimates is a whole number from 1 to 100,000

This caps how many open estimates one salesperson may hold in the branch. It must be a whole number, at least 1 and no more than 100,000.

What a new branch sets up automatically

Creating a branch also seeds default supporting data so the branch is usable right away:
  • Default payment methods — Financing, Cash, Credit Card, and Check, all enabled.
  • Default financing terms — “0% for 12 Months”, “8.99% for 5 years”, and “8.99% for 10 years”.
  • A task type — if the workspace has no task types yet, a default “Task” type is created and linked.
  • Default proposal copy — disclaimer, payment terms, insurance-claims text, and terms-and-conditions text, plus a default proposal email subject and body.

What a save can change

Editing a branch submits the full settings form and rewrites the branch and its settings together:
  • Name — editable, still subject to the per-workspace uniqueness rule.
  • Color — editable. A save that leaves color untouched keeps the existing color.
  • Timezone, payroll id, and every pricing and proposal base constant — editable.
  • Working hours and the minimum time between appointments — editable. Each day of the week can be turned on or off with its own start and end time. For any day that is turned on, the end time must be later than the start time; the minimum time between appointments, when set, must be a whole number of minutes and cannot be negative.
  • Multiplier ranges and work areas — fully replaced on each save, and re-checked for workspace ownership, overlap, and full coverage.
  • Address — editable. When the address changes, the branch’s map coordinates are looked up again. If that lookup fails, the existing coordinates are kept rather than cleared. See Geocoding and ZIP.

What a save cannot change

A branch's workspace cannot be reassigned

Ordinary users can never move a branch to a different workspace. Saving the settings form never changes which workspace a branch belongs to.

The settings link is never re-pointed

A save always rewrites the branch’s existing settings in place. It never swaps a branch onto a different set of settings.

Task types are left alone on save

Task types are seeded when the branch is created and are not touched by the branch settings form. Per-branch task-type assignment is managed elsewhere.

Errors you may see

When a rule is broken, the create or save action returns one of these messages. The numeric base constants also carry their own messages, such as “Base hourly rate must be greater than 0”, “Max discount must be between 0 and 100”, and “Average work day hours must be at least 1”.

Who can read and write

For the full breakdown of what each role can do, see the Permissions roles matrix.

Reading a branch

Admins and the operational roles that need branch context can read a branch. Reads are always scoped to your active workspace.

Creating and editing a branch

Creating and editing a branch is gated on workspace-settings access — Admins by default. It also turns off when the workspace-settings feature is unavailable for the workspace.

Per-branch access for members

A member who is not an admin can only act on branches they belong to. Acting on an invalid branch returns “Invalid branch.” Acting on a branch you don’t belong to returns “You do not have access to this branch”.