xMatix
Sign in Request demo
xMatix
PRODUCTS
SalesField Sales & SFACRMRewardsClaimsInventoryProcurementWarehouse ManagementField ServiceServiceSupportTelephony & MessagingFinance & AccountingPayrollExpense ManagementCommercePortalsAnalytics & ReportingData StudioMobile AppSee all products →
PLATFORM
Platform overviewApp BuilderAutomationIntegrationsSecurity & GovernanceChange ManagementDevelopers
SENSE AI
Sense AI overviewSense AssistSense ControlSense VisionAI StudioTrust & governanceIn Claude & ChatGPTUse cases
SOLUTIONS
Auto DMSConsumer Goods DMSSales Force Automation (SFA) FMCG & DistributionManufacturing & Dealer NetworksAutomotive & DealershipsPharma & HealthcareConsumer DurablesAgri-InputsBuilding MaterialsService NetworksWarehousing & 3PLFinancial AccountingERP SoftwareIndia GST ComplianceUAE VAT & e-InvoicingSaudi ZATCA & VATAll solutions →
RESOURCES
Knowledge CenterDeveloper & CLIBlogGuidesWhat is xMatix?Company facts
COMPANY
AboutCareersPartnersEventsContactAuthorsLegal
Sign in Request demo
Home/Docs/Role Guides/Role guide: dispatch manager
OVERVIEW · Last reviewed

Role guide: dispatch manager

This guide is for the person who decides who does each job and when: your xMatix day runs on an allocation console, a page that shows open work on one side and your resources on the other, so you can assign work by dragging it onto a person or a time. Work reaches the console as ordinary records (cases, service orders, leads, product demos or visit plans). Routing and assignment rules place some of it before you see it, and the field team carries it out on the record or in the mobile app afterwards.

Overview

A dispatcher's job in xMatix is one loop, repeated through the day:

StageWhat you doWhere
Scope your patchPick the branch, resource group or people you dispatch forThe console's Scope chips
Read the exceptionsUnassigned work, resources off grid, coverage below targetThe summary strip and Alerts
AssignGive each open item an ownerThe Board
ScheduleGive items a start time, or let Optimize day fill free slotsThe Gantt
Follow the fieldSee who is reporting a position and where they wentThe Map
Handle the restRouted work nobody picked up, overruns, absencesThe record, the queue, the time sheet

The console only ever writes two things on a record: its owner and, where the page has a schedule field, its start. To change anything else, open the record.

Where you work

Each console page is set up for one kind of work record, and your organization decides which pages exist and which app menu they sit in. These pages ship with xMatix:

Menu pathWorkA drop writes
Support → Case Allocation (also Support → Settings)CasesExecutive and, on the Gantt, First Response Due
Service → Allocation ConsoleCasesExecutive only. No schedule field, so no Optimize day
Service → Settings → Service Order DispatchService ordersService Advisor, not Technician. Board and Map only
CRM → Lead Allocation (also Support → Settings)LeadsExecutive and, on the Gantt, Lead Due Date
Demo Allocation (no menu entry)Product demosExecutive and Appointment Date Time
Allocation Console for visit plans (its Field Sales menu entry is switched off)Visit plansAssigned To Resource, Plan Start Date and the planned start time

Every console has the same parts: a Map / Gantt / Board switch (each page offers some or all of them), the Scope chips, the Day / Week / Month period with an Unassigned button, a summary strip, and an Alerts ticker at the bottom. The full tour is on The dispatch console.

An allocation console in Map view: the Map, Gantt and Board switch at the top, the Scope chips and period buttons, a "Showing a subset" warning, the summary strip with resources, live now, tracking, off grid, plans today and coverage, and the resource list beside the map

The picture shows the visit-plan console from an organization that switched its Field Sales menu entry on. The console is the same on every page; only the work and the wording change.

Everything the console does is rule-based. A drag writes an assignment, a Gantt drop writes a start time, and Optimize day fills free slots by fixed rules. Nothing is placed by AI, and every placement can be dragged somewhere else. The console is part of the web app: run it in a browser on a laptop or tablet, not in the mobile app.

Your path

Read these in order. Each one is the full procedure; this guide does not repeat them.

  1. xMatix Field Service: the product overview, and where Field Service ends and the modules begin.
  2. The dispatch console: your home screen. Scope, the Board, the Gantt, Optimize day and the Map.
  3. Resource availability and slot holds: how the console decides who is present, on leave or absent.
  4. Skills, capacity and work routing: queues that offer work to whoever is free, and why routed work stays pending.
  5. Automatic owner assignment: the rules that stamp an owner on new leads, opportunities and appointments.
  6. The service order lifecycle: the record behind every service job, and what each status means.
  7. Service time sheets: how technicians record labour, and how you see a job overrun.
  8. The technician's day: what your decisions look like from the van, and which actions need a connection.
  9. Location and the travelled path: what the positions on the Map mean and what they can't prove.
  10. Troubleshooting field service: the symptom-first list for everything above.

If your team also takes calls, add The supervisor console. It is a separate page your administrator sets up; none ships ready-made.

Prerequisites

Before your first day, your administrator must have:

  • Given you a profile that opens the app and the console page you dispatch from, and that lets you read and edit the work records you will move. No shipped profile is a dispatcher profile; see Permissions.
  • Created a resource for every person you dispatch to, active, linked to their user and tagged to their branch and partner. A console with no active resources shows "No active resources".
  • For timeline drops and Optimize day: chosen a console page that has a schedule field.
  • For live positions on the Map: switched on location tracking in the mobile app configuration. Resources report positions only while they are checked in.

Procedure

This is a normal dispatching day. Each step links to the page with the full detail.

Step 1 — Open the console and set your scope

Open your console page, for example Support → Case Allocation. Pick one Scope chip (All, Partner, Branch, Resources, Resource group or Account group) and choose your patch. Check the summary strip: the resource count and today's work should match the patch you mean to dispatch. If a "Showing a subset" warning appears at the bottom, the console has capped what it loaded: narrow the scope before you move anything.

The Partner chip is hidden when your organization runs a single company, and Branch when it runs a single location.

Step 2 — Read the morning's exceptions

Read the summary strip from left to right: resources in scope, live now (a position within 15 minutes), tracking (within 60 minutes), off grid (no position for more than 24 hours), today's work with the number still unassigned, and coverage, the share of today's work that has an owner (green from 80%, amber from 50%, red below). Alerts lists today's unassigned count, resources off grid and stale positions.

Then look at the availability markers on each resource: Present, Absent, On leave, Half day, Holiday or Week off. A pending leave request already counts as leave. See how the console reads availability.

Step 3 — Assign the backlog on the Board

Switch to Board and turn on Unassigned. Click a card to open its panel: Recommended reps lists the six nearest resources with their distance and an Assign button, and Assign to lists everyone with their current load. Or drag the card onto a resource's column. The card moves at once. If the record refuses the save, the card goes back and "Update failed — reverted" appears.

Step 4 — Schedule on the Gantt

Switch to Gantt, pick the window (Work hrs, Extended or Full day) and the day, and drop each card on a lane at the time you want. The drop sets the owner and the start, snapped to 15 minutes. For the rest, select ⚡ Optimize day: it places up to 20 unassigned items, each on the lane that becomes free earliest, and skips lanes marked on leave, holiday or week off. It does not skip Absent or Half day lanes, and it doesn't look at skills or travel, so check each lane afterwards.

Step 5 — Follow the field on the Map

If your page offers Map, select resources in the left pane to draw their travelled path for the day, and use ▶ Replay to play one resource's day back. The Map assigns nothing. A missing position usually means the person isn't checked in or tracking is off, not that they aren't working.

Step 6 — Handle what the console can't

During the day, reality drifts:

  • A job overruns. Open the service order's time sheet: a line still Work Started or Work Paused tells you where it stands. See Service time sheets.
  • Routed work sits unassigned. Nobody passed the queue's checks (membership, a linked user, Available presence, skill, capacity). See Skills, capacity and work routing.
  • A new lead or appointment has the wrong executive. An assignment rule placed it. Drag it to the right person and tell your administrator which rule fired. See Automatic owner assignment.
  • Someone calls in sick. Drag their remaining work to others. Their marker changes only once a leave request or availability record exists for the day.

Step 7 — Close the day

Turn on Unassigned and confirm the rail holds only what you meant to leave. Check coverage, then use the period's ▸ arrow (or Week) to move to tomorrow and repeat Steps 3 and 4.

Example

A service coordinator runs dispatch for an appliance-repair business's east-side branch.

  1. At 08:30 they open Support → Case Allocation, choose Branch and their branch. The strip shows 9 resources, 7 live now, 14 cases today with 6 unassigned and 57% coverage in amber.
  2. One technician shows On leave: their leave request is still pending, but it already counts. The coordinator leaves that lane empty.
  3. On the Board, a "No cooling — split AC" case shows three nearby technicians in Recommended reps. They select Assign on the nearest, 2.4 km away, and drag two more cases to the technicians who know those products.
  4. On the Gantt under Work hrs, they drop a warranty inspection on a lane at 14:00, then select ⚡ Optimize day for the last three cases. One lands on a lane marked Half day, so they drag it to someone else. Coverage turns green at 100%.
  5. At 15:10 a technician's job overruns. The coordinator opens the service order's time sheet, sees the line Work Paused for a missing part, and moves that technician's 16:00 case to a colleague on the Gantt.

Training

Practice exercise

In a sandbox, sign in with a profile that can open Support → Case Allocation and edit cases (System Admin is enough for practice). Create two cases with no Executive, then refresh the console.

  1. Choose Resources and pick two resources.
  2. On the Board, drag the first case to one resource, then back to the rail.
  3. On the Gantt, drop the second case on the other resource's lane at 11:00 today.
  4. With the first case still on the rail, select ⚡ Optimize day.

Expected result: after step 2 the first case's Executive is empty again. After step 3 the second case's Executive is that resource and First Response Due is today at 11:00. In step 4 the message reports one case placed, and with Unassigned on, the rail is empty.

If a new case gets an Executive as soon as you save it, clear it with Edit first: new records can take the creator's resource automatically.

Quick reference

  • One console page = one kind of work. The page decides which field a drop writes.
  • Scope first, then period, then the summary strip. Then move work.
  • Board assigns, Gantt assigns and sets the start, Map only shows.
  • Drag back to the rail to unassign; the start time is kept.
  • Optimize day: 20 per run, inside the visible window; it skips leave, holiday and week off, not absent or half day.
  • A pending leave request already counts as leave.
  • "Showing a subset" means narrow the scope before you dispatch.
  • "Update failed — reverted" means the record refused the save. Open it to see why.
  • Service Order Dispatch writes Service Advisor; technicians go on the labour through the time sheet.

Permissions

There is no shipped dispatcher profile. A dispatcher needs three kinds of access, and the shipped profiles each cover a different part:

  1. The page. Console pages appear only through App Page Permissions on the security profile, and only inside an app the profile can open.
  2. The work. Every drag saves the record, so you need Read and Update on the work entity. To see and move work you don't own, you also need View All (to read) and Modify All (to save). Without them, cases and leads, which are private to their owner as shipped, show only your own and your reports' records. Visit plans are filtered to the resource they are assigned to.
  3. Positions. You see your own position and those of the people below you in the role hierarchy, or everyone's with View All on Resource.

What the shipped profiles give a dispatcher:

ProfileConsole pages it can openRecords it can move
ServiceService → Allocation ConsoleAll cases and leads (it has View All and Modify All on them), service orders and product demos. No visit plans
Standard UserService → Allocation ConsoleOnly cases it owns or its reports own
Sales ExecutiveCase Allocation, Lead Allocation, Demo Allocation and the visit-plan consoleOnly cases and leads it owns or its reports own; all product demos, service orders and visit plans
Sales ManagerThe visit-plan console and Route PlannerVisit plans
System AdminEvery console pageEverything

Service → Settings and Support → Settings, where Service Order Dispatch and a second Case and Lead Allocation entry live, are visible only to System Admin as shipped. Support itself opens for Sales Executive and System Admin only. Sales Manager has Read and edit on Resource but not View All, so on the Map it sees only its own hierarchy.

A user without the page doesn't see it in the menu. A user who can see a card but can't edit the record gets "Update failed — reverted". See Security profiles and Record security.

Configuration

This section is for the administrator setting up a dispatcher.

Set up a dispatcher

  1. Build the profile: clone the shipped profile closest to the work (usually Service for case or service dispatch, or Sales Executive for leads, demos and visit plans) on Setup → Access control → Profiles. See Build a profile for a role.
  2. On the clone, grant the app and the console page under App Permissions.
  3. Grant Read and Update on the work entity, plus View All and Modify All if the dispatcher moves other people's work. Grant View All on Resource if they should see every position.
  4. Invite the user with the profile, and place them in the role hierarchy above the people they dispatch, if you rely on the hierarchy rather than View All.

Settings that shape the dispatcher's day

WhatWhereShipped value
Which console pages exist and which menu holds themApp pages and app navigation, in the designerThe six pages listed under Where you work
What each page writes, its views, scope chips and card fieldsThe console widget's properties on the pagePer page; see the configuration reference
Which statuses count as finishedThe widget's closed statusesNot set: only completed, cancelled, closed, expired and rejected are hidden, so Work Completed, Invoiced and Delivered service orders stay on the board
Auto-refreshThe widget's refresh interval60 seconds on most shipped pages
Live positionsMobile app configuration, Location Tracking tab (Setup → Design Studio → Apps → Mobile Apps)On in the shipped mobile app, about every 60 seconds while checked in
Who sees whose recordsSetup → Access Control → Policies and the role hierarchyCases and leads private to their owner
Routing and queuesQueues, resource groups and skillsSee Skills, capacity and work routing
Automatic ownersPartner Resource rules or Process Studio assignment rulesSee Automatic owner assignment

Common problems

I can't find the console in my menu

Your profile doesn't grant the page, or the app that holds it. Some shipped pages have no menu entry at all (Demo Allocation, and the visit-plan console). See A user can't see something.

The console shows only my own cases

Cases and leads are private to their owner as shipped. Without View All you see only your own and your reports' records. Ask your administrator for View All and Modify All on the entity.

"Update failed — reverted"

The record refused the save: you can't edit it, a field is read-only for you, or a rule rejected the change. Open the record with Open record → and make the same change there to see the message.

Finished service orders stay on the board

The page's closed statuses don't include Work Completed, Invoiced or Delivered. Your administrator adds them on the page's console widget.

Someone shows as Absent but is working

They haven't checked in on the mobile app yet, and others have. Attendance records come from check-in.

Nobody is live on the Map

Location tracking is off in the mobile app configuration, nobody is checked in, or the people are outside your role hierarchy and you lack View All on Resource.

Common questions

A job didn't get assigned automatically. Why?

There are two automatic paths, and each has its own reason. A queue route leaves work Pending when no resource passes every check: a member of the queue's resource group, active and linked to a user, Available with a live presence, carrying the exact skill name on a skill queue, and with capacity left. An assignment rule stamps an owner only on new leads, opportunities and appointments, and only when a rule matches. Check the job against skills and routing and the assignment rules, then assign it yourself on the console.

Can two jobs end up in the same slot?

Yes, on the console. Drags and Optimize day don't check slot holds or each other's bookings; Optimize day places work after a lane's last block, but a hand drop can overlap an existing block. Some booking paths do hold a slot from the moment it is offered. Resource availability and slot holds explains which paths use holds. Check the Gantt lane before you drop a job at a fixed time.

Why is a technician on leave still shown?

The console always shows every resource in scope and marks availability separately. A lane marked on leave, holiday or week off is skipped by Optimize day, but you can still drag work onto it by hand. A pending leave request counts as leave; an availability record typed Absent reads as present. Read the marker before you drag. Resource availability and slot holds explains how each marker is worked out.

Does dragging a service order to someone make them the technician?

No. The shipped Service Order Dispatch page writes Service Advisor. Technicians are put on the labour through the service order's Time Sheet action, by the service advisor. If your organization wants the console to write the technician, an administrator changes the page's assign field. See the configuration reference.