Skip to main content

Work Order Intake and Dispatch SOP

How maintenance requests are received, triaged, categorized, and dispatched to vendors β€” covering all intake channels and the AI OS workflow.

Updated over 3 weeks ago

Work Order Intake and Dispatch SOP

This SOP governs how maintenance requests are received, triaged, prioritized, and dispatched at PPM. The AI OS handles intake automatically from all channels; this document defines the process and the staff responsibilities at each stage.

Systems involved: Buildium, n8n (WF-1, WF-2), Slack, Google Sheets (Vendor Registry), JustCall


Intake Channels

Work orders reach PPM through three channels:

  • Tenant portal β€” tenant submits a request in Buildium; triggers a WorkOrder.Created event to WF-1 automatically

  • Phone / voicemail / SMS β€” tenant calls or texts JustCall; WF-C1 (Communications Intake) classifies the intent and creates a work order in Buildium if maintenance is identified

  • Staff-created β€” a PPM team member manually creates a work order in Buildium (Maintenance β†’ Work Orders β†’ + New Work Order); WF-1 detects these as buildium_manual source and does not re-route


Priority Classification

Every work order is classified by priority. WF-1 applies this automatically; staff must verify and correct if misclassified.

  • Emergency (S0) β€” immediate threat to life, safety, or property: gas leak, major water flooding, no heat below 55Β°F, fire, security breach. Dispatched and owner-notified within 1 hour. Routed to #maintenance-emergency.

  • Urgent (S1) β€” significant impact on habitability or property: no hot water, HVAC failure, active leak, appliance failure. Targeted resolution within 24–48 hours. Routed to #maintenance-urgent.

  • Routine (S2) β€” non-critical repairs and maintenance. Targeted resolution within 5–7 business days. Routed to #maintenance-dispatch.

  • Informational (S3) β€” logged for awareness only; no dispatch required. Routed to #maintenance-info.


WF-1: Automated Intake and Routing

WF-1 (Maintenance Intake & Unification) runs automatically on every new work order event from Buildium. It:

  1. Deduplicates against recent work orders for the same unit

  2. Classifies priority (S0–S3) using Claude

  3. Posts a structured summary to the appropriate Slack channel

  4. For S0 emergencies: notifies the owner immediately via JustCall SMS

  5. Checks the Vendor Registry (Google Sheets, ID 1_1Mo9XYxuyqRrpPwVie8-xQoNU8oWlkv5dZ1fVGCMds) for the appropriate vendor by trade and service area

  6. Posts an Approve/Reject dispatch request to #maintenance-approvals (WF-2)


WF-2: Human-in-the-Loop Approval

For non-emergency work orders, WF-2 posts an approval card to #maintenance-approvals in Slack with:

  • Property, unit, issue description, priority

  • Suggested vendor from the registry

  • Approve / Reject / Reassign Vendor buttons

Staff (or Dan for high-value repairs) click Approve to dispatch. On approval, WF-2 assigns the vendor in Buildium, sends the vendor dispatch notification, and updates the work order status to In Progress.

For emergencies (S0), dispatch is automatic β€” no approval required. Staff are notified via #maintenance-emergency.


Staff Manual Steps

The AI OS handles routing and dispatch. Staff are responsible for:

  • Monitoring #maintenance-approvals and approving/rejecting within 2 business hours during business hours

  • Verifying work order completion β€” contact the tenant within 24 hours of vendor marking the job done

  • Posting the vendor invoice in Buildium: Accounting β†’ Vendor Bills β†’ New Bill, linked to the work order

  • Closing the work order in Buildium once verified complete: Maintenance β†’ Work Orders β†’ [WO] β†’ Mark Complete

  • Escalating to Dan any repair estimated over $500 (owner authorization threshold)


Owner Notification Requirements

  • Emergency repairs β€” notify owner within 4 hours regardless of amount

  • Repairs $500–$2,500 β€” require Dan or director authorization before dispatch; notify owner

  • Repairs over $2,500 β€” require property owner written approval before dispatch

  • Major system replacements (HVAC, water heater, roof) β€” always require owner approval regardless of cost


Errors and Escalation

WF-1 posts errors to #maintenance-errors. If a work order is created in Buildium but no Slack notification appears within 5 minutes, check #maintenance-errors. If no error is posted either, check the n8n execution log for WF-1 at njppm.app.n8n.cloud or alert Dan.

Did this answer your question?