Skip to main content

Documentation Index

Fetch the complete documentation index at: https://mintlify.com/CRISTIANCAMACH34/Zippi/llms.txt

Use this file to discover all available pages before exploring further.

The Branch Portal serves the staff who physically operate a business location. Rather than a generic dashboard, each role enters directly into their specific work screen — the comanda queue, the cash register, the table map, or the branch overview. The portal surface is business_branch_portal at /app/business/branch, shared by all four operative roles but rendered differently for each. Every role in the Branch Portal has scope business_branch, meaning they see only the data belonging to their assigned location.

The Four Branch Roles

RoleScreenScopeHome Route
kitchen_staffComanda queuebusiness_branch/app/business/kitchen
cashierShift and cash registerbusiness_branch/app/business/cashier
waiterTable map and comandabusiness_branch/app/business/waiter
business_branch_adminFull branch overviewbusiness_branch/app/business/branch

Role Screens and Permissions

Kitchen staff enter directly into the comanda queue — no dashboard, no analytics, no financial data. Their entire workflow is about receiving orders, advancing preparation state, and flagging stock issues.

Comanda Queue

The queue is sorted by priority (determined by the system based on SLA and wait time, not arrival order) and displays a countdown timer for each order. When an order exceeds its SLA threshold, the card turns red with an alert indicator.
PEDIDO 451   ⏱ 03:42   🔴 URGENTE
  Hamburguesa x1
  Papas x1
  Coca-Cola x1
  [Preparando]  [Empacado]

State Transitions

Kitchen staff can move orders through the preparation states:
  • Esperando preparaciónPreparando — triggered by orders.prepare
  • PreparandoEmpacado — triggered by orders.pack

Marking Products as Agotado

When an ingredient runs out, kitchen staff mark a product unavailable using catalog.edit_availability. This immediately removes the product from the marketplace for that branch, preventing new orders from including it.

Permissions

OPERATIVE_ROLE_PERMISSIONS["kitchen_staff"] = [
    "orders.read",
    "orders.prepare",
    "orders.pack",
    "kitchen.read",
    "kitchen.manage",
    "catalog.read",
    "catalog.edit_availability",
]
Kitchen staff cannot see prices, costs, payment amounts, or any financial data. The cashier, payments, and liquidations permission groups are entirely absent from this role. Never display financial totals on the kitchen screen.

Branch Portal Module List

The BUSINESS_BRANCH_MODULES set defines exactly what the branch portal exposes:
BUSINESS_BRANCH_MODULES = [
    "business_branch_portal",
    "orders",
    "kitchen",
    "cashier",
    "waiter",
    "catalog",
    "product_options",
    "payments",
    "support",
    "reports",
]
Modules outside this list — liquidations, analytics, team, business_groups, zones, dispatch, couriers — are never shown in the Branch Portal, regardless of any other configuration.

Build docs developers (and LLMs) love