Request a Demo
Shared Functional

Work Order Engine

Universal work order lifecycle management — maintenance, repair, and construction activities with priority triage, crew assignment, cost tracking, and preventive maintenance across all infrastructure operations.

≤3s

WO Creation

≤60s

Emergency → Dispatch

100%

Cost Accuracy

≥100 WOs

Offline Capacity

Purpose-Built for Canadian Municipalities

Ontario Compliant
MFIPPA Ready
AODA Accessible
Bilingual Support
Canadian Hosted
SOC 2 Aligned

Purpose & Scope

What this module owns

Clear ownership boundaries prevent duplication and ensure every capability has exactly one authoritative home.

Owns

8

Delegated to

4

Asset lifecycle & condition scoring

asset-registry

Crew dispatch & GPS tracking

resource-dispatch

Mobile field app & offline sync

mobile-field

GL posting of labor/material costs

financial-core

These capabilities are handled by dedicated modules and consumed via stable API contracts — keeping boundaries clean and ownership unambiguous.

Core Capabilities

What it does

4 capability groups comprising 8 discrete capabilities — each with API surface, business rules, and data ownership.

Create → assign → schedule → in-progress → complete → close; configurable statuses per work type; reopening with reason.

Full Lifecycle

DRAFT → OPEN → ASSIGNED → SCHEDULED → IN_PROGRESS → ON_HOLD → COMPLETED → CLOSED → CANCELLED with transition rules.

Configurable Statuses

Custom status workflows per work order type — roads, water, parks, buildings, and fleet each have tailored flows.

Reopening

Completed work orders can be reopened with documented reason; creates audit trail entry for accountability.

Source Tracking

Work orders originate from 311 service requests, inspections, preventive schedules, or internal staff requests.

Priority levels (emergency/urgent/high/medium/low); auto-priority from SLA rules; dispatch queue with priority sorting.

Five Priority Levels

EMERGENCY, URGENT, HIGH, MEDIUM, LOW — each with configurable SLA response and resolution targets.

Auto-Priority

SLA rules can auto-assign priority based on category, asset criticality, or time-of-year (e.g., winter water main breaks = EMERGENCY).

Dispatch Queue

Priority-sorted queue for dispatchers; emergency and urgent WOs surface immediately with audible alerts.

Every module owns a single bounded context, exposes stable APIs, and can be composed into any Civic product — that's the architecture that scales.

Krutik Parikh

Creator of Civic

Data Model

Entity Architecture

3 entities with 5 relationships — the authoritative schema for this bounded context.

Entities

Select an entity to explore its fields and relationships

API Surface

Integration Endpoints

10 RESTful endpoints across 4 resource groups — plus 6 domain events for async integration.

|
GET

/api/v1/work-orders

List work orders (filter: type, status, priority, category, asset, crew, date)

POST

/api/v1/work-orders

Create work order

GET

/api/v1/work-orders/{id}

Get work order detail

PATCH

/api/v1/work-orders/{id}

Update work order (assign, schedule, complete)

Technical Specifications

Performance, Compliance & Configuration

WO Creation

Target≤ 3 seconds

Emergency WO → Dispatch

Target≤ 60 seconds

PM Auto-Generation (Nightly)

Target≤ 30 minutes for all assets

Cost Tracking Accuracy

Target100%

Offline WO Capacity

Target≥ 100 work orders

Availability

Target99.9%

FAQ

Frequently Asked Questions

Ready to Integrate

Build on Work Order Engine

Request an architecture brief, integration guide, or live demo environment for your team.