Guide 13 · Operating hierarchy

Structure Snow Star LP from market to store.

Create the hierarchy, define scoped positions, assign leaders, monitor staffing gaps, and preserve every assignment decision.

01 / Apply the release

Migration and seed data

  1. 1
    Apply migrations in order

    Run 202608030013_team_market_structure.sql after Phase 4.5. It adds market ownership to existing district and store records.

  2. 2
    Confirm the market

    Each existing organization receives the Snow Star LP market. Review its legal name, timezone, and contact metadata.

  3. 3
    Confirm positions

    Market President, District Manager, and General Manager are seeded as protected system positions.

02 / Build the hierarchy

Create districts and stores from Team

Open Team, choose Snow Star LP, and add districts. Open a district to add its stores. The database functions derive organization and market ownership, preventing a store from being attached across tenant or market boundaries.

Stable codes: treat district and store codes as long-lived operational identifiers. Names and contact details may change without breaking integrations.

03 / Assign accountability

Choose roles in the Organization Directory

From the Team page, use each member’s Role menu in the Organization Directory. Market President, District Manager, and General Manager are available alongside the system access roles.

  • Market President automatically covers every active market, district, and store.
  • District Manager requires one district selection.
  • General Manager requires one store selection.
  • Only active members may receive operating roles.
  • Changing a role preserves the previous assignment in the audit history.
  • Future markets are automatically added to every active Market President.

04 / API

Secured team endpoints

GET /api/v1/team/marketsPOST /api/v1/team/marketsGET /api/v1/team/markets/:marketId/districtsPOST /api/v1/team/markets/:marketId/districtsGET /api/v1/team/districts/:districtId/storesPOST /api/v1/team/districts/:districtId/storesGET /api/v1/team/positionsPOST /api/v1/team/positionsGET /api/v1/team/membersPOST /api/v1/team/membersPOST /api/v1/team/members/:id/deactivate

Reads require team.read. Structural changes and position assignments require team.manage.

05 / Store QR intake

Print one work-order QR code per store

Open Team → Market → District → Store. The store page generates a downloadable and printable QR code from its permanent random token. Scanning it opens a public mobile form with the store already selected.

  • No account or login is required.
  • The submitter must enter their name, which remains on the work order history.
  • The unlisted random QR address identifies the exact store automatically.
  • Each submission creates an open, store-linked work order.
  • The created work order records the store_qr source and profile-free intake flag.
  • Each store is limited to 20 QR submissions per hour to reduce abuse.

06 / Monitoring and recovery

Watch coverage without erasing evidence

Use team_structure_metrics for market, district, store, and assignment counts. Review district_staffing_alerts for active districts that have lacked a District Manager for more than seven days.

Before rollback, export markets, positions, assignments, districts, stores, QR tokens, store-linked work orders, and activity logs. Disable writes first. The checked-in rollback is destructive and should be used only after an approved retention review.

Ready to configure it?Open Team →