Scheduling lives in one dispatcher's head
The board works because a person knows who is good at what and who is near where. That knowledge does not scale, does not survive holidays, and cannot be audited when a job is missed.
Salesforce Field Service extends Service Cloud with the scheduling engine, dispatcher console, mobile app and asset model that field operations actually run on. Twopir designs, implements and supports that platform end to end — so the right technician arrives with the right part, the first time. Scheduling, dispatch, mobile and assets on one architecture.
Trusted by 500+ organizations — and built on the Salesforce ecosystem that field service operations depend on.












Built for Field Service Operations
Field service rarely fails because technicians are not good enough. It fails in the handoffs — between the call, the schedule, the van and the invoice. Every one of these is an architecture problem, not an effort problem.
The board works because a person knows who is good at what and who is near where. That knowledge does not scale, does not survive holidays, and cannot be audited when a job is missed.
Van stock is tracked on paper or not at all, so the job is diagnosed on site and completed a week later. Every second truck roll is margin that was already spent.
Basements, plant rooms and rural routes have no signal. If the app was never configured for offline work, technicians fall back to paper and the data arrives late, incomplete, or never.
Without a real installed base — hierarchy, service history, warranty status — every visit starts from zero and preventive maintenance revenue never gets built.
Parts consumed, labour hours and completion status sit in the service system while invoicing waits on a spreadsheet. Billing lags the work by weeks and disputes are impossible to settle.
Three teams report three different numbers because they count appointments, work orders and visits differently. Without one definition in the data model, no improvement can be proven.
Salesforce Field Service is an extension of Service Cloud for managing work that happens away from a desk. It adds a managed package containing a scheduling and optimization engine, a dispatcher console, an offline-capable technician mobile app, and a data model built around work orders, service appointments, service resources, service territories and assets. It was launched as Field Service Lightning (FSL), renamed Salesforce Field Service, and is currently marketed by Salesforce as Field Service and Operations — the same product throughout.
It is worth being precise about the division of labour, because it is where most implementations go wrong. Salesforce provides the engine. It decides which technician can take which appointment, given the rules you configure. Twopir provides the configuration, the architecture and the integrations that make those rules match how your business actually dispatches work. The client gets the outcome — a higher first-time fix rate, shorter response times, and more jobs completed per technician per day.
This is a fit for organizations running a mobile workforce against SLAs: HVAC and building services, manufacturing and equipment servicing, utilities, telecommunications, medical devices, facilities management and home services. We work with growing, mid-market, and enterprise organizations that need help with complex CRM implementations, integrations, and business system challenges — and field service is one of the most integration-heavy problems in that set.
Deploying Field Service, tuning one that underperforms, and building on top of it are three different projects with three different risks. We are explicit about which one you need.
You have Salesforce and a field workforce, but no Field Service deployment yet. We take it from discovery to a live dispatch operation.
Field Service is live but underperforming — the optimizer is not trusted, dispatchers override it, and the KPIs have not moved. We diagnose and fix the configuration.
The standard product does not cover how you work. We build on it — custom logic, integrations and mobile extensions — without breaking upgradeability.
Field service is not one project. Find the problem you actually have, and go straight to how we solve it.
| Capability | The problem it solves | Go deeper |
|---|---|---|
| Implementation | No Field Service deployment yet, and you need one live without disrupting active service operations. | Implementation |
| Scheduling & Optimization | The optimizer produces schedules dispatchers do not trust, because work rules and service objectives were never tuned to your business. | Scheduling |
| Dispatch & Workforce | The dispatcher console does not match how the board is actually worked, and capacity planning happens in a spreadsheet. | Dispatch |
| Mobile Implementation | Technicians lose the app where there is no signal, so job data arrives late, incomplete, or on paper. | Mobile |
| Integration | Work orders, parts consumption and invoicing do not flow between Field Service and the ERP or inventory system that owns them. | Integration |
| Customization | Standard configuration cannot express how you dispatch, and you need to know where config ends and Apex begins. | Customization |
| Automation | Work orders are created by hand, SLAs are tracked manually, and customers are updated by whoever remembers. | Automation |
| AI & Agentforce | You are being sold AI agents for field service and need to know what they do today and what your data must look like first. | AI & Agentforce |
| Asset & Maintenance | Service is purely reactive because the installed base is thin and no preventive maintenance schedule exists. | Asset & Maintenance |
| Managed Services | Field Service is live but nobody owns it — releases break things and the configuration has drifted. | Managed Services |
| Analytics & Reporting | Three teams report three different first-time fix rates and leadership cannot tell whether service is improving. | Analytics |
Not sure which one applies? That is what the discovery call is for.
A work order is only useful if it knows the customer, the asset, the part, the price and the contract. Each of those lives in a different system — so the integration design decides whether the deployment works.
The system of record for customers, cases and entitlements. Cases escalate into work orders; completed work returns status and history to the case for the agent handling the customer.
ERP owns the item master, stock levels and financials. Items and availability flow into Field Service; parts consumed and labour hours flow back out so the job can be costed and invoiced.
Connected equipment emits threshold and fault events. Those events create a work order against the specific asset before the customer calls, turning an outage into a scheduled visit.
Warehouse and van stock reconcile against product requests and transfers. Field Service deducts consumed parts at debrief; the WMS receives the movement so replenishment is triggered automatically.
Completed work orders carry the billable lines. Those lines move into the billing system to raise the invoice, and payment status returns to the service record so disputes can be settled against the job.
Entitlements and warranty terms decide whether a visit is covered or chargeable. The contract drives SLA milestones on the work order, and coverage status reaches the technician before they quote.
Appointment confirmations, en-route alerts and completion summaries go out over SMS and email. Delivery status and customer replies return to the appointment record, so dispatch sees failed contact.
Moving off ServiceMax, Oracle Field Service or a homegrown system. Assets, service history, contracts and open work migrate with their relationships intact, validated in a parallel run before cutover.
Five stages, one continuous engagement. Field service go-lives are disruptive by nature — the work does not stop while you migrate — so the rollout is phased by territory, never big-bang.
Workshops with dispatchers, technicians and service leadership. We map the real call-to-cash flow and benchmark response time, first-time fix and utilization before anything changes.
Territories, operating hours, skills and work types are designed first. Scheduling policies, work rules and service objectives are then written against your actual dispatch priorities.
Managed package configuration, work order automation, mobile setup including offline priming, and the ERP, inventory and billing integrations — tested against real job data, not samples.
User acceptance testing with dispatchers and technicians separately, because they fail differently. Hands-on training on the dispatcher console and the mobile app before anyone depends on it.
Phased cutover by territory with hypercare. Then the part most partners skip: tuning the scheduling policy against live results until the KPIs actually move.
The figures below come from one documented engagement with an HVAC services company running more than 100 field technicians across multiple regions. They describe that client's results — not an industry benchmark and not a Twopir average.
Replacing manual dispatch with Salesforce Field Service across a 100+ technician fleet.
Service requests were handled by hand, technicians arrived without knowing which parts the job needed, and management had no live view of work in progress. Configuring the scheduling engine around skills, location and availability, equipping technicians with the mobile app, and integrating inventory so parts were known before dispatch produced a 20% increase in technician productivity alongside the results above.
Three published examples of the problems Field Service is brought in to solve.
Installing the managed package takes an afternoon. Making the scheduling engine produce assignments a dispatcher will actually accept is the entire job.
Before any configuration we map how work arrives, how it is prioritised, and what your dispatchers actually optimise for. Work rules written without that are rules nobody trusts.
Field Service touches ERP, inventory, billing, contracts and often IoT. Deployments fail on those seams far more often than on the scheduling engine, so that is where the design effort goes.
Offline behaviour is decided at design time, not patched afterwards. What is primed, what syncs, and what happens on reconnect are architecture decisions with real consequences in a plant room.
First-time fix rate can be measured three different ways and produce three different answers. We fix the definition in the data model first, so improvement can be proven rather than asserted.
Scheduling policies drift as territories, skills and volumes change. We tune them against live results — the work that separates a deployment that moved the numbers from one that merely launched.
Yes. It is one product that has been renamed twice. It launched as Field Service Lightning (FSL), was renamed Salesforce Field Service, and is currently marketed by Salesforce as Field Service and Operations. Job specs, consultants and documentation still use all three names, so if you are comparing proposals that use different terms, they are describing the same platform.
It depends far more on integration scope than on technician count. A single-territory deployment with standard scheduling and no ERP integration is a short project. A multi-territory rollout with ERP, inventory and billing integration, offline mobile requirements and a migration from an existing field service system is a substantially longer one, and is phased by territory rather than launched at once. We scope it in discovery and give you a staged plan before any build begins — we will not quote a duration before we have seen how your dispatch actually works.
Field Service is built as an extension of Service Cloud and shares the Work Order object with it, so the two are designed to run together. Licensing depends on which users need what — dispatchers, technicians and contractors are licensed differently — and that mix is worth confirming with Salesforce directly as part of scoping, because it materially affects cost. We map the user roles in discovery so the licence conversation is based on how many people genuinely need each type of access.
Almost always because the scheduling policy does not reflect how the business really prioritises work. Work rules are hard filters — they reject any resource that violates them and are applied first. Service objectives are weighted scores applied only to the candidates that survive those rules. If the objectives are weighted for minimum travel while your dispatchers are actually optimising for SLA risk, the engine will keep producing technically valid schedules that a human overrules. Fixing it is a configuration exercise, not a reimplementation.
Only if it is configured to. The Field Service mobile app supports offline working, but records have to be primed onto the device before connectivity is lost, and anything built with Lightning Web Components has to be built for offline use specifically. Work completed offline is stored locally and queued until the device reconnects. Deciding what gets primed, what syncs and how conflicts resolve is a design decision we make during the build — not something that can be switched on afterwards.
Territories, operating hours, skills, work types, scheduling policies, standard work rules, service objectives, Flow automation and the dispatcher console layout are all configuration. Custom scheduling logic, Apex on work orders and service appointments, Lightning Web Components for the console or the mobile app, and anything the managed package does not expose are development. The boundary matters commercially, because configuration is cheaper to build, cheaper to maintain and survives Salesforce releases more predictably. We push as far as configuration will go before we write code, and we tell you when we are crossing that line.
It depends entirely on your data. Agentforce for Field Service covers scheduling assistance, on-the-job troubleshooting and job report summarisation, and its answers are grounded in your own CRM records, knowledge articles and asset data rather than the open web. That grounding is the point — and the catch. An organization with a thin installed base, no maintained knowledge articles and inconsistent debrief capture will get an agent that is confidently wrong. We usually recommend fixing asset and knowledge data first; the AI is worth far more six months later on clean data than it is now on poor data.
Twopir helps service organizations design, implement and operate Salesforce Field Service — from the scheduling engine and dispatcher console through to mobile, assets and the integrations that make the whole thing work.
Speak with a team that has configured the scheduling engine, not just installed it