SchoolAide
Help Center
Reference
Reference · Updated Mar 27, 2026

Workflow — Multi-Stage Service

2 min read 1,322 views

Workflow — Multi-Stage Service

Use case: Student must visit Registrar, then Cashier, then Releasing.

Configuration: Admin creates a ServiceFlow with 3 ordered steps using the Workflow Builder.

Trigger: Visitor joins queue for the root service.

Step-by-Step

Step Action Notes
Ticket issued Ticket created for Step 1 (Registrar) flow_snapshot saved on ticket at issue time
Complete at Step 1 CompleteTicket checks flow_snapshot for next step Finds Step 2 (Cashier)
Creates new TicketStage for Step 2 Ticket current_office_id updated to Cashier
Ticket appears in Cashier's waiting queue
Complete at Step 2 CompleteTicket finds Step 3 (Releasing) Same routing logic
Complete at Step 3 No more steps found Ticket marked status=Completed

The Flow Snapshot

The flow_snapshot column on the tickets table is an immutable JSON copy of the ServiceFlow record at the moment the ticket was issued.

Important: Changes to the ServiceFlow configuration after a ticket is issued do not affect that ticket. This ensures consistency for in-flight tickets during workflow configuration changes.

Visitor Experience

  • The visitor tracks their ticket on the status page and sees the current office.
  • When transferred to the next stage, they receive an email notification (if opted in) indicating the new office.
  • The display board at each office shows the ticket in the waiting queue for that step.

Was this article helpful?

Let us know so we can improve our documentation.

Related articles