Top 125 Salesforce Field Service Lightning Interview Questions & Answers 2026
⚡ Field Service Lightning 2026
Top 125 Salesforce Field Service Lightning Interview Questions 2026
Complete FSL interview prep — Work Orders, Scheduling, Optimization, Service Resources, Dispatcher Console, Mobile App, and real-world scenarios. Built for developers, admins, and architects.
125Questions
6Sections
FSLSpecialist
100%Free
Jump to Section
🏗️
FSL Architecture & Data Model
Q1–Q20 · Foundation of every FSL interview
Q1
What is Salesforce Field Service Lightning (FSL)?
⚡ Direct Answer
FSL is a Salesforce add-on that extends Service Cloud to manage field operations — scheduling and dispatching technicians, tracking work orders, managing service territories, and optimizing field workforce. It connects office staff, dispatchers, and field technicians in real time.
🎯 Key Points
FSL = Service Cloud extension for field operations | Three user types: Dispatcher (office), Mobile Worker (field), Admin | Key objects: Work Order, Service Appointment, Service Resource, Service Territory | FSL managed package: installed on top of Salesforce | Mobile App: FSL offline-capable mobile app for field technicians | Industries: utilities, telecom, healthcare equipment, manufacturing, facilities management
🏢 XYZ Company
At XYZ Company (industrial equipment manufacturer), FSL managed 250 field technicians across 15 regions. Service requests came in via Service Cloud cases — automatically converted to Work Orders — scheduled to the nearest available technician with the right skills — technician completed job via FSL Mobile App. Average resolution time: 4 hours vs 2-day previous average.
🎤 "FSL is Salesforce's field service management solution — managing work orders, scheduling, dispatching, and field technician operations on top of Service Cloud."
Q2
What is the FSL data model and its key objects?
⚡ Direct Answer
FSL data model: Work Order (what needs to be done), Work Order Line Item (specific tasks), Service Appointment (when and who does it), Service Resource (the technician), Service Territory (geographic area), Operating Hours (availability windows), and Skill (technician capabilities).
🎯 Key Points
Work Order: the job to be performed — linked to Account, Contact, Case, Asset | Work Order Line Item: individual tasks within a Work Order | Service Appointment: scheduled instance — links Work Order to Service Resource with date/time | Service Resource: a technician or crew (User or Account) | Service Territory: geographic region | Operating Hours: when work can be scheduled | Skill: technician capability required for job
🏢 XYZ Company
At XYZ Company, data model flow: Customer reports equipment failure → Case created → Work Order created (linked to Case, Asset, Account) → Work Order Line Items for specific repair tasks → Service Appointment created → assigned to Service Resource (technician John) with right skill (Electrical Certification) in correct Service Territory (Mumbai Region) → John receives job on FSL Mobile App.
🎤 "FSL data model flows from Work Order (what to do) through Service Appointment (when/who) to Service Resource (the technician) — with Service Territory and Skills ensuring the right person is assigned."
Q3
What is a Work Order in FSL?
⚡ Direct Answer
A Work Order in FSL is the central record representing a field service job — capturing what work needs to be done, for which customer, on which asset, with what priority, and the estimated duration. It links to Case, Account, Contact, Asset, and Location. Work Order Line Items capture individual tasks within the job.
🎯 Key Points
Work Order fields: Subject, Status (New, In Progress, Completed, Cancelled), Priority, Account, Contact, Asset, Location, Duration, Service Territory | Work Order Line Items: individual tasks (Replace Filter, Test Pressure, Document Results) | Status transitions: New → Dispatched → In Progress → Completed | Parent-child: Work Order can have multiple Work Order Line Items | Asset: the specific equipment being serviced
🏢 XYZ Company
At XYZ Company, a customer reported their industrial pump was failing. Case created → Work Order created: Subject Pump Repair, Asset Industrial Pump XYZ-001, Account Smith Manufacturing, Priority High, Duration 3 hours, Service Territory Mumbai. Three Work Order Line Items: Diagnose fault, Replace impeller, Test and document. Technician completed all three line items on site.
🎤 "Work Order is the central FSL record — capturing what field service job needs to be done, for which customer, on which asset, linking Case, Account, Contact, and Asset."
Q4
What is a Service Appointment in FSL?
⚡ Direct Answer
A Service Appointment (SA) is a scheduled instance of a Work Order — it represents when a specific Service Resource will perform a specific Work Order. Key fields: EarliestStartTime, DueDate, SchedStartTime, SchedEndTime, Status, AssignedResource. One Work Order can have multiple Service Appointments (e.g., initial visit + follow-up).
🎯 Key Points
SA fields: ParentRecordId (Work Order/WO Line Item), Status (None, Scheduled, Dispatched, Completed, Cannot Complete), SchedStartTime, SchedEndTime, EarliestStartTime, DueDate, Duration, ServiceTerritoryId | Multiple SAs: a Work Order can have multiple Service Appointments | Status flow: None → Scheduled → Dispatched → In Progress → Completed | Assigned resource: linked via ServiceAppointmentAssignedResource junction object
🏢 XYZ Company
At XYZ Company, the Pump Repair Work Order had 2 Service Appointments: SA1 — Initial Diagnosis (Tuesday 9AM, Technician John, 1 hour), SA2 — Repair (Thursday 10AM, Technician John + Crew, 3 hours). SA1 was marked Completed after diagnosis. SA2 was created based on parts availability. Both linked to the same Work Order.
🎤 "Service Appointment is the scheduled instance of a Work Order — linking when, who, and how long for a specific field service visit."
Q5
What is a Service Resource in FSL?
⚡ Direct Answer
A Service Resource represents a person (technician) or equipment (crew truck, specialized tool) that performs field service work. It links to a User (for human technicians) or Account (for contractors). Service Resources have skills, availability (via Operating Hours), and Service Territory membership.
🎯 Key Points
Service Resource types: Technician (linked to User), Crew Member (linked to User), Crew (group of technicians), Equipment (non-human resource) | Key fields: Name, ResourceType (Technician/Crew/Equipment), RelatedRecord (User or Account), IsActive, Capacity | Service Territory Member: links Service Resource to Service Territory | Skills: Service Resource Skill records link skills to technicians with expiry dates | Availability: defined via Operating Hours or Resource Absences
🏢 XYZ Company
At XYZ Company, each of 250 field technicians was a Service Resource linked to their Salesforce User record. Skills assigned: John Smith had Electrical Certification (expiry 2027), HVAC License (expiry 2026), and Pump Specialist. Territory: John was a Service Territory Member of Mumbai Region (Primary) and Pune Region (Secondary). Availability: Monday-Friday 8AM-6PM via Operating Hours.
🎤 "Service Resource represents a field technician or crew — linked to a User record with skills, territory membership, and availability windows defining when they can be assigned."
Q6
What is a Service Territory in FSL?
⚡ Direct Answer
A Service Territory is a geographic area within which field service operations are managed — defining which technicians serve which regions. Service Territories can be hierarchical (Region → City → Zone). Technicians are assigned as Service Territory Members with Primary or Secondary designation.
🎯 Key Points
Service Territory: geographic area | Hierarchy: Parent → Child territories (e.g., India → Maharashtra → Mumbai) | Service Territory Member: links Service Resource to Service Territory | Member Type: Primary (home territory) or Secondary (can also serve) | Polygons: FSL can use geographic polygon boundaries for territory | Operating Hours: Service Territory has its own operating hours | Impact: scheduling only assigns technicians to jobs in their territory
🏢 XYZ Company
At XYZ Company, Service Territory hierarchy: India → Maharashtra → Mumbai (3 zones: Mumbai North, Mumbai South, Mumbai Central). Each technician had one Primary territory (their home zone) and up to 2 Secondary territories (adjacent zones). Dispatch rules: first attempt Primary territory technician, then Secondary if no Primary available. Territory boundaries reduced average travel time by 35%.
🎤 "Service Territory defines the geographic area for FSL operations — with technicians assigned as Primary or Secondary members and hierarchical territories enabling region-to-zone drill-down."
Q7
What are Operating Hours in FSL?
⚡ Direct Answer
Operating Hours define the time windows when field service work can be scheduled — for Service Territories, Service Resources, or both. They consist of Time Slots (days of week + start/end times). FSL scheduling engine only schedules appointments within defined Operating Hours.
🎯 Key Points
Operating Hours object: linked to Service Territory or Service Resource | Time Slots: child records defining Day of Week + Start Time + End Time | Multiple time slots: Mon-Fri 8AM-6PM, Sat 9AM-1PM | Override: Service Resource Operating Hours override Service Territory Operating Hours | Holiday: Resource Absences override Operating Hours for individual days | Impact: no Service Appointment will be scheduled outside Operating Hours unless forced
🏢 XYZ Company
At XYZ Company, Service Territory Operating Hours: Monday-Friday 8AM-6PM, Saturday 9AM-1PM. Specialist technicians had extended hours: Monday-Friday 7AM-8PM (for emergency slots). When a High Priority SA was created after 6PM, it was automatically scheduled for the next morning 8AM — not outside Operating Hours. Emergency override: Admin manually forced after-hours scheduling for Critical Priority jobs only.
🎤 "Operating Hours define the time windows when FSL scheduling operates — preventing Service Appointments from being scheduled outside business hours unless manually overridden."
Q8
What are Skills in FSL?
⚡ Direct Answer
Skills in FSL represent the technical capabilities a Service Resource possesses — certifications, licenses, product knowledge, or specializations. Skills can be required on Work Orders (Required Skills) and technicians can have multiple skills with expiry dates. The scheduling engine matches Required Skills to technician skills when assigning appointments.
🎯 Key Points
Skill object: Name, Description | Service Resource Skill: links Skill to Service Resource — SkillLevel (0-100%), StartDate, EndDate (expiry) | Required Skill: links Skill to Work Type or Work Order Line Item | Skill matching: scheduling engine only assigns technicians who have all Required Skills for the job | Skill expiry: expired skills not used for matching | Skill level: some optimizations consider skill level for best-fit matching
🏢 XYZ Company
At XYZ Company, Skills defined: Electrical Certification, HVAC License, Pump Specialist, High Voltage Clearance, Crane Operation. Work Order Line Item Replace Transformer required: Electrical Certification + High Voltage Clearance. When scheduling, FSL only showed technicians with BOTH active skills. John Smith (Electrical + High Voltage) was assigned. Mark Jones (Electrical only, no High Voltage) was excluded. Zero compliance violations.
🎤 "Skills in FSL link technician capabilities to job requirements — the scheduling engine matches Required Skills on Work Orders to Service Resource skills, ensuring only qualified technicians are assigned."
Q9
What is a Work Type in FSL?
⚡ Direct Answer
Work Type is a reusable template for Work Orders — defining standard duration, Required Skills, and Work Order Line Item templates for common job types. When a Work Order is created with a Work Type, it inherits the template's settings. Enables standardization of field service jobs.
🎯 Key Points
Work Type fields: Name, EstimatedDuration, OperatingHours, RequiredSkills, BlockTimeBeforeAppointment, BlockTimeAfterAppointment | Templates: Work Type Line Items define standard tasks | Inheritance: Work Order created from Work Type inherits duration, skills, line items | Use case: Preventive Maintenance (2 hours, standard tasks), Emergency Repair (1 hour minimum, Electrical skill required), Annual Inspection (4 hours, Inspector skill) | Standardization: ensures consistent job setup across all technicians
🏢 XYZ Company
At XYZ Company, Work Types defined: Preventive Maintenance (2 hours, 5 standard line items, Pump Specialist required), Emergency Repair (1 hour, Electrical Certification required), Annual Inspection (4 hours, Inspector Certification required). When a Preventive Maintenance Work Order was created, all 5 line items were automatically added, duration set to 2 hours, and Pump Specialist skill required. Consistent job setup — zero manual configuration.
🎤 "Work Type is a reusable template for Work Orders — defining standard duration, required skills, and task line items that are automatically applied when Work Orders are created from the template."
Q10
What is a Maintenance Plan in FSL?
⚡ Direct Answer
A Maintenance Plan in FSL automates the creation of recurring Work Orders for preventive maintenance — defining the asset to maintain, frequency (monthly, quarterly, annually), Work Type, and the number of Work Orders to generate in advance. Eliminates manual creation of recurring service jobs.
🎯 Key Points
Maintenance Plan fields: MaintenancePlanTitle, Frequency, FrequencyType (Days/Weeks/Months/Years), GenerationTimeframe (how many WOs to create ahead), WorkType, MaintenancePlanDuration | Maintenance Work Rules: child records defining specific schedules | Trigger: when a Maintenance Work Order is completed, FSL automatically creates the next one | Asset: linked to specific equipment on Maintenance Plan | Generation: Apex scheduler generates Work Orders based on plan
🏢 XYZ Company
At XYZ Company, all 500 industrial pumps had Maintenance Plans: Frequency Every 3 Months, Work Type Preventive Maintenance, GenerationTimeframe 2 (creates next 2 WOs ahead). When PM for Pump XYZ-001 was completed in March, FSL automatically created WOs for June and September. Operations team never had to manually create PM work orders. PM compliance rate: 99% vs 67% before FSL.
🎤 "Maintenance Plan automates recurring Work Order creation for preventive maintenance — defining frequency, work type, and look-ahead period so PM jobs are automatically generated without manual intervention."
Q11
What is the Dispatcher Console in FSL?
⚡ Direct Answer
The Dispatcher Console is FSL's web-based scheduling and dispatch interface — a Gantt chart showing all Service Appointments across time for all technicians in a Service Territory. Dispatchers use it to view, drag-and-drop schedule, and dispatch Service Appointments to field technicians.
🎯 Key Points
Dispatcher Console features: Gantt view (appointments on timeline per technician), Map view (appointments on geographic map), List view (appointment queue) | Actions: schedule (assign appointment to technician), dispatch (send to technician's mobile app), unschedule, cancel | Filters: by Service Territory, date range, appointment status, skills | Real-time: updates when technicians complete jobs or new appointments come in | Candidate technicians: shows eligible technicians for unscheduled appointments
🏢 XYZ Company
At XYZ Company, dispatchers started each morning in the Dispatcher Console: viewed all 250 technicians on Gantt across Mumbai territory, reviewed unscheduled appointments in the queue, dragged unscheduled High Priority appointments to available technicians, dispatched jobs to trigger mobile notifications. Real-time view: when a technician marked job Complete, their slot freed up immediately on the Gantt — dispatcher filled it within minutes.
🎤 "The Dispatcher Console is FSL's Gantt-based scheduling interface — allowing dispatchers to view, assign, and dispatch Service Appointments to field technicians in real time."
Q12
What is the FSL Scheduling Policy?
⚡ Direct Answer
Scheduling Policy is a set of rules that governs how FSL's scheduling engine assigns Service Appointments to Service Resources. It defines priorities: minimize travel time, respect skills, honor working hours, balance workload, customer time windows. Multiple policies can be defined for different business scenarios.
🎯 Key Points
Scheduling Policy components: Work Rules (hard constraints — must be respected) and Service Objectives (optimization goals — prioritized) | Work Rules: Match Skills (required), Match Territory, Working Locations, Required Resources | Service Objectives: Minimize Travel, Maximize Skills Match, Preferred Resources, Customer First | Priority: Work Rules are mandatory, Service Objectives are weighted goals | Multiple policies: Emergency Policy (speed-focused), Standard Policy (balanced), Maintenance Policy (travel-optimized)
🏢 XYZ Company
At XYZ Company, two Scheduling Policies: Emergency Policy (Work Rules: Match Skills + Match Territory; Service Objectives: Minimize Travel Time weighted 100 — speed above all) and Standard Policy (Work Rules: Match Skills + Match Territory + Working Hours; Service Objectives: Minimize Travel 60%, Maximize Skill Match 30%, Balance Workload 10%). Emergency jobs used Emergency Policy — assigned within 30 minutes. Standard jobs used Standard Policy — assigned optimally.
🎤 "Scheduling Policy defines the rules and priorities for FSL's scheduling engine — Work Rules as hard constraints and Service Objectives as weighted optimization goals."
Q13
What is the difference between Scheduled and Dispatched status in FSL?
⚡ Direct Answer
Scheduled means a Service Appointment has been assigned to a Service Resource with a time slot — but the technician has NOT been notified yet. Dispatched means the appointment has been sent to the technician's FSL Mobile App — they can see and act on it. Dispatching is the trigger that sends the job to the field.
🎯 Key Points
Status flow: None → Scheduled → Dispatched → In Progress → Completed (or Cannot Complete) | Scheduled: appointment assigned, technician not notified | Dispatched: appointment sent to FSL Mobile App — technician notified | In Progress: technician has started the job (checked in) | Completed: technician marked job done | Cannot Complete: technician could not finish (parts unavailable, access denied) | Auto-dispatch: can be configured to auto-dispatch on scheduling
🏢 XYZ Company
At XYZ Company, dispatchers reviewed all Scheduled appointments each morning before dispatching. This review window: checked customer contact details, confirmed parts availability, verified access requirements. Only after review: clicked Dispatch — technician received notification on FSL Mobile App. Emergency jobs: auto-dispatched immediately on scheduling — no review window. Standard jobs: manual dispatch after morning review.
🎤 "Scheduled means assigned with a time slot (technician not yet notified); Dispatched means sent to technician's mobile app — the trigger that puts the job in the field."
Q14
What are Resource Absences in FSL?
⚡ Direct Answer
Resource Absences are records that block a Service Resource's availability for a specific time period — vacation, sick leave, training, meetings. They override Operating Hours and prevent the scheduling engine from assigning Service Appointments during the absence period.
🎯 Key Points
Resource Absence fields: ServiceResourceId, Start, End, Type (Holiday, Break, Medical, Training, Personal) | Effect: scheduling engine skips the technician for any appointment overlapping the absence | Manual: dispatchers can still force-assign during absence (override) | Integration: HR system integration can auto-create Resource Absences from approved leave requests | Planning: show future absences on Dispatcher Console for capacity planning
🏢 XYZ Company
At XYZ Company, Resource Absences integrated with SAP HR. When a technician's leave was approved in SAP, API automatically created a Resource Absence in FSL. Dispatcher Console showed upcoming absences 4 weeks ahead — capacity planning adjusted scheduling accordingly. Peak season (summer): 15% of technicians typically absent — Resource Absence data helped proactively hire contractors 6 weeks in advance.
🎤 "Resource Absences block a Service Resource's availability for vacations, training, or sick leave — preventing the scheduling engine from assigning jobs during the absence period."
Q15
What is the FSL Mobile App?
⚡ Direct Answer
The FSL Mobile App is Salesforce's native iOS and Android app for field technicians — providing offline-capable access to their Service Appointments, Work Order details, customer information, asset history, Knowledge articles, and the ability to update job status, capture signatures, and complete checklists.
🎯 Key Points
FSL Mobile: offline-capable — technicians work without internet, syncs when connected | Features: appointment list, Work Order details, navigation (Google Maps/Waze integration), asset history, Knowledge articles, signature capture, photo upload, barcode scanner | Status updates: technician marks En Route, On Site, In Progress, Completed from mobile | Parts: request parts, record parts used | Custom actions: configurable quick actions on mobile
🏢 XYZ Company
At XYZ Company, technicians used FSL Mobile offline in basements and remote sites. Workflow: receive dispatched job → open FSL Mobile → review Work Order details + asset history + relevant Knowledge articles → navigate to site → mark En Route → arrive → mark On Site → complete Work Order Line Items with checkboxes → capture customer signature → photograph completed work → mark Completed. All synced to Salesforce on reconnection. Paper eliminated entirely.
🎤 "FSL Mobile App gives field technicians offline-capable access to their appointments, Work Order details, asset history, and Knowledge — with status updates, signature capture, and photo documentation syncing to Salesforce."
Q16
What is Crew Management in FSL?
⚡ Direct Answer
Crew Management in FSL allows grouping multiple Service Resources (technicians) into a Crew — a team that works together on complex jobs. A Crew has a Lead Technician, members, and its own availability. The entire crew is assigned to a Service Appointment as one unit.
🎯 Key Points
Crew object: Name, ActiveStartDate, ActiveEndDate, Capacity | Crew Member: links Service Resource to Crew with role (Lead, Member) | Crew scheduling: when Crew is assigned to SA, all crew members' calendars are blocked | Crew skills: crew inherits the combined skills of all members | Use cases: large equipment installation (3-person crew), complex infrastructure work, safety-mandated 2-person jobs | Dynamic crews: membership can change per job
🏢 XYZ Company
At XYZ Company, transformer replacement jobs required 3-person crews: 1 Electrical Engineer (Lead) + 2 Electrical Technicians (Members). Crew Power Team Alpha was pre-defined. When a Transformer Replacement SA was scheduled, Crew Power Team Alpha was assigned — all 3 calendars blocked, all 3 received dispatch notification on FSL Mobile. Lead managed job, crew members followed guided checklist. Complex 6-hour job completed safely and efficiently.
🎤 "Crew Management groups multiple technicians into a team that is scheduled and dispatched together — ideal for complex jobs requiring multiple workers with combined skills."
Q17
What is an Asset in FSL context?
⚡ Direct Answer
An Asset in FSL represents the physical equipment or product that a field service job is performed on — a specific pump, HVAC unit, elevator, or transformer at a customer site. Assets track service history, warranties, maintenance plans, and location. Work Orders link to Assets for complete service history.
🎯 Key Points
Asset object (standard Salesforce object extended for FSL) | Key fields: Name, SerialNumber, AccountId, LocationId, Status (Installed, Registered, Obsolete), PurchaseDate, UsageEndDate, InstallDate | Asset relationships: Account (owner), Contact (user), Location (where installed), Product2 (what it is) | Service history: all Work Orders linked to Asset show complete service history | Warranty: Asset warranty fields track coverage | FSL: work orders for specific assets enable asset-centric service
🏢 XYZ Company
At XYZ Company, all 2,500 installed industrial pumps were Assets linked to customer Accounts with serial numbers, installation dates, and locations. When a Work Order was created for a pump failure, the Asset was linked — technician could see full service history (last 5 visits, parts replaced, known issues) on FSL Mobile before arriving on site. Average diagnosis time: reduced 40% because technicians arrived informed.
🎤 "Asset in FSL represents the specific physical equipment being serviced — enabling complete service history, warranty tracking, and asset-centric maintenance planning."
Q18
What is Location in FSL?
⚡ Direct Answer
Location in FSL represents a physical place — a customer site, warehouse, service vehicle, or technician's home base. Locations have geographic coordinates enabling map-based dispatching and travel time calculations. Work Orders and Assets are linked to Locations for precise site identification.
🎯 Key Points
Location object: Name, LocationType (Site, Van, Warehouse, Branch), Latitude, Longitude, Street, City, State | Location hierarchy: parent-child locations (Building → Floor → Room) | Service Resource location: technician home base | Asset location: where equipment is installed | Work Order location: where job will be performed | Geocoding: latitude/longitude enables map view and travel time calculations | Parts: inventory tracked at Location (van stock, warehouse)
🏢 XYZ Company
At XYZ Company, Locations configured: 250 technician home bases (their home addresses for travel time calculations), 50 warehouse locations (parts inventory), and 2,500 customer site locations (where assets were installed). When scheduling, FSL calculated travel time FROM technician's last job location TO next job location — not from home base. Reduced travel time calculations accuracy: within 10 minutes of actual travel.
🎤 "Location in FSL represents physical places — technician home bases, customer sites, and warehouses — enabling accurate geographic scheduling and travel time optimization."
Q19
What is the FSL Managed Package?
⚡ Direct Answer
FSL is delivered as a Salesforce managed package (namespace: FSL) — installed on top of Service Cloud. It includes additional objects, Apex classes, Visualforce pages, and Lightning components. The scheduling optimization engine runs as an external Heroku-based service that communicates with the Salesforce org.
🎯 Key Points
FSL package namespace: FSL__ prefix | Installation: AppExchange → Field Service managed package | Requires: Service Cloud license + FSL license per user | Optimizer: external Heroku-based optimization engine — communicates via REST API | Objects added: Service Appointment, Service Resource, Service Territory, Operating Hours, Skill, Work Type, Maintenance Plan and more | Upgrades: managed package upgrades 2-3 times per year — test in sandbox first | Permission Sets: FSL provides standard permission sets (Dispatcher, Mobile Worker, Admin)
🏢 XYZ Company
At XYZ Company, FSL managed package installed on Service Cloud org. Setup: Install package → assign FSL permission sets (25 Dispatchers, 250 Mobile Workers, 5 Admins) → configure Service Territories → define Skills → create Service Resources → set Operating Hours → configure Scheduling Policy → test in sandbox. Full setup: 6 weeks. Go-live: zero production issues.
🎤 "FSL is a managed package (FSL__ namespace) installed on Service Cloud — with an external Heroku-based optimization engine, requiring both Service Cloud and FSL licenses per user."
Q20
What are the FSL Permission Sets?
⚡ Direct Answer
FSL provides standard permission sets for different user types: Field Service Admin (full configuration access), Field Service Dispatcher (Dispatcher Console access, scheduling), Field Service Mobile (field technician mobile access), and Field Service Scheduling (optimization engine access). Each permission set controls what a user can see and do in FSL.
🎯 Key Points
FSL Permission Sets: Field Service Admin (configure FSL, all access), Field Service Dispatcher (Dispatcher Console, schedule and dispatch SAs), Field Service Mobile (FSL Mobile App access, update job status), Field Service Scheduling (run optimization algorithms) | Assignment: each user needs appropriate permission set + FSL license | Multiple: a user can have multiple permission sets | Custom: create custom permission sets based on FSL standard sets | Best practice: never modify standard FSL permission sets — clone and customize
🏢 XYZ Company
At XYZ Company, permission set assignment: 5 Admins (Field Service Admin + Field Service Scheduling), 25 Dispatchers (Field Service Dispatcher), 250 Technicians (Field Service Mobile). When a dispatcher needed to also run optimization, they were given Field Service Scheduling permission set in addition to Dispatcher. Zero custom permission sets initially — standard FSL permission sets covered 100% of requirements.
🎤 "FSL permission sets control user access — Dispatcher for scheduling/dispatch, Mobile for field technicians, Admin for configuration, Scheduling for running optimization algorithms."
📅
Scheduling & Optimization
Q21–Q40 · Scheduling engine, optimization, and dispatch
Q21
What is the FSL Scheduling Engine?
⚡ Direct Answer
The FSL Scheduling Engine is the automated system that assigns Service Appointments to Service Resources based on Scheduling Policy rules — considering skills, territory, availability, travel time, and workload. It runs as an external Heroku-based service communicating with Salesforce via REST API.
🎯 Key Points
Scheduling engine types: Automated (no human involvement), Semi-automated (suggests candidates, dispatcher confirms), Manual (dispatcher assigns manually) | Actions: Schedule (assign one appointment), Global Optimization (reschedule all appointments in territory), In-Day Optimization (reoptimize remaining day appointments) | Triggers: button click, Apex call, or auto-schedule on SA creation | Response: returns scheduled appointments with assigned resource and time
🏢 XYZ Company
At XYZ Company, scheduling engine configured as Semi-automated. When a new Service Appointment was created: engine ran automatically, returned top 3 candidate technicians ranked by fit score. Dispatcher reviewed candidates and confirmed the best fit. For after-hours emergencies: Automated scheduling — engine assigned the best technician immediately without dispatcher review. Scheduling time: Semi-automated 2 minutes vs manual 15 minutes.
🎤 "FSL Scheduling Engine automatically assigns Service Appointments to the best-fit Service Resources based on Scheduling Policy — running as an external Heroku service considering skills, territory, availability, and travel time."
Q22
What is Global Optimization in FSL?
⚡ Direct Answer
Global Optimization (GO) is FSL's algorithm that reschedules ALL unscheduled and scheduled Service Appointments in a Service Territory for a defined time period — optimizing the entire schedule simultaneously for minimum travel, skill match, and workload balance. Run as a batch operation, typically overnight.
🎯 Key Points
Global Optimization: reschedules all SAs in territory for the optimization horizon | Trigger: manual button in Dispatcher Console or scheduled Apex | Time horizon: typically next 1-7 days | Output: completely optimized schedule — technicians' days reorganized for minimum travel | Impact: can move already-scheduled appointments | Dispatched SAs: by default, already-dispatched SAs are not moved (configurable) | Duration: seconds to minutes depending on volume
🏢 XYZ Company
At XYZ Company, Global Optimization ran every night at 2AM for the next 3 days. Result: average technician travel time reduced 28% compared to manual scheduling. Before GO: technicians sometimes drove across the city for sequential jobs. After GO: jobs clustered geographically — technicians rarely crossed territory zones unnecessarily. Fuel costs: reduced 22% in first quarter after implementing nightly GO.
🎤 "Global Optimization reschedules ALL Service Appointments in a territory simultaneously — typically run overnight to minimize total travel time and balance workload across all technicians."
Q23
What is In-Day Optimization in FSL?
⚡ Direct Answer
In-Day Optimization (IDO) reschedules the remaining unfinished Service Appointments for the current day in a Service Territory — responding to real-time changes like job overruns, cancellations, new emergency jobs, or technician absences. It reoptimizes only what is still ahead in the day.
🎯 Key Points
In-Day Optimization: reschedules remaining (not yet started) SAs for current day | Trigger: manual button, scheduled Apex (e.g., every 2 hours), or event-based (emergency SA created) | Scope: only future SAs for today — does not touch completed or in-progress | Use case: technician calls in sick (resource absence created) → IDO reassigns their remaining jobs to other technicians | Speed: faster than Global Optimization (smaller scope)
🏢 XYZ Company
At XYZ Company, In-Day Optimization triggered automatically in 3 scenarios: (1) Emergency SA created (Priority: Critical) — IDO ran to fit emergency into existing schedules, (2) Technician marked SA as Cannot Complete — IDO rescheduled unfinished jobs, (3) Technician marked as absent mid-day — IDO reassigned their remaining 4 jobs to 2 other technicians. Customer impact: zero missed SLAs on days with unexpected disruptions.
🎤 "In-Day Optimization reschedules remaining appointments for the current day — responding to real-time disruptions like emergencies, cancellations, or technician absences."
Q24
What is the difference between Automatic Scheduling and Semi-Automatic Scheduling?
⚡ Direct Answer
Automatic Scheduling: FSL assigns a Service Appointment to the best-fit Service Resource without any dispatcher involvement — ideal for high-volume, low-complexity jobs. Semi-Automatic Scheduling: FSL suggests the top candidate technicians, but a dispatcher makes the final assignment — ideal for complex or high-priority jobs requiring human judgment.
🎯 Key Points
Automatic: scheduling engine assigns SA directly — no dispatcher action required | Semi-automatic: engine returns ranked candidates, dispatcher confirms | Manual: dispatcher assigns SA from Dispatcher Console without engine suggestions | Triggers: configured per Work Type or Service Territory | Use cases: Automatic for standard preventive maintenance (predictable, low risk), Semi-automatic for emergency repairs (dispatcher verifies parts availability, customer preferences), Manual for VIP customers (account team involvement)
🏢 XYZ Company
At XYZ Company, scheduling mode by Work Type: Preventive Maintenance (Automatic — 80% of volume, predictable, scheduled by engine overnight), Emergency Repair (Semi-automatic — dispatcher reviews top 3 candidates, confirms best fit, verifies parts availability), Complex Installation (Manual — project manager assigns specific senior technician). Dispatcher workload: reduced 60% after implementing Automatic for PM jobs.
🎤 "Automatic Scheduling assigns without dispatcher involvement (high-volume standard jobs); Semi-Automatic suggests candidates for dispatcher confirmation (complex or high-priority jobs requiring human judgment)."
Q25
What are Scheduling Work Rules in FSL?
⚡ Direct Answer
Scheduling Work Rules are hard constraints that the FSL scheduling engine MUST respect when assigning Service Appointments. If a Work Rule is violated, the appointment cannot be assigned to that technician. Common Work Rules: Match Skills, Match Territory, Working Locations, Required Resources, Excluded Resources.
🎯 Key Points
Work Rules (hard constraints — cannot be violated): Match Skill (technician must have required skills), Match Territory (technician must be in same territory), Working Locations (technician must be at valid location), Required Resources (specific technician must be assigned), Excluded Resources (specific technician must NOT be assigned), Service Appointment Crew Size (crew size requirements) | Contrast to Service Objectives: objectives are optimization goals, work rules are mandatory
🏢 XYZ Company
At XYZ Company, Work Rules configured in Scheduling Policy: Match Skill (mandatory — no unqualified technicians ever assigned), Match Territory (mandatory — no cross-territory assignments without override), Working Hours (mandatory — no scheduling outside Operating Hours). These 3 Work Rules meant: a dispatcher could not accidentally assign an unqualified technician or schedule outside business hours — engine enforced it automatically. Zero compliance violations.
🎤 "Scheduling Work Rules are hard mandatory constraints — the FSL scheduling engine cannot assign a Service Appointment if any Work Rule is violated, ensuring skills, territory, and availability compliance."
Q26
What are Service Objectives in FSL?
⚡ Direct Answer
Service Objectives are the optimization goals that guide FSL's scheduling engine when multiple valid assignment options exist — they prioritize which assignment is BEST among the compliant options. Common Service Objectives: Minimize Travel, Maximize Skill Match, Preferred Resources, Customer Window, Soft Boundaries.
🎯 Key Points
Service Objectives (weighted optimization goals): Minimize Travel (reduce drive time between jobs), Maximize Skill Match (prefer technicians with higher skill levels), Preferred Resources (prefer customer-preferred technicians), Customer First (respect customer time window preferences), Soft Boundaries (prefer primary territory technicians over secondary) | Weight: each objective has a weight (0-100) — higher weight = more important | Balance: sum of weights = 100 | Multiple objectives: engine balances all simultaneously
🏢 XYZ Company
At XYZ Company, Service Objectives weights: Minimize Travel (50 — most important for cost control), Maximize Skill Match (25 — quality focus), Customer First (15 — respect customer time preferences), Preferred Resources (10 — customer-preferred technician gets slight priority). Result: scheduling engine primarily optimized for travel, secondarily for skill match. Technician travel reduced 28%. First-time fix rate improved 12% (better skill matching).
🎤 "Service Objectives are weighted optimization goals that guide FSL scheduling among valid options — balancing travel minimization, skill matching, customer preferences, and workload distribution."
Q27
What is Drip Feed Scheduling in FSL?
⚡ Direct Answer
Drip Feed Scheduling is an FSL feature that automatically dispatches Service Appointments to field technicians at a configurable time before the scheduled start — rather than dispatching all of tomorrow's jobs the night before. This reduces rescheduling chaos when plans change and gives technicians a real-time view.
🎯 Key Points
Drip Feed: auto-dispatches SA X minutes/hours before SchedStartTime | Configuration: set dispatch lead time (e.g., 2 hours before appointment) | Benefit: only dispatch when job is confirmed — reduces morning re-dispatch when overnight changes occur | Contrast to bulk dispatch: dispatching all jobs at once means many re-dispatches if anything changes | Implementation: scheduled Apex or Process Builder checks appointments and dispatches at configured lead time | Mobile experience: technician sees their next job appear on mobile as day progresses
🏢 XYZ Company
At XYZ Company, Drip Feed configured at 3 hours before appointment. Technicians received jobs on FSL Mobile 3 hours in advance — enough time to review details and plan, not so early that changes would trigger re-dispatch. Before Drip Feed: all next-day jobs dispatched at 6PM — 35% required re-dispatch in the morning. After Drip Feed: only 8% re-dispatch rate. Technician satisfaction: improved significantly (less confusion from changed schedules).
🎤 "Drip Feed Scheduling auto-dispatches appointments X hours before start time — reducing re-dispatch rates by only notifying technicians when jobs are confirmed close to the actual appointment time."
Q28
What is Schedule Over Horizon in FSL?
⚡ Direct Answer
Schedule Over Horizon (SOH) defines how far in advance FSL will schedule Service Appointments — the maximum future date the scheduling engine will consider. If an appointment's earliest start time is beyond the horizon, the engine will not schedule it until it falls within the horizon.
🎯 Key Points
Schedule Over Horizon: configured in Scheduling Policy | Purpose: prevents scheduling too far in advance (schedules become irrelevant as circumstances change) | Typical values: 7 days (reactive field service), 30 days (planned maintenance), 90 days (long-lead installation projects) | Impact: SA with EarliestStartTime beyond horizon stays Unscheduled until it enters the horizon | Maintenance Plans: often use longer horizons (30-60 days) | Emergency: horizon ignored for Critical Priority SAs — scheduled immediately
🏢 XYZ Company
At XYZ Company, two Schedule Over Horizons: Standard Jobs (7 days — reactive repair, no value in scheduling too far ahead), Maintenance Plans (60 days — predictive, plan ahead). Emergency jobs (Critical Priority): horizon bypassed — scheduled immediately regardless of horizon. Result: standard repair backlog visible 1 week ahead, maintenance schedule visible 2 months ahead, emergency always handled immediately.
🎤 "Schedule Over Horizon defines how far in advance FSL schedules appointments — preventing over-scheduling while ensuring appropriate planning windows for different job types."
Q29
What is the Gantt Chart in the Dispatcher Console?
⚡ Direct Answer
The Gantt Chart in the Dispatcher Console is the primary scheduling visualization — a horizontal timeline showing Service Resources (technicians) as rows and time as columns. Each Service Appointment appears as a colored block on the relevant technician's row at the scheduled time. Dispatchers interact with it by drag-and-drop.
🎯 Key Points
Gantt features: each row = one Service Resource, each block = one Service Appointment | Color coding: by SA status (Scheduled, Dispatched, In Progress, Completed), priority, or Work Type | Drag and drop: move appointments between technicians or reschedule by dragging | Zoom: hour-by-hour or day-by-day view | Travel time: travel time between appointments shown as gray blocks | Violations: SAs violating SLA highlighted in red | Filters: by Service Territory, date range, technician, status
🏢 XYZ Company
At XYZ Company, dispatchers used the Gantt to start each day. View: 25 technicians on rows, 8AM-6PM columns. Color coding: Red = High Priority, Yellow = Medium, Green = Completed, Gray = Travel. Morning workflow: review red blocks (high priority unscheduled) → drag to available technician slots → click Dispatch. Travel time blocks helped avoid over-booking (prevented scheduling back-to-back jobs 60km apart).
🎤 "The Gantt Chart in the Dispatcher Console shows all technicians as rows and time as columns — with drag-and-drop scheduling, color-coded appointment blocks, and travel time visualization."
Q30
What is the Map View in the Dispatcher Console?
⚡ Direct Answer
The Map View in the Dispatcher Console shows Service Appointments and Service Resources on a geographic map — displaying technician locations and appointment locations as pins. Dispatchers can use it to assign nearby technicians to new appointments and visualize travel patterns.
🎯 Key Points
Map View features: technician real-time locations (if location tracking enabled), appointment pins by status, territory polygon overlays, travel routes | Candidate matching: click an unscheduled appointment → map shows eligible technicians with distance and travel time | Real-time: technician GPS location updates via FSL Mobile | Territory visualization: service territory boundaries shown on map | Candidate list: sorted by proximity, skill match, availability | Use case: emergency dispatch — find nearest available qualified technician
🏢 XYZ Company
At XYZ Company, Map View used for emergency dispatch. Emergency SA created → dispatcher opened Map View → saw 8 eligible technicians as pins on map → nearest qualified technician was 4km away (John Smith, Electrical Certification) → clicked Assign + Dispatch → John received notification in 30 seconds. Average emergency response time: 8 minutes from SA creation to technician dispatch. Previous: 25 minutes manual process.
🎤 "The Map View in Dispatcher Console shows technician locations and appointment pins geographically — enabling dispatchers to find the nearest qualified technician for emergency dispatch."
Q31
What is Emergency Scheduling in FSL?
⚡ Direct Answer
Emergency Scheduling in FSL handles high-priority Service Appointments that must be scheduled immediately — bypassing normal scheduling queues and horizon constraints. It can automatically override existing scheduled appointments, insert emergency jobs into the current day's schedule, and trigger immediate dispatch.
🎯 Key Points
Emergency scheduling: Priority field on SA set to Critical or Emergency | Automatic: scheduling engine immediately finds best available technician — ignores Schedule Over Horizon | Override: can be configured to bump lower-priority SAs to accommodate emergency | Immediate dispatch: emergency SAs auto-dispatched via Drip Feed or immediate dispatch | IDO: In-Day Optimization triggered after emergency insertion to rebalance remaining schedule | SLA: emergency SAs typically have tightest SLA windows (2-4 hours)
🏢 XYZ Company
At XYZ Company, emergency protocol: SA Priority set to Critical → scheduling engine triggered automatically → found nearest qualified technician with available time or bumped lowest-priority scheduled job → immediately dispatched to technician FSL Mobile → IDO triggered for remaining day appointments. Average time from emergency SA creation to technician dispatch: 8 minutes. SLA compliance for Critical priority: 96% within 4-hour response window.
🎤 "Emergency Scheduling bypasses normal constraints to immediately find, assign, and dispatch the best available technician — triggering In-Day Optimization to rebalance the rest of the day's schedule."
Q32
What is Appointment Bundling in FSL?
⚡ Direct Answer
Appointment Bundling is an FSL feature that groups multiple Service Appointments at the same or nearby location into a single technician visit — reducing travel costs by combining jobs that would otherwise require separate trips. The bundle is created before scheduling and treated as one time block.
🎯 Key Points
Bundling: group multiple SAs at same location into one visit | Bundle Policy: defines when bundling applies (same location, within X km, same time window) | Bundle Lead: one SA designated as the lead of the bundle | Scheduling: bundle scheduled as one unit — all SAs in bundle assigned same technician and time slot | Use cases: multi-tenant buildings (service multiple units in one visit), adjacent customer sites, same-day follow-ups | Benefit: significant travel reduction for high-density service areas
🏢 XYZ Company
At XYZ Company, Appointment Bundling used for apartment complex maintenance. All 12 apartments in Sunrise Complex needing quarterly maintenance were bundled: one technician visit for the entire complex (8-hour block) instead of 12 separate visits. Travel cost: 12 separate visits = 12 travel trips. Bundled = 1 travel trip. Annual savings: 240 technician travel-hours per complex. 15 similar complexes: 3,600 travel-hours saved annually.
🎤 "Appointment Bundling groups multiple Service Appointments at the same or nearby location into one technician visit — significantly reducing travel costs for high-density service areas."
Q33
What are Scheduling Constraints and how do they affect FSL?
⚡ Direct Answer
Scheduling Constraints in FSL are limitations that restrict when and how appointments can be scheduled — customer time windows (appointments only between 9AM-12PM), required start date (cannot be before a specific date), appointment dependencies (SA2 cannot start until SA1 is complete), and location constraints.
🎯 Key Points
Time window constraints: EarliestStartTime and DueDate on SA define the window | Customer time windows: ServiceAppointmentRequestedDate and RequestedStartTime fields | SA dependencies: SAs can be linked so SA2 is blocked until SA1 is completed | Required resources: specific technician must be assigned | Location constraints: job must be performed on-site | Impact on optimization: constraints reduce feasible assignment options — too many constraints can make scheduling impossible | Best practice: minimize hard constraints, use Service Objectives for soft preferences
🏢 XYZ Company
At XYZ Company, scheduling constraints: Customer time windows (30% of residential customers specified morning or afternoon preference — captured as EarliestStartTime/DueDate), SA dependencies (Electrical Inspection must complete before Power Restoration on same transformer job — dependency configured), Required resource (VIP customer always required their dedicated technician — Required Resource configured on SA). Constraint violations tracked: zero in first 6 months after proper configuration.
🎤 "Scheduling Constraints restrict when and how FSL can schedule appointments — customer time windows, appointment dependencies, and required resources reducing feasible assignment options."
Q34
What is the Service Appointment's SLA and how is it tracked?
⚡ Direct Answer
Service Appointment SLA is tracked via the DueDate field — the deadline by which the SA must be completed. FSL highlights SAs approaching or past their DueDate in the Dispatcher Console. Custom Apex or Flows can send alerts when SLA is at risk. KPIs: SLA compliance rate, average response time, average resolution time.
🎯 Key Points
DueDate: the SLA deadline on Service Appointment | Visual warning: SAs approaching DueDate highlighted yellow/red in Dispatcher Console | SLA breach: SA past DueDate shown in red | Automated alerts: Flow or Apex sends alert to dispatcher when SA is X hours from DueDate and still unscheduled | Reporting: CRMA dashboards for SLA compliance by territory, technician, priority | KPIs: First Response Time (SA creation to dispatch), Mean Time to Resolution (SA creation to completion)
🏢 XYZ Company
At XYZ Company, SLA definitions by Priority: Critical (4-hour DueDate from creation), High (8-hour), Medium (24-hour), Low (72-hour). Automated alert: Flow triggered 1 hour before DueDate if SA still not dispatched — notified dispatcher and their manager. Weekly CRMA report: SLA compliance by territory (target 95%). After 3 months: Critical SLA compliance 96%, High 94%, Medium 98%, Low 99%. Pre-FSL: manual tracking, SLA compliance unknown.
🎤 "FSL SLA is tracked via the DueDate field — with Dispatcher Console visual warnings, automated Flow alerts, and CRMA dashboards measuring compliance rates by priority, territory, and technician."
Q35
What is the difference between Work Order and Service Appointment?
⚡ Direct Answer
Work Order defines WHAT needs to be done and for whom (the job). Service Appointment defines WHEN and WHO will do it (the schedule). One Work Order can have multiple Service Appointments (e.g., initial visit, follow-up, re-visit). The Work Order is the parent; Service Appointments are the child scheduling records.
🎯 Key Points
Work Order: WHAT — job description, customer, asset, duration, skills required | Service Appointment: WHEN and WHO — scheduled time, assigned technician, status | Relationship: one Work Order can have multiple Service Appointments | Multiple SAs: initial diagnosis SA + repair SA + follow-up SA all linked to one Work Order | Work Order status vs SA status: Work Order tracks overall job status, SA tracks individual visit status | Parent: Work Order Line Items can also be the parent of SAs for granular scheduling
🏢 XYZ Company
At XYZ Company, transformer replacement job: One Work Order (Transformer Replacement, 12-hour job, High Voltage required). Three Service Appointments: SA1 Site Survey (Day 1, 1 hour, Electrical Engineer), SA2 Transformer Removal (Day 3, 4 hours, 3-person Crew), SA3 New Transformer Installation (Day 4, 7 hours, 3-person Crew). All three SAs linked to the same Work Order. Work Order showed complete timeline — customer had full visibility.
🎤 "Work Order defines what job needs to be done; Service Appointment defines when and who — one Work Order can have multiple Service Appointments for multi-visit jobs like initial diagnosis, repair, and follow-up."
Q36
What are Scheduling Recipes in FSL?
⚡ Direct Answer
Scheduling Recipes (also called Enhanced Scheduling and Optimization) are FSL's newer declarative scheduling configuration — replacing the older Scheduling Policy interface with a more flexible, step-by-step recipe approach that separates scheduling and optimization logic. They define how the engine processes appointments in stages.
🎯 Key Points
Enhanced Scheduling: newer FSL scheduling configuration | Stages: separate configuration for Candidate Finding (who is eligible), Scheduling (when to assign), Optimization (how to optimize) | Benefits: more granular control, better performance for large territories | Older Scheduling Policy: still supported but Enhanced Scheduling is the recommended direction | Work Rules and Service Objectives: still apply but configured differently in recipes | Migration: existing Scheduling Policies can coexist with Scheduling Recipes
🏢 XYZ Company
At XYZ Company, Scheduling Recipes implemented for the Mumbai territory (5,000+ SAs per month — too high volume for standard Scheduling Policy). Recipe stages: (1) Candidate Finding (skills + territory filter — narrows to eligible technicians quickly), (2) Scheduling (assigns best available slot), (3) Optimization (minimizes travel). Processing time: 40% faster than standard Scheduling Policy for the same volume.
🎤 "Scheduling Recipes are FSL's newer declarative scheduling configuration — replacing the older Scheduling Policy with a staged approach (candidate finding, scheduling, optimization) for better performance at high volumes."
Q37
What is Resource Optimization in FSL?
⚡ Direct Answer
Resource Optimization is FSL's premium add-on that provides advanced AI-powered scheduling optimization — considering complex constraints, multiple objectives simultaneously, and large territory volumes that go beyond what the standard scheduling engine can handle. It uses machine learning to improve scheduling quality over time.
🎯 Key Points
Resource Optimization: premium FSL add-on | Capabilities beyond standard: handles 100,000+ SAs/day, complex multi-objective optimization, predictive scheduling based on historical patterns | Machine learning: learns from past scheduling decisions to improve future assignments | Extended optimization horizon: schedule weeks ahead with high confidence | Real-time adaptation: instantly reoptimizes when disruptions occur | Requires: separate license on top of FSL | Industries: large utilities, telecom, logistics with massive field operations
🏢 XYZ Company
At XYZ Company (large utility), Resource Optimization with 1,200 field technicians and 8,000 SAs daily. Standard scheduling engine performance: 85% optimization quality. Resource Optimization performance: 94% optimization quality. Key improvement: machine learning identified that certain technicians performed certain job types faster (skill proficiency patterns) — assignments reflected actual performance, not just skill presence. Annual fuel savings: $2.1M.
🎤 "Resource Optimization is FSL's premium AI-powered scheduling add-on — handling massive volumes (100,000+ SAs/day), multi-objective optimization, and machine learning to improve scheduling quality over time."
Q38
What are Absence Types in FSL?
⚡ Direct Answer
Absence Types categorize Resource Absences — defining what kind of unavailability a technician has: Holiday, Break, Medical Leave, Training, Personal Time. Each Absence Type can have different business rules — for example, medical absences might trigger automatic job reassignment while scheduled breaks do not.
🎯 Key Points
Absence Types: Holiday, Break, Medical, Training, Personal, Other | RecordType on Resource Absence: maps to absence type | Business rules per type: Medical absence → auto-trigger IDO for same-day job reassignment; Training absence → flag for manager to reassign scheduled jobs; Break → do not schedule during break but no job reassignment | Reporting: absence patterns by type help identify capacity issues | Integration: HR system pushes approved leaves as Resource Absences
🏢 XYZ Company
At XYZ Company, Absence Types configured with different automation: Medical Leave → immediate Flow trigger → IDO runs → all that technician's same-day jobs reassigned to other technicians → manager notified; Training → manager receives task to review and reassign scheduled jobs; Personal Leave → no automation (planned in advance). Medical absence handling time: 3 minutes (automated) vs 45 minutes (previous manual phone calls to reassign jobs).
🎤 "Absence Types categorize Resource Absences (Medical, Training, Holiday, Break) — each type triggering different business rules for job reassignment, manager notification, and IDO optimization."
Q39
What is Multi-Resource Scheduling in FSL?
⚡ Direct Answer
Multi-Resource Scheduling allows a single Service Appointment to require and schedule multiple Service Resources simultaneously — for jobs that need specific combinations of technicians (e.g., an Electrical Engineer plus two Electricians) without creating a formal Crew. Each resource is assigned and dispatched to the same SA.
🎯 Key Points
Multi-Resource SA: one SA with multiple ServiceAppointmentAssignedResource records | vs Crew: Crew is a pre-defined group, Multi-Resource is ad-hoc per SA | Required Crew Size: configure minimum technicians needed | Lead resource: one resource designated as lead | Skills: combined skills of all assigned resources must meet job requirements | Scheduling: engine finds combination of available resources that satisfy all requirements | Dispatch: all assigned resources dispatched simultaneously
🏢 XYZ Company
At XYZ Company, high-voltage tower maintenance required 3 resources: 1 Electrical Engineer (required for certification compliance) + 2 Electrical Technicians. No pre-defined crew (technician availability varied). Multi-Resource Scheduling: SA configured with RequiredCrewSize = 3. Engine found available combination of 1 Engineer + 2 Technicians with matching schedules. All 3 dispatched simultaneously. Job completed safely — all compliance requirements met.
🎤 "Multi-Resource Scheduling assigns multiple Service Resources to a single SA without a pre-defined Crew — ideal for jobs requiring specific combinations of technicians that vary per job."
Q40
What is Appointment Status Flow in FSL?
⚡ Direct Answer
FSL Service Appointment status flow: None (created, not yet scheduled) → Scheduled (assigned to technician with time slot) → Dispatched (sent to technician mobile app) → In Progress (technician checked in on site) → Completed (job finished) or Cannot Complete (job could not be finished). Each transition can trigger automations.
🎯 Key Points
Status values: None, Scheduled, Dispatched, En Route, On Site, In Progress, Completed, Cannot Complete, Canceled | En Route: technician started traveling to job | On Site: technician arrived at customer location | Cannot Complete: technician could not finish — reason captured (parts unavailable, access denied, safety concern) | Automations: each status transition can trigger Flow (e.g., Completed → update Asset last service date, Cannot Complete → create follow-up SA) | Customer notification: status changes can trigger customer SMS/email
🏢 XYZ Company
At XYZ Company, customer notification automation on SA status: Dispatched → customer SMS 'Your technician John is on his way, ETA 45 minutes'; En Route → customer email with live tracking link; Completed → customer email with service report PDF; Cannot Complete → customer call from dispatcher within 30 minutes to reschedule. Customer satisfaction: NPS improved from 62 to 81 after real-time status notifications implemented.
🎤 "FSL Service Appointment status flows None → Scheduled → Dispatched → In Progress → Completed — each transition triggering automations for customer notifications, asset updates, and follow-up job creation."
👷
Service Resources & Territories
Q41–Q60 · Technicians, crews, skills, and territories
Q41
How do you configure Service Territory Hierarchy in FSL?
⚡ Direct Answer
Service Territory Hierarchy is configured by creating parent and child Service Territory records — linking child territories to their parent via the ParentTerritoryId field. The hierarchy can be as deep as needed (Country → Region → City → Zone). Technicians are assigned to the appropriate level of the hierarchy.
🎯 Key Points
Configuration: Service Territory → New → set ParentTerritoryId for child | Hierarchy levels: Country → State → City → District → Zone (configure as needed) | Territory member assignment: technicians assigned to the most specific territory level | Scheduling: uses the technician's Primary territory for scheduling, Secondary for overflow | Territory boundaries: define geographic polygons in FSL settings for map visualization | Best practice: match territory hierarchy to operational management hierarchy
🏢 XYZ Company
At XYZ Company, territory hierarchy: India (top) → Maharashtra → Mumbai → Mumbai North, Mumbai South, Mumbai Central. Each of 250 technicians assigned to one Mumbai zone (Primary). Mumbai territory had 85 technicians. Regional manager saw all Mumbai territory in Dispatcher Console. Zone dispatchers saw only their zone. Territory manager reports: AUM by territory, SLA compliance by zone, technician utilization by region.
🎤 "Configure Service Territory Hierarchy by linking child territories to parents via ParentTerritoryId — matching operational management structure and enabling hierarchical dispatching and reporting."
Q42
What is a Service Territory Member?
⚡ Direct Answer
A Service Territory Member is the junction record linking a Service Resource (technician) to a Service Territory — with a designation of Primary or Secondary. Primary means the technician primarily serves that territory. Secondary means the technician can also serve that territory (overflow capacity). A technician can be a member of multiple territories.
🎯 Key Points
ServiceTerritoryMember fields: ServiceResourceId, ServiceTerritoryId, TerritoryType (Primary or Secondary), EffectiveStartDate, EffectiveEndDate | Primary: technician home territory — first assignment preference | Secondary: overflow territory — used when Primary territory has insufficient capacity | Multiple territories: one technician can have one Primary + multiple Secondary | Operating Hours: territory member can have specific operating hours overriding territory operating hours | Effectiveness dates: model seasonal territory changes
🏢 XYZ Company
At XYZ Company, 250 technicians configured as Service Territory Members. Primary: each technician had one Primary zone (their home area). Secondary: senior technicians had 1-2 Secondary territories (adjacent zones). When Mumbai North had urgent SA and no available Primary technicians: scheduler automatically found Secondary members from Mumbai South/Central. Cross-territory travel: secondary assignments used for 12% of jobs — significant overflow capacity without hiring.
🎤 "Service Territory Member links a Service Resource to a Service Territory as Primary (home area) or Secondary (overflow) — enabling cross-territory scheduling when primary territory has insufficient capacity."
Q43
How do you manage Technician Skills in FSL?
⚡ Direct Answer
Technician skills in FSL are managed via Service Resource Skill records — linking a Skill to a Service Resource with skill level (0-100%), start date, and optional expiry date. Skills are matched to Required Skills on Work Orders during scheduling. Expired skills are not used for matching.
🎯 Key Points
Skill management: Service Resource → Skills related list → New Service Resource Skill | Fields: SkillId (lookup to Skill), ServiceResourceId, SkillLevel (0-100), StartDate, EndDate | Skill expiry: EndDate defines when certification expires — engine ignores expired skills | Bulk update: Data Loader for mass skill updates after training batches | Automation: Flow creates new Service Resource Skill record when training completion is logged | Reporting: skills expiry report — shows technicians with skills expiring in next 30/60/90 days
🏢 XYZ Company
At XYZ Company, skill management process: (1) Training completed → Training Record created; (2) Flow triggered → new Service Resource Skill created with start date and expiry date; (3) 60-day expiry alert → Flow notified manager to schedule renewal training; (4) Renewal completed → Service Resource Skill end date extended. Result: zero expired skills used in scheduling. Compliance report: 100% skill currency maintained across 250 technicians.
🎤 "Technician skills are managed via Service Resource Skill records with expiry dates — automated Flow creates skills on training completion, expiry alerts trigger renewal scheduling, and the engine ignores expired skills."
Q44
What is Capacity-Based Scheduling in FSL?
⚡ Direct Answer
Capacity-Based Scheduling in FSL manages Service Resources that have a capacity value (e.g., a vehicle that can carry 5 jobs per day, or a technician whose capacity is 8 hours of work). The scheduling engine respects capacity limits — not assigning more work than a resource can handle.
🎯 Key Points
Capacity: set on Service Resource (CapacityInPercentage or hours) | Use cases: service vehicles (capacity = number of jobs), technicians with specialized equipment shared among team | Capacity reduction: Resource Absence reduces available capacity | Booking: each SA consumes a percentage of daily capacity | Overflow: when capacity reached, engine moves to next available resource | Combined with territories: capacity-aware territory management | Reporting: capacity utilization dashboard
🏢 XYZ Company
At XYZ Company, specialist diagnostic equipment (Resource Type: Equipment) configured with Capacity: 100% = 4 jobs per day (equipment takes 2 hours per job). When scheduling jobs requiring the diagnostic equipment: engine tracked daily capacity — once 4 jobs assigned (100% capacity), engine found next available day. Prevented double-booking specialized equipment. Equipment utilization dashboard: maintained 85-90% utilization vs previous 60% (before FSL capacity tracking).
🎤 "Capacity-Based Scheduling manages Service Resources with limited daily capacity — preventing over-booking of shared equipment, specialist resources, or technicians with physical capacity constraints."
Q45
What are Service Resource Types in FSL?
⚡ Direct Answer
FSL has three Service Resource types: Technician (a human worker linked to a User record), Crew (a group of technicians that work together), and Equipment (non-human resource like a specialized tool or vehicle that must be present at a job). Each type has different scheduling behavior.
🎯 Key Points
Technician: human worker, linked to User, has skills, uses FSL Mobile App, has Operating Hours | Crew: group of Technicians, has Lead Technician, members can change, scheduled as a unit | Equipment: non-human (diagnostic tool, crane, specialized vehicle), no User link, no mobile app, capacity-based, must be co-assigned with technician SA | Configuration: ResourceType field on Service Resource | Scheduling: equipment and technician SAs coordinated for same time/location
🏢 XYZ Company
At XYZ Company, three resource types in use: Technicians (250 human workers, all linked to Salesforce Users), Crews (10 pre-defined crews of 3 for complex jobs), Equipment (5 specialized diagnostic units). When a job required diagnostic equipment: SA assigned to both technician AND diagnostic unit — engine coordinated availability of both. Zero incidents of technician arriving on site without required equipment.
🎤 "FSL has three Service Resource types: Technician (human worker), Crew (group of technicians), and Equipment (non-human resources like specialized tools) — each with different scheduling behavior and coordination requirements."
Q46
How do you handle Preferred Technicians in FSL?
⚡ Direct Answer
Preferred Technicians in FSL are configured via the Service Appointment's Preferred Resource or via the AccountContactRelation of the customer — flagging a specific Service Resource that the customer prefers for their jobs. This preference is used as a Service Objective in the Scheduling Policy, giving the preferred technician higher priority when available.
🎯 Key Points
Preferred Resource: ServiceAppointment field or configured on Account | Service Objective: Preferred Resources objective gives weight to preferred technician assignment | Exclusion: Excluded Resources prevents specific technicians from being assigned | AccountContactRelation: preferred technician linked to customer for automatic SA population | Override: preferred technician not always available — engine falls back to next best | Use case: VIP customers, recurring maintenance same technician (relationship building)
🏢 XYZ Company
At XYZ Company, VIP customers (top 50 accounts) had Preferred Technicians assigned on their Account. When an SA was created for a VIP account, Preferred Resource auto-populated. Scheduling Policy: Preferred Resources Service Objective weight = 40 (highest weight). Result: VIP customers received their preferred technician 82% of the time. When preferred technician unavailable: second technician from preferred technician's crew assigned. VIP customer satisfaction: NPS 91 vs 74 for standard customers.
🎤 "Preferred Technicians are configured as a Service Objective — giving the preferred Service Resource higher scheduling priority while allowing the engine to fall back to alternatives when unavailable."
Q47
What is a Crew in FSL and how is it managed?
⚡ Direct Answer
A Crew in FSL is a pre-defined group of Service Resources that work together as a team. Crews have a Lead member and regular members. When a Crew is assigned to a Service Appointment, all crew members are simultaneously blocked in their schedules and dispatched. Crew membership can change over time.
🎯 Key Points
Crew object: ServiceResource with ResourceType = Crew | Crew Member: links Service Resources to Crew with roles (Lead, Member) | Lead: the responsible technician — receives primary dispatch notification | Members: receive dispatch notifications | Crew size: the scheduling engine can require minimum crew size for certain jobs | Dynamic crews: crew membership tracked with StartDate/EndDate on Crew Member | Skills: crew inherits skills of all active members | Dispatch: all crew members dispatched simultaneously
🏢 XYZ Company
At XYZ Company, 10 permanent Crews defined for complex infrastructure jobs. Crew Alpha: Lead John Smith (Electrical Engineer) + Members Mike Jones + Sarah Patel (Electrical Technicians). Crew Beta through Crew Kappa similarly defined. Transformer replacement jobs always required a crew. Crew management: when crew member took leave, temporary replacement added to crew for that period. Crew availability: shown as one unit in Dispatcher Console — if Lead unavailable, entire Crew shown as unavailable.
🎤 "A Crew is a pre-defined team scheduled and dispatched as one unit — with a Lead member receiving primary responsibility and all members simultaneously blocked and notified when the Crew is assigned."
Q48
What is a Service Territory's Operating Hours vs Service Resource's Operating Hours?
⚡ Direct Answer
Service Territory Operating Hours define when the territory operates overall — the general business hours for the region. Service Resource Operating Hours define when a specific technician is available — overriding territory hours for that individual. If a technician has their own Operating Hours, those take precedence over territory hours.
🎯 Key Points
Service Territory Operating Hours: general territory business hours (Mon-Fri 8AM-6PM) | Service Resource Operating Hours: individual technician schedule (Mon-Fri 7AM-4PM for early shift) | Override: Service Resource Operating Hours OVERRIDE Service Territory Operating Hours | No Resource Operating Hours: technician defaults to Service Territory Operating Hours | Multiple time slots: both can have multiple time slots (early shift, late shift) | Impact: scheduling engine uses the more specific (Resource) hours when both exist
🏢 XYZ Company
At XYZ Company, Service Territory Operating Hours: Mon-Fri 8AM-6PM, Sat 9AM-1PM. Special technicians: Emergency Response Team had Service Resource Operating Hours: Mon-Sun 6AM-10PM (extended hours for emergency coverage). Scheduling: standard jobs only assigned 8AM-6PM (territory hours). Emergency jobs could be assigned to Emergency Response Team 6AM-10PM (their individual hours). Non-ER technicians: defaulted to territory hours — zero scheduling outside 8AM-6PM.
🎤 "Service Resource Operating Hours override Service Territory Operating Hours — enabling individual technician schedules (shift workers, emergency response teams) to differ from general territory business hours."
Q49
How do you track Technician Location in FSL?
⚡ Direct Answer
FSL tracks technician location via the FSL Mobile App GPS — updating the Service Resource's Location field in real time as technicians move. Location data appears in the Dispatcher Console Map View. Location tracking must be enabled in FSL settings and technicians must have location sharing enabled on their mobile device.
🎯 Key Points
Location tracking: enabled in FSL Mobile settings on technician's phone | ServiceResource.Location: updated via FSL Mobile as technician moves | Dispatcher Console Map View: real-time technician pins on map | Location history: last known location stored | Privacy: location tracking policies must comply with local labor laws | Use case: dispatcher sees nearest technician to emergency, real-time ETA calculation | Geofencing: auto-update SA status when technician enters/exits customer site geofence
🏢 XYZ Company
At XYZ Company, location tracking implemented with employee consent (signed location tracking policy). Dispatcher Console: real-time pins for all 250 technicians on map. Emergency dispatch: when emergency SA created, dispatcher opened Map View → saw nearest qualified technician (John Smith, 3km away) → dispatched within 60 seconds. ETA: automatically calculated from technician's current GPS location to customer site. Customer notification: automated SMS with accurate ETA.
🎤 "FSL tracks technician location via FSL Mobile App GPS — updating real-time positions visible in Dispatcher Console Map View for emergency dispatch and ETA calculation."
Q50
What is the Service Appointment Assignment Status?
⚡ Direct Answer
The Service Appointment Assignment Status is a separate field from SA Status — it reflects whether a technician has accepted, declined, or not yet responded to a dispatched appointment. This field is visible on the Dispatcher Console and helps dispatchers know if a dispatched job has been acknowledged by the technician.
🎯 Key Points
Assignment Status: None, Accepted, Declined | Set by: field technician on FSL Mobile App (Accept or Decline button) | Dispatcher visibility: Dispatcher Console shows Assignment Status alongside SA Status | Declined: technician declines → dispatcher notified → manual reassignment needed | Auto-accept: can configure to auto-accept on Dispatch (no technician confirmation required) | Use case: critical for jobs where technician confirmation is important before customer notification | Not to confuse with SA Status: they are separate fields
🏢 XYZ Company
At XYZ Company, Assignment Status used for emergency jobs only. Emergency SA dispatched → technician received notification on FSL Mobile → had 10 minutes to Accept or Decline → if Declined or no response in 10 minutes → dispatcher alerted → reassigned to next candidate. Standard jobs: auto-accepted (no confirmation required). Emergency acknowledgment rate: 94% accepted within 5 minutes. Zero emergency jobs where technician arrived without acknowledgment.
🎤 "Assignment Status (Accepted/Declined) is separate from SA Status — showing whether the dispatched technician has acknowledged the job, enabling dispatchers to reassign if a technician declines or doesn't respond."
Q51
What is a Secondary Service Territory Member?
⚡ Direct Answer
A Secondary Service Territory Member is a Service Resource who can work in a territory beyond their Primary territory — providing overflow capacity when Primary territory technicians are fully booked. Secondary members are used as fallback when no Primary member is available and typically have slightly lower scheduling preference.
🎯 Key Points
Secondary Territory Member: TerritoryType = Secondary on ServiceTerritoryMember | Scheduling preference: Primary territory members preferred over Secondary | Use when: Primary territory fully booked or Primary technicians lack required skill | Multiple secondary: one technician can be Secondary in multiple territories | Travel: secondary assignments involve more travel — considered in travel optimization | Boundary: Secondary membership typically in adjacent territories | Soft boundary: Scheduling Policy Service Objective can weight Primary vs Secondary preference
🏢 XYZ Company
At XYZ Company, 50 senior technicians designated as Secondary members in adjacent territories. When Mumbai North reached 90% capacity: scheduler automatically pulled Secondary members from Mumbai South (3 technicians) and Mumbai Central (2 technicians) as overflow. This eliminated the need to hire additional Primary technicians for peak periods. Peak period coverage: 98% SLA compliance even at full Primary capacity, using Secondary members for 12% of jobs.
🎤 "Secondary Service Territory Members provide overflow capacity beyond their Primary territory — automatically used when Primary territory is fully booked, preventing SLA breaches without hiring additional technicians."
Q52
What is the Resource Absence's impact on FSL scheduling?
⚡ Direct Answer
Resource Absences prevent the FSL scheduling engine from assigning Service Appointments to a technician during the absence period — the technician is effectively removed from available capacity. For already-scheduled appointments during the absence, manual or automated reassignment is required.
🎯 Key Points
Resource Absence impact: technician invisible to scheduling engine during absence period | Already-scheduled SAs: engine does NOT automatically reassign — manual action or triggered automation (IDO) required | Dispatcher Console: absent technicians shown in gray on Gantt | Proactive management: review upcoming absences weekly and pre-reassign if needed | Automated reassignment: configure IDO trigger on Resource Absence creation to reassign same-day jobs | Capacity planning: aggregate absence data forecasts capacity gaps for hiring decisions
🏢 XYZ Company
At XYZ Company, Resource Absence automation: when Resource Absence created for same day → Flow triggered → IDO ran for affected territory → all absent technician's remaining SAs reassigned to available technicians → manager notified via Chatter. Future absences: weekly capacity report flagged days with >20% technician absent → proactive overflow scheduling from Secondary territory members. Customer impact: zero SLA breaches attributable to technician absences in first year.
🎤 "Resource Absences remove technicians from scheduling engine availability — requiring manual or Flow-triggered IDO to reassign already-scheduled appointments during the absence period."
Q53
What is the Service Report in FSL?
⚡ Direct Answer
The Service Report in FSL is a PDF or digital document generated after a Work Order is completed — capturing job details, work performed, parts used, customer signature, and technician notes. It serves as the official record of service delivery, sent to the customer and stored on the Work Order.
🎯 Key Points
Service Report template: Visualforce or Lightning page template | Auto-generation: trigger on Work Order status = Completed | Content: Work Order details, Work Order Line Items completed, parts used, technician notes, before/after photos, customer signature | Storage: ContentDocument linked to Work Order | Delivery: auto-emailed to customer on completion | Custom templates: different templates per Work Type (PM report vs emergency repair report) | Mobile: technician generates service report from FSL Mobile before leaving site
🏢 XYZ Company
At XYZ Company, Service Reports auto-generated on Work Order completion. Template included: customer details, equipment serviced (Asset), all 5 work order line items with completion status, parts replaced (list), technician name and certification, before/after photos, and customer signature captured on FSL Mobile. Auto-email to customer within 5 minutes of completion. Customer survey: 92% rated service report quality as Excellent. Zero paper-based service records.
🎤 "Service Reports are auto-generated PDF documents on Work Order completion — capturing job details, parts used, photos, and customer signature, auto-emailed to customers and stored on the Work Order."
Q54
What are Entitlements in FSL context?
⚡ Direct Answer
Entitlements in FSL (from Service Cloud) define what level of service a customer is contractually entitled to — response times, number of service calls, specific technicians. Entitlements on the Case that generates a Work Order can automatically set the Service Appointment's Priority and DueDate based on the customer's service level agreement.
🎯 Key Points
Entitlement: Service Cloud object defining contracted service level | Fields: SlaType (response time), StartDate, EndDate, RemainingAmount (service calls left) | Connection to FSL: Case Entitlement → Work Order → Service Appointment Priority and DueDate automatically set | SLA: if customer has 4-hour SLA entitlement → SA DueDate = Case CreatedDate + 4 hours | Milestone: Entitlement Milestones track response and resolution time compliance | Contract Service Level: different customers get different SLA (Gold = 4 hours, Silver = 8 hours, Bronze = 24 hours)
🏢 XYZ Company
At XYZ Company, Entitlement tiers: Gold (4-hour response, $50K+ annual contract), Silver (8-hour response), Bronze (24-hour response). When Case created: Entitlement automatically applied → Work Order created with Priority set by entitlement tier → SA DueDate calculated from entitlement SLA. Gold customer SA: Priority Critical, DueDate 4 hours. Bronze customer SA: Priority Low, DueDate 24 hours. Scheduling engine prioritized Gold SAs automatically. Gold SLA compliance: 98%.
🎤 "Entitlements in FSL define contractual service levels that automatically set Service Appointment Priority and DueDate — ensuring high-value customers receive faster response based on their SLA tier."
Q55
What is the FSL Knowledge Integration?
⚡ Direct Answer
FSL integrates with Salesforce Knowledge to surface relevant Knowledge articles on the FSL Mobile App — giving field technicians access to troubleshooting guides, installation manuals, safety procedures, and product documentation while on site. Articles are linked to Work Types or Assets for contextual delivery.
🎯 Key Points
Knowledge integration: Salesforce Knowledge articles accessible from FSL Mobile App | Contextual articles: Work Type and Asset linked to Knowledge articles | Technician workflow: open FSL Mobile → Service Appointment → Knowledge tab → relevant articles for this job type/asset | Search: technician can search Knowledge from mobile | Offline: articles can be pre-downloaded for offline access | Content types: troubleshooting guides, installation manuals, safety procedures, wiring diagrams | Benefit: reduces calls to supervisor, improves first-time fix rate
🏢 XYZ Company
At XYZ Company, Knowledge articles linked by Work Type: Preventive Maintenance (5 standard articles: inspection checklist, lubrication guide, filter replacement guide, test procedures, documentation requirements). When technician opened PM Service Appointment on FSL Mobile: Knowledge tab showed all 5 articles automatically. First-time fix rate improved 18% — technicians resolved issues on-site rather than calling for technical support. Supervisor calls from field: reduced 65%.
🎤 "FSL Knowledge Integration surfaces relevant troubleshooting guides and manuals on FSL Mobile App — linked by Work Type and Asset so technicians have contextual documentation available offline on site."
Q56
What is Parts Management in FSL?
⚡ Direct Answer
Parts Management in FSL tracks the parts and products required for field service jobs and the inventory in service vehicles and warehouses. Technicians can request parts from their van stock or from a warehouse, record parts used on a Work Order, and initiate transfers between locations.
🎯 Key Points
Parts Management objects: Product (part), ProductItem (inventory at location), ProductRequest (request parts), ProductTransfer (move parts between locations), ProductConsumed (parts used on Work Order) | van inventory: ProductItem records at Vehicle Location | Warehouse: ProductItem records at Warehouse Location | Low stock alert: Flows alert when van stock drops below threshold | Integration: ERP system for purchase orders and replenishment | Mobile: technicians record parts used directly from FSL Mobile
🏢 XYZ Company
At XYZ Company, Parts Management: 250 service vans each had van inventory (ProductItem records per van Location). When technician used a part: recorded ProductConsumed on Work Order from FSL Mobile. Van stock automatically decremented. When van stock hit reorder threshold: Flow created ProductRequest → warehouse fulfilled → ProductTransfer to van at next depot visit. Parts availability dashboard: 94% first-time fix parts availability (vs 78% before FSL parts management).
🎤 "Parts Management in FSL tracks inventory at van and warehouse locations — technicians record parts consumed on Work Orders from mobile, triggering automatic reorder requests when van stock reaches threshold."
Q57
What are Time Sheets in FSL?
⚡ Direct Answer
Time Sheets in FSL capture the actual time field technicians worked — by day, week, or job. Technicians complete time sheets on FSL Mobile App, which are then reviewed and approved by managers. Time Sheet data feeds into payroll integration and actual vs estimated job duration analysis.
🎯 Key Points
TimeSheet object: linked to Service Resource | TimeSheetEntry: individual time entries (date, start time, end time, Work Order, type) | Types: Regular, Overtime, Travel, Break | Approval: TimeSheet submitted by technician → reviewed by manager → approved | Mobile: technicians complete time entries from FSL Mobile App | Integration: approved TimeSheet data exported to payroll system | Analytics: actual vs estimated duration per Work Type, overtime trends by territory
🏢 XYZ Company
At XYZ Company, Time Sheets implemented for payroll integration with SAP HR. Technicians completed daily time entries on FSL Mobile (Regular hours, Travel hours, Overtime). Manager approval: weekly review, approve or reject with comments. SAP HR integration: approved TimeSheet data exported weekly via MuleSoft → payroll processed. Payroll accuracy: 99.7% (vs 96% manual timesheets). Overtime analysis: CRMA dashboard identified 3 territories consistently exceeding overtime budget — staffing adjusted.
🎤 "Time Sheets in FSL capture actual technician work hours by type (Regular, Overtime, Travel) — approved by managers and exported to payroll systems, while enabling actual vs estimated duration analysis."
Q58
What is FSL's integration with Service Cloud?
⚡ Direct Answer
FSL is built on top of Service Cloud — tightly integrated so Cases can automatically generate Work Orders, Service Cloud contacts become the customer on field jobs, Entitlements drive SLA requirements, and Knowledge articles are accessible in the field. The integration is native — not a separate connector.
🎯 Key Points
Integration points: Case → Work Order (manual or automated via Flow/Apex), Entitlement → SA Priority and DueDate, Knowledge → FSL Mobile articles, Contact → Work Order customer, Account → Work Order account, Asset → Work Order asset | Feedback loop: Work Order completion → Case status update | Service Console: agents see Work Orders and SAs on Case record in Service Console | Omni-Channel: field service jobs can route through Omni-Channel to dispatchers
🏢 XYZ Company
At XYZ Company, Service Cloud to FSL integration: Customer calls → agent creates Case → Case Entitlement checked → Flow automatically creates Work Order from Case → scheduling engine creates SA → dispatcher reviews and dispatches → technician completes job → Work Order Completed → Case auto-closed → CSAT survey sent. Full loop from call to resolution: tracked end-to-end in one Salesforce org. Average call-to-resolution: 6.2 hours (down from 2-day average).
🎤 "FSL is natively integrated with Service Cloud — Cases automatically generate Work Orders, Entitlements drive SLA, Knowledge articles surface in the field, and the complete service lifecycle is tracked in one org."
Q59
What is the Work Order Line Item in FSL?
⚡ Direct Answer
Work Order Line Item (WOLI) represents a specific task within a Work Order — the individual steps required to complete the field service job. WOLIs can have their own duration, status, description, required skills, and Service Appointments. They enable granular tracking of job progress and can individually be linked to specific technicians.
🎯 Key Points
WOLI fields: WorkOrderId (parent), LineItemNumber, Subject, Description, Status, Duration, DurationType, StartDate, EndDate, RequiredSkills | Status: individual task status independent from Work Order | SA parent: WOLI can be the parent of a Service Appointment (for granular scheduling) | Progress: technician completes WOLIs individually on FSL Mobile | Completion: all WOLIs completed → Work Order automatically set to Completed (configurable) | Skills: WOLI can have different required skills than parent Work Order
🏢 XYZ Company
At XYZ Company, Transformer Replacement Work Order had 6 WOLIs: (1) Site Safety Setup (1 hr, Safety Officer required), (2) Power Isolation (30 min, High Voltage Certification), (3) Old Transformer Removal (2 hrs, Crane Operation), (4) New Transformer Installation (3 hrs, Electrical + Crane), (5) Power Restoration (30 min, High Voltage), (6) Testing and Documentation (1 hr, Electrical). Each WOLI had its own SA. Complex job: coordinated multiple specialists, tracked individually.
🎤 "Work Order Line Items represent individual tasks within a Work Order — each with its own status, duration, required skills, and optionally its own Service Appointment for granular scheduling of complex multi-skill jobs."
Q60
What is the FSL Permission Model for Dispatchers and Technicians?
⚡ Direct Answer
FSL uses Salesforce Permission Sets to control access: Dispatchers receive Field Service Dispatcher permission set (Dispatcher Console, schedule/dispatch SAs, view all territory data), Technicians receive Field Service Mobile permission set (FSL Mobile App, update own SAs, limited read access). Admins receive Field Service Admin (full configuration access).
🎯 Key Points
Dispatcher permissions: view/edit SAs in their territory, Dispatcher Console access, schedule/dispatch/unschedule SAs, view all technician calendars, run optimization | Mobile Worker permissions: view own SAs, update own SA status, complete WOLIs, record parts used, capture signature, access Knowledge | Admin permissions: configure territories, skills, operating hours, scheduling policies, all object access | Data visibility: territory-based sharing — dispatcher sees only their territory's data | Custom PS: clone standard and customize as needed
🏢 XYZ Company
At XYZ Company, permission model: 5 FSL Admins (Field Service Admin), 25 Dispatchers (Field Service Dispatcher — each saw only their territory's data via territory-based sharing), 250 Technicians (Field Service Mobile — each saw only their own SAs). Additional: 10 supervisors received view-only Dispatcher access (Field Service Dispatcher without edit) for monitoring. Permission model reviewed annually — zero access-related compliance issues.
🎤 "FSL permission model uses Permission Sets: Dispatchers get scheduling/dispatch access for their territory, Mobile Workers get limited access to their own jobs, and Admins get full configuration access."
📱
Mobile App & Dispatcher Console
Q61–Q75 · FSL Mobile, offline, and dispatcher workflows
Q61
How does FSL Mobile App work offline?
⚡ Direct Answer
FSL Mobile App provides offline capability — when a technician loses internet connectivity, the app continues to function using locally cached data. The technician can view their appointments, complete work order line items, record parts used, capture signatures, and take photos. All actions sync to Salesforce automatically when connectivity is restored.
🎯 Key Points
Offline sync: data pre-downloaded to device when connected | Cached data: Service Appointments, Work Orders, WOLIs, Asset data, Knowledge articles, Customer details | Actions while offline: update SA status, complete WOLIs, record parts, capture signature, take photos | Sync: automatic sync on reconnection — merge server and local changes | Conflict resolution: server data wins for field-level conflicts | Pre-download: triggered when SA is dispatched — data downloaded before technician leaves | Limitations: cannot create new records offline (only update dispatched SAs)
🏢 XYZ Company
At XYZ Company, technicians frequently worked in basement mechanical rooms and underground facilities with zero connectivity. FSL Mobile offline capability was critical. When technician entered basement: already had all job data downloaded (dispatched 3 hours earlier via Drip Feed). Completed all 5 Work Order Line Items offline, captured customer signature offline, photographed completed work. On exit: 47 data records synced to Salesforce in 8 seconds. Zero data loss in 18 months of operation.
🎤 "FSL Mobile offline capability pre-downloads dispatched job data so technicians can complete all job activities without connectivity — syncing automatically when internet is restored."
Q62
What customizations can be made to the FSL Mobile App?
⚡ Direct Answer
FSL Mobile App can be customized via FSL Mobile Settings in Salesforce: configuring which objects and fields appear on the app, adding Quick Actions (custom buttons), enabling/disabling features (signature capture, barcode scanner), defining the appointment list view, and creating custom mobile flows for guided technician workflows.
🎯 Key Points
FSL Mobile customization options: FSL Mobile Settings (which objects and fields show), Quick Actions (custom buttons on SA and Work Order), Mobile Flow (guided step-by-step workflows on mobile), Compact Layout (which fields show in appointment list), Branding (company logo and colors), Features on/off (barcode scanner, signature capture, geofencing, photo upload) | Custom objects: add custom object tabs to mobile app | Map integration: Google Maps or Waze for navigation
🏢 XYZ Company
At XYZ Company, FSL Mobile customized: (1) Added Polymer Grade and Temperature Rating fields from Asset to mobile Work Order view (technicians needed these before starting); (2) Custom Quick Action Request Emergency Parts (creates ProductRequest with one tap); (3) Mobile Flow Safety Checklist — mandatory 5-step safety checklist before technician could mark SA as In Progress; (4) Removed barcode scanner (not used) to simplify UI. Technician feedback: 9.1/10 app usability vs industry average 6.8/10.
🎤 "FSL Mobile App is customized via Mobile Settings — configuring visible objects/fields, adding Quick Actions, creating Mobile Flows for guided workflows, and toggling features for each deployment."
Q63
What is Geofencing in FSL?
⚡ Direct Answer
Geofencing in FSL uses the technician's GPS location to automatically update Service Appointment status when the technician enters or exits a customer site geographic boundary — automatically marking En Route when leaving previous location, On Site when entering customer geofence, and triggering notifications to the customer.
🎯 Key Points
Geofencing: GPS-based location triggers | Enter customer site geofence → SA status automatically set to On Site | Exit customer site → SA completion prompt or automatic status update | Configuration: set geofence radius around customer Location record | Customer notification: auto-trigger when technician enters geofence — customer SMS/email with arrival notification | Privacy: technician GPS must be enabled | Reliability: geofence radius set large enough for GPS accuracy (typically 100-200 meters)
🏢 XYZ Company
At XYZ Company, geofencing implemented with 150-meter radius around all customer site Locations. When technician entered customer site: FSL Mobile detected geofence entry → SA status auto-updated to On Site → customer received automatic SMS Your technician has arrived. When technician exited: completion prompt shown on mobile. Customer satisfaction impact: 15-point NPS improvement from arrival notifications alone — customers appreciated transparency. Manual On Site updates: eliminated entirely.
🎤 "Geofencing automatically updates SA status when technicians enter/exit customer site boundaries — eliminating manual status updates and enabling automatic customer arrival notifications."
Q64
How does the Dispatcher Console's Gantt View work?
⚡ Direct Answer
The Dispatcher Console Gantt View is a time-based grid showing Service Resources (technicians) as rows and time as columns. Each scheduled Service Appointment appears as a colored block on the technician's row. Dispatchers can drag blocks to reschedule, click to view details, and see travel time between appointments.
🎯 Key Points
Gantt features: rows = Service Resources, columns = time (hourly or daily zoom) | Color coding: by status, priority, Work Type, or custom | Drag and drop: move SA to different technician row or different time slot | Travel time: gray blocks between appointments showing drive time | Violations: red highlighting for SLA breaches, skill mismatches | Filters: territory, date range, technician, status | Candidate list: click unscheduled SA → see eligible technicians ranked | Real-time: updates every 30 seconds as technicians update mobile status
🏢 XYZ Company
At XYZ Company, Dispatcher Console Gantt used by 25 dispatchers simultaneously. Morning workflow: filter by own territory → review red/yellow SAs → drag-drop unscheduled high priority to available slots → dispatch batch → monitor in-day changes. Gantt color coding: Red = Critical priority unscheduled (dispatcher action required), Yellow = approaching DueDate, Green = Completed, Blue = Dispatched, Gray = travel. Average daily SA scheduling time per dispatcher: 45 minutes vs 3 hours before Dispatcher Console.
🎤 "The Dispatcher Console Gantt View shows technicians as rows and time as columns — with drag-and-drop scheduling, color-coded appointment blocks, travel time visualization, and real-time status updates."
Q65
What is the Appointment List View in the Dispatcher Console?
⚡ Direct Answer
The Appointment List View in the Dispatcher Console shows all Service Appointments as a list — sortable and filterable by territory, status, priority, skill requirements, and date. It is the queue management view — dispatchers work through unscheduled appointments, use it to find appointments needing attention, and bulk-schedule multiple SAs.
🎯 Key Points
List View features: filterable columns (status, priority, territory, DueDate, required skills), sortable, bulk-select for batch operations | Unscheduled queue: filter Status = None to see all unscheduled SAs | Priority filter: sort by priority to address critical SAs first | Skill filter: find SAs requiring specific skills | Bulk actions: select multiple SAs → schedule all with one click | Integration with Gantt: click SA in list → Gantt highlights eligible technicians | Customizable: configure which columns show in list view
🏢 XYZ Company
At XYZ Company, dispatchers started each morning with Appointment List View filtered: Status = None, Priority = Critical and High, Date = Today. This showed the daily critical queue — typically 15-25 SAs needing immediate scheduling. After addressing critical queue: changed filter to Medium priority. List sorted by DueDate ascending — addressed closest to breach first. Batch scheduling: selected 10 standard preventive maintenance SAs → clicked Schedule All → engine scheduled all 10 in 30 seconds.
🎤 "The Appointment List View provides queue management — showing filtered lists of unscheduled SAs sorted by priority and DueDate, with bulk scheduling capability for high-volume appointment management."
Q66
What are Quick Actions in FSL Mobile?
⚡ Direct Answer
Quick Actions in FSL Mobile are custom buttons that enable technicians to perform common actions with one tap — such as requesting emergency parts, escalating an issue, creating a follow-up appointment, or sending a customer notification. They execute Flows, create records, or invoke Apex actions.
🎯 Key Points
Quick Actions: configured in FSL Mobile Settings | Types: Create Record (e.g., create ProductRequest), Flow (launch a guided flow), Apex (invoke custom logic) | Placement: on SA detail page, Work Order page, or Work Order Line Item | Visibility: show/hide based on conditions (e.g., only show Request Parts if status = On Site) | Common Quick Actions: Request Parts, Cannot Complete — Create Follow-Up, Escalate to Supervisor, Send Customer ETA, Take Before Photo
🏢 XYZ Company
At XYZ Company, 5 custom Quick Actions on SA detail page: (1) Request Emergency Parts — creates ProductRequest, auto-assigned to nearest warehouse; (2) Escalate to Supervisor — creates Chatter post to supervisor with SA details; (3) Cannot Complete — creates follow-up SA with reason captured; (4) Customer ETA SMS — sends automated SMS to customer with current ETA; (5) Safety Concern — creates high-priority Case for safety team. Actions used: 340 times/month average. Escalation response time: 8 minutes average.
🎤 "Quick Actions in FSL Mobile are one-tap buttons that execute Flows, create records, or invoke Apex — enabling technicians to perform common field actions (request parts, escalate, create follow-ups) without navigating menus."
Q67
How does FSL handle Cannot Complete scenarios?
⚡ Direct Answer
When a field technician cannot complete a job — due to parts unavailability, access denied, safety concern, or customer not present — they mark the SA as Cannot Complete on FSL Mobile with a reason code. This triggers automated follow-up: a new Service Appointment is created, the customer is notified, and the reason is tracked for analytics.
🎯 Key Points
Cannot Complete: SA status on FSL Mobile | Reason codes: Parts Unavailable, Customer Not Present, Access Denied, Safety Concern, Equipment Issue | Actions on Cannot Complete: create follow-up SA (automatically or by technician), notify customer, update Work Order status, alert dispatcher | Follow-up SA: pre-populated with same Work Order, scheduled for next available slot | Analytics: Cannot Complete rate by reason — identifies systemic issues (high Parts Unavailable = supply chain problem)
🏢 XYZ Company
At XYZ Company, Cannot Complete automation: technician marks SA Cannot Complete + selects reason on FSL Mobile → Flow runs → (1) follow-up SA created for next 48 hours; (2) customer SMS: We were unable to complete your service today due to [reason]. We have scheduled a follow-up for [date/time]; (3) dispatcher notified via Chatter; (4) reason recorded for analytics. Monthly analytics: 18% Cannot Complete rate (industry average 22%). Top reason: Parts Unavailable (45%) → led to van stock optimization project.
🎤 "Cannot Complete status on FSL Mobile captures job failure reason, automatically creates a follow-up SA, notifies the customer, and feeds analytics for identifying systemic supply chain and access issues."
Q68
What is Signature Capture in FSL Mobile?
⚡ Direct Answer
Signature Capture in FSL Mobile allows technicians to obtain customer's digital signature on-site directly on the mobile device — confirming job completion, service report accuracy, or acceptance of work performed. The signature is stored as an image attached to the Work Order or Service Appointment.
🎯 Key Points
Signature Capture: feature in FSL Mobile — must be enabled in Mobile Settings | Workflow: technician completes job → opens signature screen on mobile → customer signs with finger → signature saved as image | Storage: ContentDocument linked to Work Order or SA | Service Report: signature included in auto-generated service report PDF | Legal validity: electronic signatures accepted in most jurisdictions | Mandatory: configure as required step before technician can mark SA Completed | Language: signature confirmation text configurable
🏢 XYZ Company
At XYZ Company, signature capture mandatory on all Work Orders. Workflow: technician showed FSL Mobile to customer → customer reviewed completed work items → signed with finger → signature saved on Work Order. Service report PDF auto-generated with signature and emailed to customer within 5 minutes. Legal disputes: zero unresolved disputes about service completion in 18 months (vs 12 annual disputes before FSL — customer denied service was completed). Signature as proof: resolved 3 billing disputes.
🎤 "Signature Capture in FSL Mobile obtains customer digital signature on-site confirming job completion — stored as an image on the Work Order, included in service reports, and serving as legal proof of service delivery."
Q69
What is the FSL Mobile App's Barcode Scanner?
⚡ Direct Answer
The FSL Mobile App has a built-in barcode scanner that technicians use to scan asset serial numbers, part barcodes, or QR codes on site — eliminating manual data entry errors and enabling quick asset lookup, parts recording, and equipment identification in the field.
🎯 Key Points
Barcode scanner: built into FSL Mobile App — uses device camera | Asset lookup: scan asset serial number barcode → FSL Mobile shows asset record, service history, and related Knowledge articles | Parts recording: scan part barcode → ProductConsumed record auto-populated with correct Product | QR codes: customer site QR code → opens Site Location record with instructions and contacts | Enable/disable: configured in FSL Mobile Settings | Use cases: utilities, manufacturing, facilities management — every asset has barcode
🏢 XYZ Company
At XYZ Company, all 2,500 assets had barcode labels with serial numbers. Technician workflow: arrive on site → scan asset barcode → FSL Mobile opened asset record showing last 5 service visits, known issues, and relevant Knowledge articles. Previously: technician manually entered serial number (frequent typos). After barcode scanning: asset lookup errors reduced from 8% to 0.2%. Time to find correct asset record: 45 seconds → 5 seconds. Knowledge article relevance: improved because correct asset identified.
🎤 "FSL Mobile barcode scanner enables quick asset lookup and parts recording by scanning serial number or part barcodes — eliminating manual data entry errors and instantly surfacing service history and Knowledge articles."
Q70
What is the Dispatcher Console's Candidate List?
⚡ Direct Answer
The Candidate List in the Dispatcher Console shows eligible Service Resources for a selected unscheduled Service Appointment — ranked by the scheduling engine based on the Scheduling Policy. It displays each candidate's fit score, skills match, territory, availability, and estimated travel time to the job.
🎯 Key Points
Candidate List: shown when dispatcher clicks an unscheduled SA | Ranking: sorted by fit score (composite of Service Objectives) | Information per candidate: name, territory, fit score, required skills match, available time slots, travel time from last job | Fit score: higher = better match for Scheduling Policy objectives | Actions: click candidate → view their Gantt for the day, confirm assignment | Filters: filter candidates by territory, skill, availability | Override: dispatcher can assign any eligible technician regardless of ranking
🏢 XYZ Company
At XYZ Company, dispatchers used Candidate List for all Semi-automatic scheduling. Clicked unscheduled SA → Candidate List showed top 5 eligible technicians ranked by fit score. Dispatcher saw: John Smith (Score 95, 3km away, All skills match, Available 2PM), Mike Jones (Score 82, 8km away, All skills match, Available 3PM), Sarah Patel (Score 71, 12km away, 1 skill secondary, Available 2PM). Dispatcher confirmed John Smith. Decision time: 45 seconds vs 8 minutes manual research. Assignment quality: 94% optimal (within 5% of engine-optimal).
🎤 "The Candidate List shows ranked eligible technicians for an unscheduled SA — with fit scores, skill matching, travel time, and availability so dispatchers can make fast, informed scheduling decisions."
Q71
What are FSL's reporting and analytics capabilities?
⚡ Direct Answer
FSL reporting uses standard Salesforce Reports and Dashboards plus CRM Analytics (CRMA). Key FSL metrics: First Time Fix Rate (FTFR), Mean Time to Repair (MTTR), SLA Compliance Rate, Technician Utilization, Travel Time %, Cannot Complete Rate, and Customer Satisfaction Score. CRMA provides pre-built FSL dashboards.
🎯 Key Points
Key FSL KPIs: First Time Fix Rate (% jobs completed without return visit), MTTR (avg time from Case to Work Order Completion), SLA Compliance (% SAs completed within DueDate), Technician Utilization (% productive vs total available hours), Travel Time % (travel hours / total hours), Cannot Complete Rate, Customer Satisfaction (CSAT from post-service survey) | CRMA: pre-built Field Service Analytics app | Custom reports: Work Order by Work Type, SA by Territory, Skill utilization by technician
🏢 XYZ Company
At XYZ Company, weekly FSL KPI dashboard: FTFR 78% (target 85% — parts availability gap identified), MTTR 4.2 hours (target 4 hours — on target), SLA Compliance 96% (Critical 96%, High 94%, Medium 98%), Technician Utilization 73% (target 75%), Travel Time 22% (target <25%), Cannot Complete 18% (target <15%). Monthly leadership review: CRMA dashboard presented to operations director. Each KPI had drill-down to identify root cause and responsible territory.
🎤 "FSL analytics measures First Time Fix Rate, MTTR, SLA Compliance, Technician Utilization, and Travel Time % — using standard Reports and CRMA Field Service Analytics for operational and executive-level visibility."
Q72
What is the Appointment List vs the Gantt vs the Map in the Dispatcher Console?
⚡ Direct Answer
The Dispatcher Console has three views: Appointment List (queue management — all SAs as a sortable list), Gantt (schedule visualization — all technicians on a time-based chart), and Map (geographic visualization — technician and appointment locations on a map). Dispatchers switch between views based on the task at hand.
🎯 Key Points
Appointment List: use for queue management, finding unscheduled SAs, bulk scheduling, filtering by priority/territory | Gantt: use for schedule visualization, identifying gaps, drag-drop rescheduling, travel time review, day-view planning | Map: use for emergency dispatch (find nearest technician), territory visualization, geographic clustering analysis, real-time technician tracking | Together: List → find unscheduled SA → switch to Map → find nearest eligible technician → assign → switch to Gantt → verify schedule fits logically
🏢 XYZ Company
At XYZ Company, dispatcher workflow by view: Morning (Gantt) — review day schedule, identify gaps and overloads. During day (List) — process new incoming SAs from queue, bulk schedule preventive maintenance batch. Emergency (Map) — find nearest qualified technician, dispatch in under 2 minutes. End of day (Gantt) — review completed vs incomplete, escalate any Cannot Complete. All three views used daily — each optimized for its specific task.
🎤 "The three Dispatcher Console views serve different purposes: List for queue management, Gantt for schedule visualization and rescheduling, Map for geographic emergency dispatch and real-time technician tracking."
Q73
What are FSL Flows used for?
⚡ Direct Answer
FSL Flows automate field service business processes — creating Work Orders from Cases, generating Service Appointments, sending customer notifications on status changes, creating follow-up SAs on Cannot Complete, managing Resource Absences, triggering optimization runs, and escalating approaching SLA breaches.
🎯 Key Points
Common FSL Flows: Case → Work Order (on Case creation/status change), SA status → Customer SMS (on Dispatched, On Site, Completed statuses), Cannot Complete → Follow-up SA (creates next SA with reason), Resource Absence → IDO trigger (reassigns same-day jobs), SLA breach alert (X hours before DueDate → notify dispatcher), Work Order Completed → close Case + send CSAT survey, Maintenance Plan → Work Order generation
🏢 XYZ Company
At XYZ Company, 12 active Flows in FSL: (1) Case to Work Order: Case Priority = High/Critical → Work Order created + SA created + scheduling engine triggered; (2) SA Dispatched → customer SMS with ETA; (3) SA Completed → Work Order Completed → Case Closed → CSAT survey email; (4) Cannot Complete → follow-up SA + customer notification + dispatcher Chatter; (5) Approaching SLA → 1 hour before DueDate → dispatcher alert email. Flows eliminated: 5 manual dispatcher tasks daily.
🎤 "FSL Flows automate key field service processes — Case-to-Work Order creation, customer status notifications, follow-up SA creation, SLA alerts, and optimization triggers without dispatcher manual intervention."
Q74
What are the key FSL configuration steps?
⚡ Direct Answer
FSL configuration steps: (1) Install FSL managed package; (2) Assign permission sets; (3) Create Service Territories and hierarchy; (4) Define Skills; (5) Set Operating Hours; (6) Create Service Resources (link to Users); (7) Assign territory members; (8) Assign skills to technicians; (9) Define Work Types; (10) Configure Scheduling Policy; (11) Test scheduling engine; (12) Configure FSL Mobile settings; (13) Set up Service Reports.
🎯 Key Points
Configuration order matters: Skills before Service Resources (need skills to assign), Service Territories before Territory Members (need territory to assign member), Operating Hours before Service Resources (territory hours first), Work Types before Work Orders | Sandbox testing: always test scheduling engine in sandbox | Scheduling Policy: test with representative SA volume before production | Mobile settings: test on physical device | Permission sets: assign and test with each user type before go-live | Data migration: existing service records, assets, locations before go-live
🏢 XYZ Company
At XYZ Company, FSL configuration timeline: Week 1-2 (Service Territories, Operating Hours, Skills), Week 3 (Service Resources — 250 technicians, territory assignments, skills), Week 4 (Work Types, Scheduling Policy, sandbox scheduling test), Week 5 (FSL Mobile configuration, device testing, service report templates), Week 6 (UAT with 10 pilot dispatchers and 25 pilot technicians), Week 7 (Go-live — all 250 technicians, 25 dispatchers). Zero critical issues at go-live.
🎤 "FSL configuration follows a specific order — territories before members, skills before resources, work types before work orders — with sandbox testing of scheduling engine and FSL Mobile before production go-live."
Q75
What is Asset Tracking in FSL?
⚡ Direct Answer
Asset Tracking in FSL connects physical equipment (Assets) to their service history, location, current status, and upcoming maintenance. Field technicians see the complete service history of an asset they are working on via FSL Mobile. Maintenance Plans ensure assets get regular preventive maintenance. IoT integration can trigger proactive service.
🎯 Key Points
Asset Management: Asset record (SerialNumber, Location, Status, InstallDate, WarrantyEndDate) | Service History: all Work Orders linked to Asset — visible on mobile | Maintenance Plans: recurring PM schedules linked to Asset | IoT integration: Salesforce IoT or external system sends asset sensor alerts → creates Case → creates Work Order on affected Asset | Asset 360: technician sees everything about the equipment before arriving | Work Order context: technician knows known issues, previous repairs, parts replaced
🏢 XYZ Company
At XYZ Company, Asset Tracking for 2,500 industrial pumps. Technician clicked Asset on FSL Mobile: saw install date (3 years ago), last 8 service visits (dates, work done, parts replaced), current Maintenance Plan (next PM due in 6 weeks), known recurring issue (impeller wear every 18 months — last replaced 14 months ago — parts pre-ordered proactively). Diagnostic time: reduced 40%. First-time fix rate: improved from 71% to 84% (technicians arrived prepared with correct parts).
🎤 "Asset Tracking in FSL connects physical equipment to complete service history, maintenance plans, and IoT alerts — giving field technicians full asset context before arriving on site to improve first-time fix rates."
⚙️
Automation, Apex & Integration
Q76–Q100 · Apex triggers, custom scheduling, integration patterns
Q76
How do you create Work Orders automatically from Cases in FSL?
⚡ Direct Answer
Work Orders are automatically created from Cases via a Record-Triggered Flow (or Apex trigger) that fires when a Case meets specific criteria — such as Case Type = Field Service Required, or Case Status = Escalated. The Flow creates the Work Order linked to the Case, Account, Contact, and Asset, and can also create the initial Service Appointment.
🎯 Key Points
Automation: Record-Triggered Flow on Case (AfterUpdate or AfterInsert) | Trigger criteria: Case.Type = Field Service OR Case.Priority = Critical | Flow actions: create Work Order (linked to Case, Account, Contact, Asset), create Service Appointment (with DueDate from Entitlement SLA), invoke scheduling engine via Apex action | Apex alternative: Case trigger → WorkOrderService.createWorkOrder() | Entitlement: use Case Entitlement to set SA Priority and DueDate automatically
🏢 XYZ Company
At XYZ Company, Case-to-Work Order automation: Record-Triggered Flow on Case AfterUpdate, fires when Status changes to In Progress AND Type = Field Service. Flow: creates Work Order (links Case, Account, Contact, Asset), creates Service Appointment (DueDate from Case Entitlement SLA), invokes scheduling engine Apex action. Result: dispatcher sees new SA in their queue within 60 seconds of Case status change. Manual Work Order creation: eliminated. Error rate: reduced from 12% (manual) to 0.3% (automated).
🎤 "Work Orders are auto-created from Cases via Record-Triggered Flows — creating the Work Order, Service Appointment, and invoking the scheduling engine when Case criteria are met, eliminating manual field service initiation."
Q77
How do you invoke the FSL Scheduling Engine from Apex?
⚡ Direct Answer
The FSL scheduling engine is invoked from Apex using the FSL.ScheduleService class — specifically the schedule() method for scheduling a single appointment or the scheduleBulk() method for multiple appointments. The method returns a list of FSL.ScheduleResult objects indicating success or failure.
🎯 Key Points
FSL.ScheduleService.schedule(SA Id, Policy Id) — schedules one SA | FSL.ScheduleService.scheduleBulk(List SA Ids, Policy Id) — schedules multiple SAs | Returns: FSL.ScheduleResult with isSuccess, scheduledResource, scheduledStart, scheduledEnd | Error handling: check isSuccess and handle failures | Policy ID: query Scheduling Policy record | Callout: scheduling engine is external (Heroku) — called as HTTP callout — must be in async context (future, queueable) | Test: mock FSL scheduling in tests using FSL.ScheduleServiceTest
🏢 XYZ Company
At XYZ Company, custom Apex integration: when a high-priority Case was created, a future method invoked the FSL scheduling engine: FSL.ScheduleService.schedule(saId, emergencyPolicyId). The future method handled the async HTTP callout to the Heroku scheduling engine. If scheduling failed (no eligible technician): Chatter post to dispatcher with SA details for manual assignment. Scheduling engine auto-assigned 87% of emergency SAs — 13% required dispatcher intervention.
🎤 "Invoke FSL scheduling engine from Apex using FSL.ScheduleService.schedule() in an async context (future/queueable) — the external Heroku engine processes the request and returns scheduling results via FSL.ScheduleResult."
Q78
What is the FSL.ScheduleService class?
⚡ Direct Answer
FSL.ScheduleService is the primary Apex class for programmatically interacting with the FSL scheduling engine. It provides methods to schedule individual or bulk Service Appointments, get scheduling candidates, and run optimization. It is part of the FSL managed package and requires the FSL license.
🎯 Key Points
Key methods: schedule(SaId, PolicyId) — schedules one SA | scheduleBulk(SaIds, PolicyId) — schedules multiple SAs | getAppointmentCandidates(SA, Policy) — returns eligible technicians without assigning | getAppointmentSlots(SA, Policy) — returns available time slots without assigning | All methods: return FSL.ScheduleResult or List | Async: must call in async context (HTTP callout to external engine) | Error handling: always check FSL.ScheduleResult.isSuccess | License required: FSL Scheduling permission required for running user
🏢 XYZ Company
At XYZ Company, FSL.ScheduleService used in 3 integration points: (1) Case-to-SA auto-scheduling (future method); (2) Customer self-service portal — customer selects from available slots (getAppointmentSlots called from Experience Cloud page); (3) Batch job running nightly IDO (invocable action in scheduled Apex). All three tested extensively in sandbox using FSL mock service before production deployment.
🎤 "FSL.ScheduleService is the Apex class for programmatic scheduling — schedule(), scheduleBulk(), getAppointmentCandidates(), and getAppointmentSlots() methods enabling custom scheduling integrations."
Q79
How do you integrate FSL with an ERP system?
⚡ Direct Answer
FSL to ERP integration covers: Work Order parts consumption (export to ERP for billing), technician time sheets (export to payroll), maintenance plan schedules (import from ERP asset master), Work Order completion (trigger ERP invoice creation), and parts inventory sync (ERP stock levels to FSL ProductItems).
🎯 Key Points
Integration patterns: MuleSoft (most common for FSL-ERP), direct REST API, Platform Events | Data flows: FSL → ERP (completed Work Orders for billing, TimeSheet data for payroll, ProductConsumed for inventory depletion) | ERP → FSL (Asset master data, parts inventory levels, customer entitlement contracts) | Real-time: Platform Events for critical data (Work Order Completed → ERP invoice trigger) | Batch: nightly ETL for inventory sync and timesheet export | Objects: ProductConsumed, TimeSheet, WorkOrder
🏢 XYZ Company
At XYZ Company, FSL-SAP ERP integration via MuleSoft: (1) Work Order Completed → Platform Event → MuleSoft → SAP creates service invoice (real-time); (2) ProductConsumed → nightly batch → SAP inventory depletion + auto-reorder trigger; (3) TimeSheet Approved → weekly batch → SAP payroll processing; (4) SAP Asset Master → nightly batch → FSL Asset record update. MuleSoft handled all transformation. Integration time: 3 months to build and test.
🎤 "FSL-ERP integration uses MuleSoft for Work Order billing, TimeSheet payroll export, inventory sync, and Asset master import — with Platform Events for real-time invoice triggering and batch ETL for high-volume data."
Q80
What is the FSL API for mobile integration?
⚡ Direct Answer
The FSL Mobile App communicates with Salesforce via the standard Salesforce REST API and a proprietary FSL sync protocol that handles offline data management. Custom integrations with FSL Mobile can be built using the FSL Mobile SDK or by extending FSL via Lightning Web Components for enhanced mobile experiences.
🎯 Key Points
FSL Mobile communication: standard Salesforce REST API for data sync | Offline protocol: FSL proprietary sync manages offline queue and conflict resolution | Custom mobile pages: LWC components embedded in FSL Mobile via Mobile Flow or Lightning App Builder | FSL Mobile SDK: for building custom native mobile apps that integrate with FSL backend | Real-time updates: long polling or Streaming API for Dispatcher Console updates | Location API: FSL Mobile uses device GPS and reports location via Salesforce Streaming API
🏢 XYZ Company
At XYZ Company, custom FSL Mobile integration: built a custom LWC component (embedded in FSL Mobile) that connected to a third-party measurement equipment API — technician tapped button → measurement device transmitted reading via Bluetooth → LWC captured value → stored on Work Order Line Item as a custom field. No paper recording of measurements. Measurement accuracy: improved from 92% (manual transcription) to 99.8% (direct device integration). Custom LWC embedded in FSL Mobile using Mobile Flow.
🎤 "FSL Mobile integrates via Salesforce REST API for data sync with a proprietary offline protocol — custom extensions built as LWC components embedded in FSL Mobile via Mobile Flow for device and system integrations."
Q81
How do you build custom Scheduling Flows in FSL?
⚡ Direct Answer
Custom Scheduling Flows in FSL extend the standard scheduling process — before scheduling (validate capacity, check parts availability), during scheduling (custom candidate filtering), or after scheduling (notify stakeholders, update related records). They are typically Autolaunched Flows called from Apex actions or invocable methods.
🎯 Key Points
Before scheduling: Flow validates SA data completeness before invoking scheduling engine | Custom filtering: Flow pre-filters eligible technicians based on custom criteria (e.g., customer preference stored on Account) | After scheduling: Flow triggers customer notification, updates SA custom fields, logs scheduling decision | Invocable actions: call FSL.ScheduleService from Apex → trigger Flow after result | Custom scheduling UI: Screen Flow in Dispatcher Console for complex dispatch decisions | Integration: Flow calls external API to check real-time parts availability before scheduling
🏢 XYZ Company
At XYZ Company, custom scheduling Flow: before invoking FSL scheduling engine, a Flow checked if required parts were available in any van within 50km. If yes: parts reserved + SA scheduled to technician with parts. If no: SA status set to On Hold (Parts Required) + procurement triggered. Result: first-time fix rate improved from 71% to 84% (parts always available when technician was dispatched). Parts reservation Flow: 450 part reservations per month, average 12% prevented dispatches without parts.
🎤 "Custom Scheduling Flows extend FSL scheduling with pre-scheduling validation (parts availability, capacity checks) and post-scheduling actions (notifications, record updates) — integrated with the standard scheduling engine via Apex invocable actions."
Q82
What is the FSL Apex Scheduler and how is it used?
⚡ Direct Answer
The FSL Apex Scheduler refers to using Salesforce Scheduled Apex to run FSL operations at defined intervals — triggering Global Optimization overnight, running In-Day Optimization every 2 hours during business hours, generating Maintenance Plan Work Orders, sending SLA breach alerts, and purging completed record data.
🎯 Key Points
Scheduled Apex patterns for FSL: GlobalOptimizationScheduler (nightly 2AM — optimizes next 3 days), InDayOptimizationScheduler (every 2 hours 8AM-6PM — reoptimizes current day), MaintenancePlanGenerator (nightly — creates upcoming PM Work Orders), SLABreachAlertScheduler (hourly — checks approaching DueDates), ResourceAbsenceAlerter (daily — checks upcoming capacity gaps) | Implementation: Schedulable interface + CronTrigger | Queue: up to 100 scheduled Apex jobs
🏢 XYZ Company
At XYZ Company, scheduled Apex jobs in FSL: (1) GlobalOptimizationScheduler — runs 2AM daily, optimizes next 3 days for all territories (5 territories × 200 SAs each = 1,000 SA optimization in 4 minutes); (2) InDayOptimizationScheduler — runs every 2 hours 8AM-6PM, reoptimizes remaining day appointments; (3) SLABreachAlertScheduler — runs hourly, queries SAs within 2 hours of DueDate not yet Dispatched → sends Chatter alert to dispatcher and manager. Zero missed SLA breaches due to un-dispatched SAs.
🎤 "FSL Scheduled Apex automates key operations — nightly Global Optimization, periodic In-Day Optimization, SLA breach alerting, and Maintenance Plan Work Order generation — without manual dispatcher triggers."
Q83
How does FSL integrate with IoT for proactive field service?
⚡ Direct Answer
FSL IoT integration connects sensor data from field equipment to Salesforce — when an asset's sensor detects an anomaly (temperature spike, vibration threshold exceeded, pressure drop), it triggers an automatic Case and Work Order creation in FSL, dispatching a technician before the equipment fails.
🎯 Key Points
IoT integration patterns: Salesforce IoT Cloud (native), AWS IoT via Platform Events, Azure IoT Hub via MuleSoft | Flow: Sensor alert → IoT platform → Platform Event to Salesforce → Flow creates Case + Work Order + SA → scheduling engine dispatches technician | Threshold: IoT platform filters noise — only significant anomalies create Cases | Asset linking: IoT device ID maps to FSL Asset record for context | Predictive: ML models on IoT data predict failure before threshold — proactive dispatch 24-48 hours ahead
🏢 XYZ Company
At XYZ Company, IoT integration with Siemens SCADA system. 200 critical pumps had vibration and temperature sensors. When vibration exceeded 85% of failure threshold: SCADA sent event to MuleSoft → Platform Event to Salesforce → Flow created Case (Type: IoT Alert, Priority: High) → Work Order created → SA scheduled for next business day (not yet failed = not emergency). Result: pump failures reduced 67%. Planned maintenance cost vs emergency repair cost: 3:1 ratio savings.
🎤 "FSL IoT integration connects asset sensor data to automatic Case and Work Order creation — enabling proactive technician dispatch before equipment failure, reducing emergency repairs and unplanned downtime."
Q84
What is the ServiceMax vs FSL comparison?
⚡ Direct Answer
ServiceMax is a leading third-party Field Service Management platform (now part of Salesforce GE Digital acquisition) while FSL is Salesforce's native field service solution. FSL is the recommended choice for Salesforce-centric organizations; ServiceMax has deeper FSL features for complex manufacturing and industrial use cases.
🎯 Key Points
FSL strengths: native Salesforce integration, no separate platform, standard Salesforce DevOps, tighter Service Cloud + CRM integration, lower total cost for Salesforce-heavy orgs | ServiceMax strengths: deeper FSL-specific features, more mature FSL capabilities, better for complex IoT/connected field service, stronger manufacturing focus | Trend: Salesforce investing heavily in FSL — gap is narrowing | Decision: FSL for standard field service, ServiceMax for complex industrial with advanced requirements
🏢 XYZ Company
At XYZ Company, FSL vs ServiceMax evaluation: RFP process compared both. Decision: FSL selected because (1) already had Salesforce org (no additional platform), (2) Service Cloud Cases native integration required, (3) team had existing Salesforce developer expertise (no new platform to learn), (4) FSL covered 95% of requirements, (5) 40% lower total cost of ownership. ServiceMax would have been chosen if they had 500+ technicians with complex multi-system IoT integration.
🎤 "FSL is recommended for Salesforce-centric organizations needing native integration; ServiceMax is preferred for complex industrial field service with advanced requirements — the gap is narrowing as Salesforce invests in FSL."
Q85
How do you handle emergency scheduling in FSL using Apex?
⚡ Direct Answer
Emergency scheduling in Apex: set SA Priority to Critical, invoke FSL.ScheduleService.schedule() with Emergency Scheduling Policy in an async context, handle the result (assign if successful, alert dispatcher if no candidate found), and auto-dispatch the assigned SA immediately.
🎯 Key Points
Emergency scheduling Apex pattern: (1) Create SA with Priority=Critical, EarliestStartTime=Now, DueDate=Now+4hours; (2) In @future method: FSL.ScheduleService.schedule(saId, emergencyPolicyId); (3) Check result.isSuccess; (4) If true: update SA.Status=Dispatched; (5) If false: Chatter post to dispatcher emergency queue; | FSL.ScheduleService.schedule is async — cannot be called from triggers directly | Emergency Policy: Work Rules only Match Skills + Territory, Service Objective: Minimize Travel 100%
🏢 XYZ Company
At XYZ Company, emergency scheduling Apex: Case with Priority=Critical → Apex trigger → createEmergencySAAndSchedule() @future method → creates SA with 4-hour DueDate → invokes scheduling engine with EmergencyPolicy → if scheduled: auto-dispatches immediately → if not scheduled: creates Chatter post in Emergency Dispatcher queue with SA details. Average emergency dispatch time: 6 minutes (automated path) vs 22 minutes (manual path). Automated path: 89% of emergencies.
🎤 "Emergency Apex scheduling creates a Critical Priority SA, invokes the scheduling engine asynchronously with the Emergency Policy, and auto-dispatches on success — falling back to dispatcher alert if no candidate is found."
Q86
What are FSL custom Lightning Web Components used for?
⚡ Direct Answer
Custom LWC in FSL extends both the Dispatcher Console and FSL Mobile App — adding firm-specific visualizations (custom Gantt enhancements, KPI cards), data entry forms (measurement capture), integrations (third-party device data), or guided processes (custom checklists) that go beyond what standard FSL provides.
🎯 Key Points
Dispatcher Console LWC: add custom panels, maps overlays, KPI dashboards | FSL Mobile LWC: embed in Mobile Flow for guided technician workflows, device integrations, custom data capture | Record page LWC: Work Order custom components (asset history timeline, parts availability check) | Wire adapters: use @wire with FSL Apex controllers to fetch FSL data | Mobile considerations: LWC embedded in mobile must be lightweight, offline-tolerant | FSL Mobile Flow: primary mechanism to embed LWC in FSL Mobile
🏢 XYZ Company
At XYZ Company, custom LWC components built for FSL: (1) Dispatcher Console KPI Panel — real-time territory KPIs (utilization %, SLA compliance %, cannot complete rate) updated every 5 minutes; (2) FSL Mobile Measurement Capture — LWC for direct equipment reading capture (pressure, temperature) via embedded in Mobile Flow; (3) Work Order Asset Timeline — shows asset service history as visual timeline on Work Order record page. Custom LWC reduced dispatcher decision time 35% (KPI Panel) and eliminated measurement transcription errors (Measurement LWC).
🎤 "Custom LWC in FSL extends the Dispatcher Console with custom panels and KPI dashboards, and enhances FSL Mobile with device integrations and guided data capture — embedded via Mobile Flow for the field technician experience."
Q87
How do you implement SLA tracking in FSL?
⚡ Direct Answer
SLA tracking in FSL uses the DueDate field on Service Appointment — set automatically from Case Entitlement when Work Order is created. Flows monitor approaching DueDates and alert dispatchers. Reports track historical SLA compliance. CRMA dashboards show real-time SLA status by territory, priority, and technician.
🎯 Key Points
SLA setup: Entitlement on Case → DueDate auto-calculated on SA (DueDate = Case CreatedDate + Entitlement Response Time) | Monitoring Flow: scheduled hourly, queries SAs where DueDate < NOW+2hours AND Status != Completed → sends Chatter alert | Breach tracking: custom field on SA (SLABreached__c) set by Flow when SA Completed after DueDate | Reporting: SLA Compliance by Territory, Priority, Technician, Work Type | CRMA: real-time SLA dashboard with drill-down | Escalation: 2 hours before DueDate → Dispatcher notified; at DueDate → Dispatcher Manager notified
🏢 XYZ Company
At XYZ Company, SLA implementation: (1) Entitlements on all customer Accounts (Gold 4hr, Silver 8hr, Bronze 24hr); (2) Case creation → Entitlement applied → SA DueDate calculated; (3) Hourly Flow: SAs within 2 hours of breach → Chatter to dispatcher; (4) SLABreached__c set on SA completion if late; (5) CRMA dashboard: live SLA heat map by territory. Weekly SLA report to leadership. Pre-FSL: 71% compliance (manual tracking). Post-FSL: 96% compliance. Revenue impact: SLA penalty clauses triggered for only 1.2% of jobs vs previous 11%.
🎤 "FSL SLA tracking uses DueDates from Entitlements, Flow-based alerts 2 hours before breach, custom breach tracking fields, and CRMA dashboards — improving SLA compliance from manual estimates to measurable tracked KPIs."
Q88
What are the FSL Apex test best practices?
⚡ Direct Answer
FSL Apex testing requires creating specific FSL test data — Service Territory, Operating Hours, Work Type, Service Resource (linked to User), Service Territory Member, and Service Appointment. Mock the external scheduling engine calls to avoid real callouts. Use FSL.ScheduleServiceTest for mocking the scheduling engine.
🎯 Key Points
FSL test data setup: OperatingHours → ServiceTerritory → WorkType → ServiceResource (linked to test User) → ServiceTerritoryMember → WorkOrder → ServiceAppointment | Scheduling engine mock: use FSL.ScheduleServiceTest.setScheduleCalloutMockResponse() or stub with mock framework | Governor limits: FSL triggers may consume some DML — plan accordingly | Apex test coverage: all custom triggers and Apex on FSL objects must have 75%+ coverage | Callout mock: scheduling engine is external callout — must use mock in tests | Test isolation: create all FSL records in test setup
🏢 XYZ Company
At XYZ Company, FSL test strategy: FSLTestDataFactory.createFullFSLSetup() created: OperatingHours, ServiceTerritory, WorkType, TestUser + ServiceResource + ServiceTerritoryMember, WorkOrder, ServiceAppointment. All in one factory method called in testSetup. Scheduling engine: mocked using HttpCalloutMock — no real engine calls in tests. Test coverage: 89% across all custom FSL Apex. FSL upgrade regression: 45 FSL-specific tests ran in 3 minutes — identified compatibility issues before production.
🎤 "FSL Apex testing requires a complete FSL test data factory (Territory, Operating Hours, Resources, Members) and mocked scheduling engine callouts — with FSL.ScheduleServiceTest for scheduling-specific test scenarios."
Q89
How does FSL handle large data volumes?
⚡ Direct Answer
FSL large data volume strategies: selective SOQL queries on SA and Work Order (always include indexed fields like ServiceTerritoryId, Status, SchedStartTime), batch Apex for bulk SA processing, platform Events for high-volume IoT triggers, async scheduling engine calls, and CRMA for reporting instead of SOQL-heavy reports.
🎯 Key Points
Indexed fields on SA: ServiceTerritoryId, Status, SchedStartTime, DueDate — always include in WHERE clause | Batch Apex: process 1,000+ SAs in batches (Maintenance Plan generation, bulk status updates) | Platform Events: high-volume IoT events — don't create Cases directly, use Platform Events + triggered Flows | Async scheduling: never call FSL.ScheduleService from synchronous context | CRMA: 1M+ SA records — use CRMA for all analytics, not SOQL reports | Archiving: archive Completed SAs older than 2 years to custom archive object
🏢 XYZ Company
At XYZ Company (1,200 technicians, 15,000 SAs/month), LDV strategies: (1) All SOQL on SA always filtered by ServiceTerritoryId (indexed) — query time reduced 90%; (2) Maintenance Plan Work Order generation: batch Apex in 50-record chunks; (3) IoT alerts: Platform Events → trigger Flows (handles 1,000 events/minute vs 100 DML direct); (4) All FSL reports: CRMA — no standard reports on SA (too slow at volume); (5) Monthly archive: Completed SAs older than 18 months archived. System performance maintained at scale.
🎤 "FSL LDV management requires indexed SOQL queries (always filter by ServiceTerritoryId), batch Apex for bulk operations, Platform Events for IoT, async scheduling calls, and CRMA for aggregate reporting."
Q90
What is FSL's integration with Experience Cloud?
⚡ Direct Answer
FSL + Experience Cloud enables customer self-service portals where customers can: book field service appointments from available time slots, track technician ETA in real time, view service history, and submit service requests. The portal connects to FSL via Apex controllers calling FSL.ScheduleService.getAppointmentSlots().
🎯 Key Points
Self-service portal: Experience Cloud site | Customer appointment booking: getAppointmentSlots() returns available windows → customer selects → SA created | Real-time tracking: SA status and technician GPS location displayed on portal | Service history: customer sees their past Work Orders and service reports | Service request submission: customer creates Case → auto-converted to Work Order + SA | Security: customer sees only their own data (sharing rules) | Mobile-responsive: portal accessible on customer phone
🏢 XYZ Company
At XYZ Company, self-service FSL portal on Experience Cloud: customers logged in → clicked Schedule Service → saw 5 available time windows for next 3 days (FSL.ScheduleService.getAppointmentSlots) → selected preferred slot → SA created + confirmation email sent. Real-time tracking on day of service: portal showed technician location on map and ETA. Customer adoption: 35% of non-emergency SAs self-booked via portal within 6 months. Dispatcher inbound calls: reduced 40%.
🎤 "FSL Experience Cloud portals enable customer self-service appointment booking via getAppointmentSlots(), real-time technician tracking, and service history — reducing dispatcher call volume by 40%."
Q91
How do you automate Preventive Maintenance using Maintenance Plans?
⚡ Direct Answer
Preventive Maintenance automation: create Maintenance Plan linked to Asset with frequency (monthly, quarterly, annually), GenerationTimeframe (how many future WOs to create ahead), and Work Type (with standard tasks). FSL automatically generates Work Orders based on the plan — triggered when previous PM Work Order is completed.
🎯 Key Points
Configuration: Maintenance Plan → set Frequency (Every 3 Months), FrequencyType (Months), GenerationTimeframe (2), WorkType (Preventive Maintenance), Asset | Trigger: Maintenance Work Order Completion → FSL generates next Work Order | Generation: controlled by GenerationTimeframe — creates that many future Work Orders ahead | Scheduling: generated Work Orders can be auto-scheduled via Scheduling Policy | Apex trigger: custom logic can modify generated Work Orders before scheduling | Compliance: PM completion rate reported for regulatory compliance
🏢 XYZ Company
At XYZ Company, PM automation for 2,500 assets: each asset had Maintenance Plan (3-month frequency, 2 WOs generated ahead). When PM for Asset XYZ-001 completed in January: FSL automatically generated WOs for April and July. Dispatcher saw April WO in queue → scheduled to regular technician. July WO: visible in advance planning. PM compliance rate: 99% (from 67% before FSL — previously tracked manually in spreadsheet). Annual PM completion: 10,000 PM jobs fully automated.
🎤 "Maintenance Plan automation generates recurring Work Orders at configured frequency — triggered by previous PM completion, ensuring preventive maintenance never falls through the cracks."
Q92
What is FSL's reporting on Technician Utilization?
⚡ Direct Answer
Technician Utilization in FSL measures the percentage of available working hours spent on productive activities (travel + on-site work) vs total available hours. Calculated from Time Sheets (actual hours) or Service Appointment data (scheduled hours). CRMA provides utilization dashboards by technician, territory, and time period.
🎯 Key Points
Utilization calculation: Productive Hours (travel + on-site) / Available Hours (Operating Hours) | Data source: Time Sheets (actual) or SA scheduled times (planned) | Categories: On-Site time, Travel time, Admin time, Idle time | Target: 70-80% utilization (below = underutilized, above = risk of burnout/quality issues) | CRMA dashboard: utilization by technician, territory, day of week, Work Type | Action: rebalance territory assignments if persistent imbalance
🏢 XYZ Company
At XYZ Company, Technician Utilization dashboard in CRMA: Territory average 73% (target 75%). Breakdown: On-Site 45%, Travel 22%, Admin 6%. By technician: range 58-89%. Outliers: 3 technicians consistently at 89% (overloaded — SLA breach risk), 4 technicians at 58% (underutilized — territory imbalance). Action taken: rebalanced territory member assignments — pulled 2 technicians from low-utilization zone to add as Secondary in high-utilization zone. 3 months later: range narrowed to 68-81%.
🎤 "FSL Technician Utilization measures productive time vs available hours — with CRMA dashboards identifying overloaded and underutilized technicians for territory rebalancing and capacity optimization."
Q93
What is the difference between FSL Scheduling and Service Cloud Omni-Channel?
⚡ Direct Answer
FSL Scheduling assigns field service jobs to field technicians based on skills, territory, and availability via the optimization engine. Omni-Channel routes digital work items (cases, chats, emails) to contact center agents based on skill, capacity, and availability. They are separate systems serving different channels — FSL for field, Omni-Channel for digital.
🎯 Key Points
FSL Scheduling: assigns Service Appointments to field technicians | Omni-Channel: routes Cases, Chats, Emails to contact center agents | Key difference: FSL considers travel time and geographic scheduling; Omni-Channel does not | Both: skill-based routing, capacity management | Combined: Case created → Omni-Channel routes to agent → agent creates Work Order → FSL schedules technician → field job completed → Case closed | Different routing algorithms: FSL optimization engine vs Omni-Channel routing rules
🏢 XYZ Company
At XYZ Company, both FSL and Omni-Channel in same org. Omni-Channel: customer service calls and emails routed to 45 agents by skill (warranty, billing, technical). FSL: field service Work Orders routed to 250 technicians by skill and territory. Integration: when agent (Omni-Channel) assessed repair needed → created Work Order → FSL scheduled field technician. Two separate routing engines, seamlessly integrated. Agent to technician handoff: average 8 minutes.
🎤 "FSL Scheduling is for field technicians (geographic, skill, travel-time based); Omni-Channel is for digital/contact center agents (capacity and skill based) — both exist in Service Cloud but serve different workforce channels."
Q94
What are the key FSL KPIs and how are they measured?
⚡ Direct Answer
Key FSL KPIs: First Time Fix Rate (FTFR — % jobs requiring only one visit), Mean Time to Repair (MTTR — average time from job creation to completion), SLA Compliance Rate (% SAs completed within DueDate), Technician Utilization Rate (productive time / available time), and Customer Satisfaction Score (CSAT from post-service survey).
🎯 Key Points
FTFR: Work Orders with only 1 SA and status=Completed / Total Work Orders | MTTR: AVG(SA Completed DateTime - Work Order Created DateTime) | SLA Compliance: SA where Completed Date <= DueDate / Total SAs | Utilization: SUM(SA Duration) / SUM(Operating Hours) per technician | CSAT: survey sent post-completion, linked to Work Order | Cannot Complete Rate: SAs with Status=Cannot Complete / Total SAs | Travel Time %: SUM(travel time blocks) / SUM(total shift time) | CRMA: all KPIs in pre-built Field Service Analytics dashboard
🏢 XYZ Company
At XYZ Company, monthly KPI targets and actuals: FTFR target 85%, actual 84% (slightly below — parts availability root cause); MTTR target 4 hours, actual 4.2 hours; SLA Compliance target 95%, actual 96% (above target); Utilization target 75%, actual 73%; CSAT target 4.5/5, actual 4.7/5; Cannot Complete target <15%, actual 18% (parts — same root cause as FTFR). Root cause identified: van stock optimization project initiated. Expected impact: FTFR +8%, Cannot Complete -5%.
🎤 "Key FSL KPIs — FTFR, MTTR, SLA Compliance, Utilization, CSAT — measured from Work Order and SA data in CRMA Field Service Analytics, with root cause analysis driving operational improvement initiatives."
Q95
How does FSL handle Multi-Day and Long Duration Jobs?
⚡ Direct Answer
Multi-day and long duration jobs in FSL are handled by either: (1) creating multiple Service Appointments for the same Work Order (one per day), (2) configuring the SA duration to span multiple days, or (3) using Work Order Line Items with separate SAs for distinct phases of a long project.
🎯 Key Points
Approach 1: Multiple SAs on one Work Order — best for jobs where each day is distinct (Day 1: survey, Day 3: removal, Day 5: installation) | Approach 2: Single SA with long duration — for continuous multi-day jobs (blocking technician calendar for 3 consecutive days) | Approach 3: WOLI-based SAs — each major phase has own WOLI with own SA and skills | Scheduling: multi-day SA blocks technician calendar for full duration | Dependencies: SA2 start requires SA1 completion — configure SA dependency | Project jobs: complex multi-week jobs often use Work Order Line Items with separate SAs per phase
🏢 XYZ Company
At XYZ Company, major substation installation project: 1 Work Order, 8 WOLIs, 8 SAs over 3 weeks. SA1 Site Survey (Day 1, Electrical Engineer, 4 hrs), SA2 Foundation Work (Days 2-3, Civil team, 2-day block), SA3 Equipment Delivery (Day 5, logistics), SA4 Primary Installation (Days 6-8, 3-person crew), SA5 Wiring (Days 9-10, Electricians), SA6 Testing (Day 11, Senior Engineer), SA7 Commission (Day 12, Customer + Engineer), SA8 Documentation (Day 13, Admin). Project tracked end-to-end in FSL.
🎤 "Multi-day FSL jobs use multiple SAs on one Work Order for distinct phases, single long-duration SAs for continuous work, or WOLI-based SAs for complex projects — with SA dependencies enforcing sequential execution."
🎯
Scenarios & Best Practices
Q96–Q125 · Real-world FSL scenarios, architecture, and career
Q96
How would you architect FSL for a utility company with 1,000 field technicians?
⚡ Direct Answer
Enterprise FSL for utilities: regional Service Territory hierarchy (National → State → District → Zone), 1,000 Service Resources with skill certifications, Maintenance Plans for all assets (transformers, meters, poles), Resource Optimization for high-volume scheduling, IoT integration for proactive fault detection, and CRMA for real-time operational dashboards.
🎯 Key Points
Scale considerations: custom indexes on SA (ServiceTerritoryId, Status, SchedStartTime), Resource Optimization add-on for 1,000+ technicians, Platform Events for IoT meter alerts, batch Apex for PM Work Order generation | Territory model: 5 regions → 20 states → 200 zones | Skills: Electrical, High Voltage, Meter Reading, Transformer, Substation | Maintenance Plans: all 50,000 network assets | Dispatcher model: 200 zone dispatchers + 20 regional dispatchers + 5 national operations managers
🏢 XYZ Company
At XYZ Company (regional utility), FSL for 1,200 technicians: Service Territory hierarchy (4 circles → 12 divisions → 48 zones → 192 sub-zones). 1,200 Service Resources. 85,000 assets with Maintenance Plans. IoT: 10,000 smart meters sending telemetry to Salesforce IoT Cloud → anomaly → Platform Event → auto-Case → Work Order → FSL scheduled. Resource Optimization: nightly GO for 8,000 SAs/day. CRMA: 12 dashboards for circle, division, and zone managers. Outage response: emergency SA dispatched within 4 minutes.
🎤 "Enterprise utility FSL requires regional territory hierarchy, Resource Optimization for 1,000+ technicians, IoT integration for proactive fault detection, and CRMA operational dashboards — with batch processing for 50,000+ asset Maintenance Plans."
Q97
How do you handle FSL for a multi-tenant building service company?
⚡ Direct Answer
Multi-tenant building service FSL: Location hierarchy (Building → Floor → Unit), bundled Service Appointments for multiple units in one visit, asset-centric maintenance (each HVAC unit = Asset), recurring Maintenance Plans, and technician routes optimized for minimum elevator/floor travel within buildings.
🎯 Key Points
Location hierarchy: Building (parent) → Floor → Unit (child Locations) | Asset per unit: each AC unit, fire system, elevator = separate Asset | Bundling: all units in one building needing quarterly maintenance = Appointment Bundle (one technician visit) | Route optimization: Scheduling Policy considers floor-level sequencing within building | Work Order per unit: one Work Order per Asset, bundled into one SA | Service Report: per unit service report generated automatically
🏢 XYZ Company
At XYZ Company (facilities management), 200 commercial buildings, 15,000 maintenance assets. Quarterly maintenance: all assets in one building bundled into one 8-hour visit. Technician received bundled SA on FSL Mobile with floor-by-floor ordered work list (Floor 1 → Floor 2 → ... Floor 20). Parts: van pre-loaded with all parts for all units before visit. Building completion rate: 98% (all units serviced in one visit). Travel savings vs unbundled: 85% reduction in building-to-building travel.
🎤 "Multi-tenant building FSL uses Location hierarchy, Appointment Bundling for entire buildings, and floor-ordered Work Order Line Items — optimizing technician routing within buildings to maximize completion rates in single visits."
Q98
What are common FSL implementation mistakes?
⚡ Direct Answer
Top FSL mistakes: (1) Not defining Scheduling Policy correctly — scheduling with default policy produces poor results; (2) Skipping Operating Hours setup — scheduling engine assigns outside business hours; (3) Assigning skills without expiry tracking — expired certifications used for scheduling; (4) Not testing offline FSL Mobile — offline failures discovered after go-live; (5) No Resource Absences from HR — scheduling engine over-books absent technicians.
🎯 Key Points
Mistake 1: incomplete Scheduling Policy (only 1 Work Rule, no Service Objectives) → technicians assigned randomly | Mistake 2: no Operating Hours → engine schedules at 2AM | Mistake 3: no skill expiry dates → non-certified technicians assigned to regulated jobs | Mistake 4: no offline testing → technicians stuck at sites without connectivity | Mistake 5: no HR integration → absent technicians still receiving jobs | Mistake 6: not using Work Types → each Work Order manually configured → inconsistent durations and skills
🏢 XYZ Company
At XYZ Company, 4 costly mistakes discovered in first month: (1) No Operating Hours — 3 SAs scheduled at midnight (fixed: added Operating Hours); (2) No skill expiry dates — 2 technicians with expired High Voltage certification assigned to live electrical jobs (fixed: added expiry dates + compliance alert); (3) FSL Mobile not tested offline — first day: 15 technicians could not sync in basement sites (fixed: offline mode enabled and tested); (4) No Work Types — inconsistent durations causing scheduling gaps. Lesson: 2-week pilot with real technicians before full go-live.
🎤 "FSL implementation mistakes: missing Operating Hours (24/7 scheduling), no skill expiry tracking (compliance risk), untested offline mobile, no HR integration for absences, and missing Work Types — all preventable with proper pre-go-live testing."
Q99
How does FSL support compliance and regulatory requirements?
⚡ Direct Answer
FSL compliance: skill certifications with expiry dates (only certified technicians assigned to regulated jobs), service report auto-generation (audit trail of completed work), time stamps on all SA status changes (regulatory record), digital signature capture (proof of service), and cannot complete reason tracking (audit documentation).
🎯 Key Points
Compliance use cases: electrical safety (High Voltage certification mandatory — FSL enforces via Work Rules), gas safety (Gas Safe certification required), medical equipment (FDA-regulated service documentation), elevator maintenance (mandatory annual inspection compliance), ISO maintenance records | Audit trail: SA status timestamps + technician ID + GPS location | Document retention: service reports stored on Work Order (configurable retention period) | Regulatory reports: CRMA compliance dashboards (% assets with current certifications, inspection completion rate)
🏢 XYZ Company
At XYZ Company, regulatory compliance: (1) High Voltage Work Rule — only technicians with active HV certification assigned (no override without Safety Manager approval); (2) Service Reports auto-generated with technician certification number on every report; (3) Annual regulatory audit: queried all Completed Work Orders on transformer assets for 12 months — exported 8,400 records with service reports in 2 hours; (4) Inspector: 'Most comprehensive field service audit documentation we have reviewed.' Zero compliance findings.
🎤 "FSL supports regulatory compliance through mandatory skill certification Work Rules, timestamped audit trails, auto-generated service reports with technician certification numbers, and CRMA compliance dashboards."
Q100
What is the FSL customer self-service booking experience?
⚡ Direct Answer
FSL customer self-service booking via Experience Cloud: customer logs in → selects service type (Work Type) → FSL returns available time windows (getAppointmentSlots) → customer selects preferred window → SA created → confirmation email sent → day-of: customer receives ETA notification → post-service: CSAT survey emailed.
🎯 Key Points
Components: Experience Cloud site, Apex controller calling FSL.ScheduleService.getAppointmentSlots(), Screen Flow for booking wizard, SA creation on slot selection, confirmation email Flow, day-of status notification Flow, CSAT survey post-completion | Slots returned: configurable number of options (typically 3-5 windows over next 3-7 days) | Rescheduling: customer can reschedule via portal up to 24 hours before appointment | Cancellation: customer cancels → SA cancelled → capacity freed in FSL
🏢 XYZ Company
At XYZ Company, self-service portal launch results: Month 1 — 22% of non-emergency SAs self-booked. Month 3 — 35% self-booked. Month 6 — 48% self-booked. Customer satisfaction: self-booked customers showed NPS 12 points higher than dispatcher-booked (customers valued choosing their own time slot). Dispatcher workload: inbound scheduling calls reduced 48%. Cost per booking: self-service $0.80 vs dispatcher-assisted $4.20. Annual savings: $185,000 in dispatcher time at 48% self-service rate.
🎤 "FSL self-service booking uses getAppointmentSlots() to present available windows to customers — with Experience Cloud booking wizard, SA creation on selection, and automated confirmations."
Q101
How do you implement FSL for a telecom company?
⚡ Direct Answer
Telecom FSL: Work Orders for home installations, fault repairs, and network maintenance. Skills: Fiber Optic, Cable Installation, Network Equipment. Assets: customer CPE (router, set-top box) tracked per household. Tight customer time windows (morning/afternoon slots). High volume: 500+ technicians, 1,000+ SAs daily.
🎯 Key Points
Telecom specifics: customer time windows mandatory (EarliestStartTime/DueDate for morning/afternoon slots), Skills: Fiber, Cable, Network, Antenna | Assets: CPE Equipment per customer (router serial number) | High volume: Resource Optimization add-on for 500+ technicians | Integration: network provisioning system (BSS/OSS) → Platform Event → Work Order creation on order activation | Failed installation: Cannot Complete → auto-create follow-up + send engineer | SLA: installation within 48 hours, fault repair within 24 hours
🏢 XYZ Company
At XYZ Company (telecom ISP), FSL deployment for 650 installation technicians. BSS integration: new customer order → Platform Event → Work Order created → customer self-booked morning/afternoon slot via portal. Skill matching: Fiber installation required Fiber Certification. Asset creation: on Work Order Completion → CPE Asset created (serial number scanned via barcode) → linked to customer Account for future fault repair. Installation SLA 48hrs: 94% compliance. Fault repair SLA 24hrs: 91% compliance.
🎤 "Telecom FSL manages home installations and fault repairs with tight customer time windows, BSS/OSS integration for order-triggered Work Orders, and CPE asset creation on installation completion."
Q102
What is FSL best practice for Scheduling Policy design?
⚡ Direct Answer
Scheduling Policy best practice: start with a single Standard Policy covering 80% of jobs, add an Emergency Policy for critical jobs (speed over optimization), and a Maintenance Policy for PM batches (travel optimization priority). Test each policy with representative SA volume in sandbox before production. Review and tune monthly based on KPI data.
🎯 Key Points
Policy design principles: Emergency Policy (Work Rules: Skills + Territory only; Service Objective: Minimize Travel 100%); Standard Policy (Work Rules: Skills + Territory + Working Hours; Service Objectives: balanced — Travel 50%, Skill Match 30%, Customer Window 20%); Maintenance Policy (Work Rules: Skills + Territory; Service Objectives: Travel 70%, Workload Balance 30%) | Tuning: adjust Service Objective weights based on actual KPI data | Never: leave Service Objectives empty (engine has no optimization goal) | Review: monthly policy performance review
🏢 XYZ Company
At XYZ Company, 3 Scheduling Policies tuned over 6 months: Emergency Policy (first used: 35% scheduled within 2 hours → adjusted Minimize Travel to 100% → 68% scheduled within 2 hours); Standard Policy (first used: 18% cross-territory assignments → added Soft Boundary Service Objective → reduced to 6%); Maintenance Policy (first used: 22% travel time → increased Minimize Travel weight to 70% → reduced to 16%). Monthly policy review with KPI data drove continuous improvement.
🎤 "FSL Scheduling Policy best practice: separate Emergency (speed-focused), Standard (balanced), and Maintenance (travel-optimized) policies — tuned monthly based on actual KPI performance data."
Q103
How do you migrate from a legacy FSM tool to FSL?
⚡ Direct Answer
FSL migration from legacy FSM: (1) Map legacy data model to FSL objects (jobs → Work Orders, engineers → Service Resources, zones → Service Territories); (2) Migrate historical data (Work Orders, Assets, Locations) via Data Loader/MuleSoft; (3) Run parallel operation period (both systems 4 weeks); (4) Train dispatchers and technicians; (5) Cutover.
🎯 Key Points
Migration steps: data mapping workshop (legacy field → FSL field), historical WO migration (External IDs for deduplication), Asset migration (serial numbers → Asset records), Location geocoding (convert addresses to lat/long for FSL map), skill migration (legacy certifications → FSL Skills), Service Resource creation (link to new Salesforce User records) | Parallel operation: critical for dispatcher confidence | Training: FSL Mobile training for all technicians (1 day each) | Cutover: weekend go-live, support team on standby
🏢 XYZ Company
At XYZ Company, migration from ServicePower legacy FSM: 8-week program. Week 1-2: data mapping and FSL configuration. Week 3-4: historical data migration (18,000 Work Orders, 2,500 Assets, 250 Service Resources). Week 5-6: parallel operation (dispatchers used both systems, FSL for new jobs only). Week 7: FSL Mobile training for all 250 technicians (2 groups of 125, 1 day each). Week 8: cutover (Friday 6PM legacy decommissioned, Monday 8AM FSL live). Zero critical issues at go-live. Legacy decommissioned on schedule.
🎤 "FSL migration requires data mapping, historical data migration with External IDs, geocoding of all locations, parallel operation period for dispatcher confidence, and mobile training for all field technicians."
Q104
What are FSL Entitlement Templates?
⚡ Direct Answer
Entitlement Templates in FSL define default service level settings that are automatically applied to new Entitlements — ensuring consistent SLA tiers (Gold, Silver, Bronze) are applied to new customers without manual configuration. They speed up customer onboarding and ensure SLA accuracy.
🎯 Key Points
Entitlement Template: defines default SlaType, BusinessHours, MilestoneType | Applied: when creating new Entitlement from a contract or manually | Consistency: all Gold customers get identical SLA terms | Automation: Flow auto-creates Entitlement from Template when new customer contract is activated | SLA tiers: Gold Template (4-hour response, premium BusinessHours), Silver Template (8-hour, standard BusinessHours), Bronze Template (24-hour, standard BusinessHours) | Impact on FSL: Entitlement drives SA DueDate = creation + response time
🏢 XYZ Company
At XYZ Company, 3 Entitlement Templates: Gold (4-hour SLA, 24/7 business hours), Silver (8-hour SLA, business hours Mon-Fri 8AM-6PM), Bronze (24-hour SLA, business hours Mon-Fri). Contract activation Flow: new contract → check contract value → apply appropriate template → create Entitlement on Account. All 450 accounts correctly entitled within 2 weeks of Entitlement Template implementation. SLA accuracy: improved from 71% (manual entitlement setup) to 100% (template-driven).
🎤 "Entitlement Templates define default SLA settings applied to new customers — ensuring consistent SLA tiers across all accounts and automatically driving SA DueDate through the FSL scheduling process."
Q105
How does FSL support the Healthcare Equipment service industry?
⚡ Direct Answer
Healthcare FSL: medical device maintenance (FDA-regulated), technician certifications (FDA-approved service engineer), strict service documentation (21 CFR Part 11 compliance), planned maintenance with no deviation tolerance, and asset tracking of all medical devices with complete service history.
🎯 Key Points
Healthcare specifics: FDA regulated service → Work Rules enforce specific technician certifications | 21 CFR Part 11: service records (Interaction Summaries equivalent — service reports) must be immutable, timestamped, and auditable | Planned maintenance: Maintenance Plans with zero deviation from schedule | Preventive maintenance compliance: 100% completion required (patient safety) | Equipment quarantine: if maintenance missed → Asset Status = Quarantined (Flow) | Emergency: medical equipment failure = Critical Priority SA → 2-hour response SLA | Documentation: service report includes calibration readings, test results, technician license number
🏢 XYZ Company
At XYZ Company (medical equipment service), FSL for 150 biomedical engineers. FDA compliance: only engineers with FDA Device Certification assigned to regulated equipment (Work Rule enforced). Planned Maintenance: 2,800 medical devices with quarterly PM Maintenance Plans. Missed PM: if PM Work Order not Completed by due date → Asset Status = On Hold automatically → hospital notified → emergency PM scheduled. PM compliance: 100% (zero patient safety incidents from missed maintenance). FDA audit: complete service history for all 2,800 devices exported in 4 hours.
🎤 "Healthcare FSL enforces FDA certification Work Rules, immutable service documentation for 21 CFR compliance, zero-tolerance Maintenance Plans, and automatic quarantine for missed preventive maintenance."
Q106
What is FSL's approach to Knowledge Management?
⚡ Direct Answer
FSL Knowledge Management surfaces relevant troubleshooting guides, installation manuals, and safety procedures to field technicians via FSL Mobile — linked contextually to Work Types (job-type articles) and Assets (product-specific articles). Technicians can search Knowledge, access offline-downloaded articles, and flag articles needing updates.
🎯 Key Points
Knowledge article types: Troubleshooting Guide (symptom → diagnosis → fix), Installation Manual (step-by-step), Safety Procedure (mandatory pre-work checklist), Wiring Diagram (technical reference), Product Bulletin (known issues, fixes) | Linking: Work Type → Knowledge articles (automatically shown for that job type), Asset → Knowledge articles (product-specific) | Offline: articles pre-downloaded when SA dispatched | Mobile search: technician searches from FSL Mobile | Article feedback: technician flags outdated article → creates Knowledge review task for technical author
🏢 XYZ Company
At XYZ Company, Knowledge base: 450 Knowledge articles. Work Type linking: Preventive Maintenance linked to 5 articles (inspection checklist, lubrication guide, filter replacement guide, test procedure, documentation guide). Asset Product Category linking: pump articles shown for pump SAs, HVAC articles for HVAC SAs. Impact: supervisor calls from field reduced 65% (technicians found answers in Knowledge vs calling). First-time fix rate improved 18%. Article quality: 23 articles updated in first 3 months based on technician feedback flags.
🎤 "FSL Knowledge Management contextually links articles to Work Types and Asset products — surfacing relevant guides offline on FSL Mobile to reduce supervisor calls and improve first-time fix rates."
Q107
How do you build a real-time FSL operations dashboard?
⚡ Direct Answer
Real-time FSL operations dashboard in CRMA: live SA status counts (Scheduled, Dispatched, In Progress, Completed, Cannot Complete), SLA compliance heat map by territory, technician utilization gauge by zone, emergency response time trend, and daily completion rate vs target — refreshing every 5-15 minutes.
🎯 Key Points
CRMA dataset: ServiceAppointment with refresh schedule (15 min for near real-time) | Key charts: SA status donut (by status), SLA compliance bar (by territory), Utilization gauge (by technician group), Response time trend (emergency SA creation to dispatch), Completion rate vs target | Live updates: Salesforce Reports refresh on page refresh, CRMA scheduled dataset refresh | Filters: territory, date, priority, technician | Mobile: CRMA mobile app for manager visibility on the go
🏢 XYZ Company
At XYZ Company, real-time FSL dashboard in CRMA. Operations Director morning routine: opened dashboard at 8AM → saw 47 SAs Scheduled (not yet dispatched, checked dispatchers taking action), 12 SAs approaching DueDate (red in SLA heat map — called zone dispatcher), 3 technicians at 0% utilization (late start — supervisor alerted). Dashboard on large screen in operations center: all dispatchers could see territory health. Weekly KPI review: same dashboard used in leadership meeting. Before CRMA: daily operations review based on previous-day data. After CRMA: real-time intervention.
🎤 "Real-time FSL CRMA dashboard shows live SA status, SLA compliance heat maps, technician utilization, and emergency response times — enabling real-time operations management rather than next-day reporting."
Q108
What are FSL governor limits and performance considerations?
⚡ Direct Answer
FSL governor limits: scheduling engine calls are HTTP callouts (must be async — future/queueable), each SA scheduling = 1 callout (150 callout limit per transaction), FSL triggers consume DML/SOQL rows (count toward org limits), bulk scheduling uses scheduleBulk() to minimize callouts, and high-volume orgs need indexed queries on SA.
🎯 Key Points
Callout limits: FSL.ScheduleService uses HTTP callout to Heroku — must be async | Bulk scheduling: scheduleBulk(List saIds, policyId) = 1 callout for up to 25 SAs | SOQL limits: FSL triggers add SOQL queries — monitor with Developer Console | DML limits: FSL managed package triggers consume DML rows | Performance: always filter SA SOQL by ServiceTerritoryId (indexed) | Optimization: Global Optimization is async (background job) — not subject to transaction limits | Testing: test with production-representative data volumes in sandbox
🏢 XYZ Company
At XYZ Company, performance issues identified in first month: (1) Batch scheduling 200 SAs: hit callout limits (150 per transaction) → fixed: batch size reduced to 25 SAs per transaction with chained queueable; (2) Dispatcher Console slow loading: SA SOQL without territory filter → added ServiceTerritoryId to all SA queries → 80% faster; (3) FSL triggers: consuming 45 SOQL rows per SA save → monitored via Apex CPU time limits. Performance baseline established: all FSL Apex under 50% CPU limit.
🎤 "FSL performance requires async scheduling callouts (never synchronous), bulk scheduling via scheduleBulk() for batches, indexed SA queries (always filter by ServiceTerritoryId), and monitoring FSL trigger SOQL consumption."
Q109
How do you implement a VIP Service Level in FSL?
⚡ Direct Answer
VIP Service Level in FSL: Gold Entitlement (2-hour SLA), Preferred Resource configured on customer Account (same technician always assigned), dedicated Service Territory zone for VIP customers, highest Priority on all SAs, automatic dispatcher notification on VIP SA creation, and dedicated on-call technician for after-hours emergencies.
🎯 Key Points
VIP implementation: Gold Entitlement → SA DueDate = 2 hours | Preferred Resource: Account.FSL_Preferred_Technician__c → auto-populate SA Preferred Resource on creation | Dedicated zone: VIP Service Territory zone with 5 dedicated senior technicians | Priority: all VIP SAs = Critical | Dispatcher alert: Flow on VIP SA creation → immediate Chatter alert to VIP dispatcher | On-call: VIP on-call technician Resource Absence = never (24/7 availability) | CSAT: separate VIP CSAT survey with dedicated tracking
🏢 XYZ Company
At XYZ Company, VIP Service Level for top 25 accounts (each >$500K annual revenue): Gold Entitlement (2-hour SLA), Preferred Technician assigned per account, all SAs Priority=Critical, dedicated VIP dispatcher (Sarah Jones — only managed VIP accounts). VIP SLA compliance: 99.2% (vs 96% standard). VIP CSAT: 4.9/5 (vs 4.7/5 standard). One VIP account renewal explicitly cited FSL service quality: We renewed because your field service response times and technician consistency are unmatched.
🎤 "VIP Service Level in FSL combines 2-hour SLA Entitlements, Preferred Resource assignment, dedicated Service Territory zone, Critical Priority, and dedicated dispatchers — achieving near-perfect SLA compliance for top accounts."
Q110
What are the FSL certifications and career path?
⚡ Direct Answer
FSL certifications: Salesforce Field Service Consultant certification (FSL-specific exam), plus underlying Salesforce Admin and Service Cloud Consultant certifications. FSL expertise commands 15-25% premium over standard Salesforce consultants. Growing demand as more enterprises deploy FSL.
🎯 Key Points
FSL Consultant certification: FSL-specific knowledge exam | Prerequisites: Admin + Service Cloud Consultant recommended | Trailhead: Field Service Specialist Superbadge + Field Service Trailmix | Exam topics: FSL data model, scheduling, optimization, mobile, integration | Career path: Service Cloud Consultant → FSL Consultant → FSL Architect | Salary premium: FSL is niche — fewer certified consultants = higher compensation | Interview: hands-on configuration test common (configure Scheduling Policy, Work Type, dispatch SA)
🏢 XYZ Company
At XYZ Company, FSL consultant hiring: Field Service Consultant certification required for senior roles. Interview included live sandbox test: (1) create Service Territory + Operating Hours + Service Resource + Skill; (2) configure Scheduling Policy with specific Work Rules and Objectives; (3) create Work Order and schedule via Dispatcher Console. Pass rate: 55% of experienced Salesforce professionals (many know CRM but not FSL depth). Talent shortage: 3-month search for senior FSL consultant vs 3 weeks for standard Salesforce.
🎤 "FSL Consultant certification plus Service Cloud Consultant is the standard FSL career credential — a premium specialty with 15-25% salary premium due to the specialized talent shortage."
Q111
How does FSL handle the Cannot Complete workflow?
⚡ Direct Answer
Cannot Complete workflow: technician selects Cannot Complete on FSL Mobile with a reason code → Flow creates follow-up SA → updates Work Order status → notifies customer with reschedule information → alerts dispatcher → records reason for analytics — all automatically within 60 seconds of the technician action.
🎯 Key Points
Cannot Complete Flow: SA Status = Cannot Complete AND Reason Code selected → (1) Create follow-up SA (same Work Order, scheduled next 24-48 hours); (2) Update Work Order Status = On Hold; (3) Customer notification SMS/email with reschedule date; (4) Dispatcher Chatter alert with reason and new SA link; (5) Log reason on custom field for analytics | Reason codes: Parts Unavailable, Customer Not Present, Access Denied, Safety Concern, Equipment Issue | Cannot Complete analytics: monthly report drives root cause initiatives
🏢 XYZ Company
At XYZ Company, Cannot Complete automation: technician selects Cannot Complete (Reason: Parts Unavailable) on FSL Mobile → within 60 seconds: follow-up SA created (next business day 9AM), customer SMS sent, dispatcher Chatter alert created, ProductRequest generated for missing parts. Analytics revealed: 62% of Cannot Complete were Parts Unavailable → triggered van stock optimization project → van stock accuracy improved from 82% to 96% → Cannot Complete rate dropped from 18% to 9% in 4 months.
🎤 "Cannot Complete workflow automatically creates follow-up SAs, notifies customers, alerts dispatchers, and records reason codes — with analytics driving root cause improvements like van stock optimization."
Q112
What is FSL Resource Optimization and when is it needed?
⚡ Direct Answer
FSL Resource Optimization is the premium scheduling AI add-on needed when: technician count exceeds 100, daily SA volume exceeds 500, scheduling involves complex multi-objective optimization, or when advanced features like schedule prediction and machine learning-based assignment are required.
🎯 Key Points
When needed: 100+ technicians, 500+ SAs/day, complex objectives (multi-skill, customer windows, crew coordination), high-value SLA penalties (optimization quality matters financially) | Benefits vs standard: handles massive volumes without degradation, ML learns technician performance patterns, 5-15% improvement in optimization quality, predictive scheduling reduces last-minute changes | Cost: additional license cost — ROI justification: fuel savings + SLA compliance improvement | Setup: enable in FSL settings + configure optimization job schedule
🏢 XYZ Company
At XYZ Company, Resource Optimization ROI calculation: 1,200 technicians, 8,000 SAs/day. Standard scheduling engine at this volume: 82% optimization quality (18% suboptimal assignments). Resource Optimization: 94% quality. Impact of 12% improvement: 960 SAs/day better assigned. Per SA: 15 minutes less travel = 240 hours/day saved. At $25/hour: $6,000/day. Annual savings: $1.56M. Resource Optimization license cost: $480K/year. Net ROI: $1.08M/year. Break-even: 5 months. Decision: approved.
🎤 "Resource Optimization is justified for 100+ technicians and 500+ daily SAs — delivering 5-15% scheduling quality improvement through ML that generates ROI through fuel savings and SLA compliance at scale."
Q113
What are the top FSL interview questions for a senior FSL consultant?
⚡ Direct Answer
Top FSL senior consultant interview questions: (1) Explain Scheduling Policy Work Rules vs Service Objectives; (2) How would you handle 1,000 technician scheduling at scale; (3) What triggers Global vs In-Day Optimization; (4) How do you handle Cannot Complete with automated follow-up; (5) Explain FSL.ScheduleService Apex usage; (6) Design Maintenance Plan for 10,000 assets; (7) How do FSL and Service Cloud integrate; (8) FSL Mobile offline strategy.
🎯 Key Points
Q1-2: FSL architecture and scheduling policy | Q3-4: FSL optimization and exception handling | Q5: FSL Apex development | Q6: FSL preventive maintenance | Q7: FSL-Service Cloud integration | Q8: FSL Mobile | Senior-level additions: Resource Optimization ROI, multi-territory enterprise architecture, IoT integration design, ERP integration patterns | Practical test: configure Scheduling Policy, create Work Type, dispatch SA in sandbox | Pass rate: 55% of Service Cloud consultants
🏢 XYZ Company
At XYZ Company, senior FSL consultant interview: 8 technical questions + 2 architecture case studies (design FSL for 500-technician telecom company, design FSL for FDA-regulated medical equipment). Common failure points: (1) unable to distinguish Work Rules from Service Objectives, (2) no knowledge of FSL.ScheduleService async requirement, (3) no experience with Resource Optimization. Candidates who passed: all had at least 2 live FSL implementations and Salesforce Field Service Consultant certification.
🎤 "Senior FSL interviews test Scheduling Policy design, large-scale architecture, Apex integration (FSL.ScheduleService), Maintenance Plan design, and FSL-Service Cloud integration — requiring hands-on experience from live implementations."
Q114
How do you implement FSL for a manufacturing company?
⚡ Direct Answer
Manufacturing FSL: equipment installation and commissioning (new machine startup), preventive maintenance (scheduled downtime windows), breakdown repair (emergency response), spare parts management (van and warehouse stock), and integration with ERP (SAP/Oracle) for Work Order billing and inventory.
🎯 Key Points
Manufacturing specifics: planned maintenance within production downtime windows (EarliestStartTime/DueDate matching shift schedule), Skills: CNC, Hydraulics, Pneumatics, Electrical, Welding | Assets: every machine on factory floor with serial number | Spare parts: van stock for common parts + warehouse for complex parts | IoT: machine sensors → SCADA → Platform Event → proactive Work Order creation | ERP: SAP PM/MM integration (Work Orders → billing, parts consumed → inventory) | Safety: Work Permit system integration (permit required before SA can start)
🏢 XYZ Company
At XYZ Company (automotive manufacturer), FSL for 180 maintenance engineers. Machine downtime scheduling: all non-emergency SAs scheduled during planned downtime windows (Saturdays 6AM-6PM, weekday 2AM-5AM for critical machinery). IoT integration: 450 CNC machines with vibration sensors → 12% of Work Orders auto-created from sensor anomalies. SAP integration: Work Order completion → SAP PM order closure + billing. Parts consumed → SAP MM inventory depletion + auto-reorder. Unplanned downtime: reduced 42% in first year.
🎤 "Manufacturing FSL schedules maintenance within production downtime windows, integrates IoT sensor data for proactive Work Order creation, manages spare parts with ERP integration, and enforces safety permit requirements."
Q115
What is the FSL approach to Customer Communication?
⚡ Direct Answer
FSL customer communication automation: Appointment Confirmed (on SA Dispatch — customer receives technician name, ETA, and job reference), Technician En Route (on En Route status — customer receives ETA with tracking link), Technician Arrived (on On Site/geofence trigger), Job Completed (service report emailed), and CSAT Survey (post-completion).
🎯 Key Points
Communication triggers: SA Dispatched → confirmation email/SMS, SA Status = En Route → ETA SMS, Geofence entry → arrived SMS, SA Status = Completed → service report email + CSAT survey, SA Status = Cannot Complete → reschedule notification | Channels: SMS (Salesforce SMS add-on or Twilio), Email (automated via Flow), Push notification (FSL Mobile for customer app) | Customer portal: real-time tracking on Experience Cloud | Personalization: technician photo and name in communications (builds trust)
🏢 XYZ Company
At XYZ Company, customer communication automation: (1) SA Dispatched → SMS: Hi [Name], your technician John Smith is scheduled for today at 2PM. Reference: WO-2025-4521; (2) En Route → SMS: John is on his way. ETA: 35 minutes. Track here: [link]; (3) Geofence arrival → SMS: John has arrived; (4) Completed → Email: Service report attached + CSAT survey link. Customer satisfaction: NPS improved from 62 to 81 after full communication automation. Most impactful: ETA SMS — customers stopped calling to ask where the technician was (inbound calls reduced 52%).
🎤 "FSL customer communication automation triggers SMS/email at each SA milestone — Dispatched confirmation, En Route ETA, arrival notification, and post-completion service report — improving NPS significantly."
Q116
How do you handle Part Sourcing and Van Restocking in FSL?
⚡ Direct Answer
Van restocking in FSL: Parts Management tracks inventory at each Van Location (ProductItems), technicians record parts used (ProductConsumed) from FSL Mobile, Flow detects low stock and creates ProductRequest, warehouse fulfills (ProductTransfer), and technician picks up parts at depot or receives delivery.
🎯 Key Points
Parts workflow: van ProductItems track current stock levels | ProductConsumed: technician records part used on WO from FSL Mobile (barcode scan) | Stock decrement: ProductConsumed decrements ProductItem quantity automatically | Low stock alert: Flow on ProductItem quantity < reorder point → create ProductRequest | Fulfillment: warehouse fulfills request → ProductTransfer from warehouse to van | Pickup vs delivery: technician picks up at depot OR warehouse delivers to technician (configurable) | Planning: weekly van audit compares actual vs system stock
🏢 XYZ Company
At XYZ Company, van restocking automation: 250 vans each with 45 stock keeping units (ProductItems). Technician scans parts used on FSL Mobile → ProductConsumed created → van stock decremented. Low stock Flow: any SKU below reorder threshold → ProductRequest auto-created → warehouse alerted. Morning depot pickup: technician picks up requested parts before first job. First-time fix rate improvement: parts availability went from 79% to 94% in 3 months after van stock tracking implemented.
🎤 "Van restocking automation tracks parts consumption via ProductConsumed from FSL Mobile, detects low stock via Flow, and creates ProductRequests for warehouse fulfillment — improving first-time fix rates through parts availability."
Q117
What is FSL Service Appointment Bundling configuration?
⚡ Direct Answer
Service Appointment Bundling configuration: create a Bundle Policy (same Location within X meters, same time window, same Work Type), identify bundle candidates (multiple SAs at same location), create a Bundle SA (parent), link individual SAs as bundle members, and schedule the bundle as one unit.
🎯 Key Points
Bundle Policy: FSL Configuration → Bundle Policies → define matching criteria | Matching criteria: same Location (exact), nearby Location (within radius), same Work Type, same time window (same day, same morning/afternoon slot) | Bundle SA: created as the parent appointment | Bundle Members: individual SAs linked to Bundle SA | Scheduling: Bundle SA is scheduled — all members inherit same resource and time | Member status: each member SA has own completion status | Use case: apartment complexes, office buildings, neighboring customer sites
🏢 XYZ Company
At XYZ Company, Bundling configured for two scenarios: (1) Same building: all WOs in one building within same week → auto-bundled into one visit (8-hour bundle block); (2) Adjacent sites: WOs within 500 meters within same day → suggested for manual bundling by dispatcher. Automatic bundles: 240 per month. Manual suggestions: 85 per month, 60% accepted by dispatchers. Total travel time saved by bundling: 380 technician-hours per month = $9,500 monthly savings.
🎤 "Bundle Policy configuration matches SAs by location proximity and time window — creating Bundle SAs that are scheduled as one unit, eliminating separate travel trips to the same or adjacent locations."
Q118
How does FSL handle Shift Workers and Rotating Schedules?
⚡ Direct Answer
Shift workers in FSL use Service Resource Operating Hours with multiple time slots to model shifts — Early Shift (6AM-2PM), Day Shift (8AM-4PM), Night Shift (10PM-6AM). Rotating schedules are modeled by creating different Operating Hours templates and updating the Service Resource's Operating Hours assignment weekly or via automated Scheduled Apex.
🎯 Key Points
Shift configuration: create Operating Hours for each shift pattern | Service Resource: assign to appropriate shift Operating Hours | Rotation: Scheduled Apex changes Service Resource Operating Hours assignment based on rotation schedule | Multiple shifts in one territory: Service Territory Operating Hours = 24 hours (widest window), individual resources constrained by their shift Operating Hours | Overtime: Resource Absence type = Overtime pre-approved hours extension | On-call: dedicated On-Call Operating Hours (evenings/weekends) for emergency coverage
🏢 XYZ Company
At XYZ Company (utility company), shift model: Early (6AM-2PM), Day (8AM-5PM), Late (2PM-10PM), Night (10PM-6AM). Each shift had dedicated Operating Hours template. 250 technicians in rotating shifts (4 weeks: 2 weeks Day → 1 week Early → 1 week Late). Scheduled Apex ran every Sunday midnight: updated Service Resource Operating Hours for the coming week based on rotation schedule in custom Rotation__c object. Scheduling engine automatically scheduled within each technician's current shift. Zero manual Operating Hours updates — fully automated rotation.
🎤 "Shift workers use shift-specific Operating Hours templates assigned to Service Resources — with Scheduled Apex automating weekly rotation by updating each technician's Operating Hours assignment based on the rotation schedule."
Q119
What are FSL Reporting best practices?
⚡ Direct Answer
FSL reporting best practices: use CRMA for aggregate analytics (never SOQL reports on SA at high volumes), create a daily operational report (automated email to dispatchers), weekly KPI report (leadership), monthly trend report (management), and a real-time Dispatcher Console KPI panel for intra-day visibility.
🎯 Key Points
Report types: Operational (daily — dispatchers), Tactical (weekly — managers), Strategic (monthly — leadership) | CRMA vs Reports: CRMA for >10K records, standard Reports for small operational lists | Automated delivery: scheduled reports emailed to stakeholders | Key dashboards: CRMA Field Service Analytics + custom KPI dashboard | Operational metrics: SAs by status, unscheduled queue, approaching DueDates | Tactical: SLA compliance, FTFR, utilization by territory | Strategic: MTTR trend, CSAT trend, cost per SA, PM compliance
🏢 XYZ Company
At XYZ Company, reporting cadence: Daily 7AM automated email to 25 dispatchers (unscheduled queue, SAs approaching DueDate today), Weekly Monday 9AM email to operations managers (SLA compliance, FTFR, cannot complete rate by territory), Monthly 1st to leadership (MTTR trend, CSAT trend, technician utilization, cost per SA). Live Dispatcher Console KPI Panel: updated every 5 minutes. Standard Reports: 0 on SA object (too slow at volume) — all CRMA. Report satisfaction: operations director called it the first time we actually understood our field operations.
🎤 "FSL reporting uses CRMA for all aggregate analytics, automated scheduled reports for each stakeholder level, and a real-time Dispatcher Console KPI panel — never standard SOQL reports on SA at high volumes."
Q120
How would you design FSL for a 500-technician deployment — architecture overview?
⚡ Direct Answer
500-technician FSL architecture: Service Territory hierarchy (5 regions → 20 zones → 100 sub-zones), Resource Optimization add-on (>100 technicians threshold), MuleSoft for ERP and IoT integration, CRMA Field Service Analytics, Experience Cloud self-service portal, nightly Global Optimization, hourly In-Day Optimization, and a 5-person FSL Center of Excellence.
🎯 Key Points
Architecture components: Service Territory hierarchy (matches org structure), Resource Optimization (required at 500 technician scale), Integration hub (MuleSoft — ERP, IoT, HR), Analytics (CRMA FSA + custom dashboards), Self-service (Experience Cloud booking portal), Automation (Global Opt nightly, IDO hourly, SLA alerts), Governance (FSL Center of Excellence: 2 admins + 2 developers + 1 functional lead) | Phased rollout: Pilot (50 technicians) → Region 1 (150) → Region 2 (150) → Region 3 (150) | Timeline: 12 months
🏢 XYZ Company
At XYZ Company (national service company), 500-technician FSL program: $2.8M investment, 14-month program. Pilot: 50 technicians in Mumbai (Month 1-3) — 28 improvements identified. Region 1-3: monthly regional rollouts (Months 4-12). Final: all 500 technicians live Month 14. Results after 12 months: FTFR improved from 68% to 83%, MTTR improved from 8.2 hours to 4.6 hours, SLA compliance from 71% to 94%, fuel costs reduced 28%, technician capacity increased 35% without new hires. ROI achieved: 14 months.
🎤 "500-technician FSL requires Resource Optimization, MuleSoft integration hub, CRMA analytics, Experience Cloud portal, automated optimization schedules, and a dedicated Center of Excellence — phased rollout by region over 12 months."
Q121
What is the future of FSL with Agentforce?
⚡ Direct Answer
Agentforce in FSL enables AI agents to: handle customer service appointment requests (no human dispatcher), proactively reschedule when technicians are delayed (no human intervention), answer technician questions from FSL Mobile via AI (Knowledge base queries), and analyze field data to predict equipment failures before they happen.
🎯 Key Points
Agentforce FSL use cases: (1) Customer self-service scheduling agent (customer says I need my AC serviced → agent checks availability → books SA → confirms); (2) Disruption management agent (technician delayed → agent proactively reschedules affected customers → notifies dispatcher of changes); (3) Field technician AI assistant (technician asks How do I replace the impeller on Pump XYZ? → AI searches Knowledge + Asset history); (4) Predictive maintenance agent (analyzes IoT data trends → recommends proactive SA creation) | 2026: most FSL enterprise clients evaluating Agentforce for dispatcher automation
🏢 XYZ Company
At XYZ Company, Agentforce FSL pilot: (1) Scheduling agent handled 38% of non-emergency customer booking requests without dispatcher involvement; (2) Disruption agent: technician ran 45 minutes late → agent automatically rescheduled 3 downstream customers → sent apology notifications → updated dispatcher of changes. Dispatcher workload: reduced 25% from Agentforce automation. Field technician AI: Knowledge query response in 8 seconds vs 15-minute supervisor call. Board decision: full Agentforce FSL rollout approved for 2026.
🎤 "Agentforce in FSL automates customer scheduling requests, manages disruptions proactively, and provides AI assistance to field technicians — reducing dispatcher workload and improving customer communication without human intervention."
Q122
How do you handle FSL for seasonal demand spikes?
⚡ Direct Answer
FSL seasonal demand management: add Secondary Service Territory members from adjacent territories, activate contractor Service Resources (pre-configured), extend Operating Hours for seasonal windows, create dedicated Seasonal Scheduling Policies (extended hours, relaxed territory boundaries), and forecast capacity 8-12 weeks ahead using CRMA.
🎯 Key Points
Seasonal preparation: 8-12 weeks before peak: review CRMA capacity forecast | Secondary members: senior technicians from low-season territories added as Secondary in high-season territories | Contractor resources: pre-created Service Resources for contractors (activate/deactivate as needed) | Extended Operating Hours: seasonal Operating Hours template (e.g., add Saturday full day) | Seasonal policy: relaxed Soft Boundaries Service Objective (cross-territory OK during peak) | Capacity vs demand chart: CRMA shows upcoming capacity gap — trigger for contractor activation
🏢 XYZ Company
At XYZ Company (HVAC company, peak: April-June summer), 6-week seasonal preparation: (1) CRMA capacity forecast identified 40% demand spike April-June; (2) 15 pre-created contractor Service Resources activated; (3) Saturday Operating Hours added to 80 technicians; (4) 20 senior technicians from low-demand territories added as Secondary in high-demand zones; (5) Seasonal Scheduling Policy: Soft Boundary weight reduced from 40 to 10 (cross-territory more acceptable). Peak performance: SLA compliance 93% (vs 71% previous year before seasonal planning).
🎤 "FSL seasonal demand management uses pre-configured contractor resources, extended Operating Hours templates, Secondary territory member activation, and 8-week-ahead CRMA capacity forecasting to maintain SLA compliance during peaks."
Q123
What are FSL integration patterns with third-party systems?
⚡ Direct Answer
Key FSL third-party integrations: ERP (SAP/Oracle) for Work Order billing and inventory via MuleSoft, IoT platforms (AWS IoT, Azure IoT, SCADA) for proactive Work Order creation via Platform Events, HR systems for Resource Absence sync, customer portals via Experience Cloud, and analytics platforms (Snowflake) for advanced field service ML.
🎯 Key Points
ERP integration: MuleSoft bidirectional — Work Orders to ERP for billing, Asset master from ERP to FSL, TimeSheets to payroll | IoT: IoT platform → Platform Event → Salesforce Flow → Case + Work Order creation | HR: approved leaves → Resource Absence creation (REST API or MuleSoft) | CRM: FSL native on Salesforce — no external CRM integration | Analytics: FSL data → Salesforce Data Pipelines → Snowflake → ML models → churn/failure prediction pushed back to FSL | Mapping: external IDs on all FSL objects for bidirectional sync
🏢 XYZ Company
At XYZ Company, integration architecture: (1) SAP S/4HANA → MuleSoft → FSL (Assets, Locations, Customer data); (2) FSL → MuleSoft → SAP (Work Order billing, TimeSheets, ProductConsumed); (3) Siemens SCADA → MuleSoft → Platform Event → FSL (IoT fault detection); (4) SAP HR → MuleSoft → FSL (Resource Absences); (5) FSL → Salesforce Data Pipelines → Snowflake (predictive failure ML). 5 integrations, all via MuleSoft. Integration platform: unified, monitored, and alerting.
🎤 "FSL integration architecture uses MuleSoft as the central hub connecting ERP (billing, inventory, payroll), IoT platforms (proactive Work Orders), HR systems (absences), and analytics platforms (ML predictions)."
Q124
What are the FSL developer skills needed in 2026?
⚡ Direct Answer
Top 2026 FSL developer skills: FSL data model mastery (Work Order, SA, Service Resource, Scheduling Policy), FSL Apex (FSL.ScheduleService, FSL.ScheduleResult, async patterns), Flows for field service automation (Case-to-WO, status notifications, SLA alerts), CRMA for FSL dashboards, IoT integration (Platform Events), Agentforce for dispatcher automation, and FSL Mobile customization (LWC embedded in Mobile Flow).
🎯 Key Points
Core skills: FSL data model, Scheduling Policy design, Work Types, Maintenance Plans | Apex: FSL.ScheduleService async patterns, FSL test data factory, optimization trigger | Flows: Case-to-WO, SA status notifications, SLA breach alerts, Cannot Complete automation | CRMA: FSL KPI dashboards, Field Service Analytics app | Advanced: IoT integration (Platform Events), Agentforce scheduling agent, Resource Optimization configuration | Mobile: FSL Mobile customization, Mobile Flow, offline LWC | Certification: Salesforce Field Service Consultant required for senior roles
🏢 XYZ Company
At XYZ Company, FSL developer hiring in 2026: required skills — FSL Consultant certification, 2+ live FSL implementations, Apex FSL.ScheduleService experience, hands-on sandbox test (configure scheduling policy, dispatch SA, build Case-to-WO Flow). Pass rate: 45% of certified Salesforce developers. Most common gap: no experience with FSL.ScheduleService async patterns (developers knew FSL objects but had never built custom scheduling Apex). Average hire time: 10 weeks. Premium over standard Salesforce developer: 20-30%.
🎤 "2026 FSL developer skills: FSL data model, Scheduling Policy design, FSL.ScheduleService Apex, Flow automation, CRMA dashboards, IoT Platform Events, Agentforce integration, and FSL Mobile customization — with Field Service Consultant certification required."
Q125
What are the top FSL interview topics and how to prepare?
⚡ Direct Answer
Top FSL interview topics: (1) FSL data model — Work Order, SA, Service Resource, Service Territory, Skills relationship; (2) Scheduling Policy — Work Rules vs Service Objectives with examples; (3) Global vs In-Day Optimization — when each runs; (4) FSL Mobile offline capability; (5) Case-to-Work Order automation; (6) Maintenance Plans for preventive maintenance; (7) FSL.ScheduleService Apex; (8) KPI tracking — FTFR, MTTR, SLA.
🎯 Key Points
Preparation strategy: Trailhead Field Service Specialist Superbadge (mandatory), hands-on sandbox with real scheduling (create territories, resources, dispatch SAs), practice explaining Scheduling Policy design decisions, know FSL.ScheduleService async requirement cold, understand Global Optimization vs IDO triggers, prepare real examples of FSL implementations or projects | Interview question pattern: always explain with a scenario, not just definitions | Certification: Field Service Consultant exam before senior interviews
🏢 XYZ Company
At XYZ Company, FSL interview preparation guide shared with hiring panel: technical screen (30 min) — data model questions + Scheduling Policy design; hands-on test (45 min) — configure territory + resource + dispatch SA in sandbox; architecture round (60 min) — design FSL for given business scenario. Candidates who prepared with Trailhead Superbadge + sandbox practice: 78% pass rate. Candidates without hands-on practice: 22% pass rate. Superbadge + sandbox = minimum preparation for any FSL interview.
🎤 "FSL interview preparation requires Trailhead Field Service Specialist Superbadge, hands-on sandbox scheduling practice, and real scenario examples covering data model, Scheduling Policy design, optimization, Apex, and KPI tracking."
More Free Salesforce Interview Prep
1,400+ questions across 22 topics. 4 free courses. All free. No signup. No paywall. Ever.
Explore All Topics →FSC Q&As