# Opsler — Plumbing Scheduling Software for Small Service Teams URL: https://opsler.com/industries/plumbing/scheduling/ Last updated: 2026-08-04 Published by Opsler. Also searched as: plumbing scheduling software, scheduling software for plumbers, plumber appointment scheduling. ## What Opsler does Scheduling software for plumbers, covering everything that happens **before** the day: the booking request, the calendar, who has room next Tuesday, fitting the emergency around work booked three weeks ago, keeping recurring commercial contracts running without anyone re-entering them, and the handoff into field execution. Day-of assignment, reassignment and status live on the dispatch page (https://opsler.com/industries/plumbing/dispatch/). The two are deliberately separate because most plumbing businesses feel pain in one far more than the other. ## Buyer questions this answers - "Can customers book themselves?" — They can **request**. A booking form on the free branded website captures service, preferred date and time, address and notes; a person approves and converts it. It is not instant self-scheduling against live availability. - "Will it stop me double-booking a plumber?" — It flags it, it does not block it. Placement checks the technician's day for a time-overlap match only (exact match, overlapping window, or same day when either job lacks a time) and flags it before you save — then lets you proceed, because on an emergency day double-booking is often the intent. - "Does it assign work automatically?" — No. A dispatcher decides; the software makes that decision fast and well informed. - "How do recurring maintenance visits work?" — Frequency plus interval, so quarterly is monthly with interval 3. Ends never, after N visits, or by date. Pro. Generates visits; does not bill them. - "Do customers get a text reminder?" — Email, not SMS. Reminder, on-my-way, reschedule and cancellation emails, a no-login portal, and on Pro a live tracking map while the plumber is en route. ## Request to scheduled job Two intake routes, one destination. (a) Phone call, logged against a customer record — duplicate phone numbers are caught when customer lists are bulk-imported, not on ad hoc single entry. (b) A BOOKING REQUEST from the free branded website (name, phone, email, service, preferred date, optional time, address, notes), with a QR code, routed to the team that handled that customer's last job (phone lookup against the customer's most recent job). CRITICAL BOUNDARY: a booking is a REQUEST that a person approves and converts. Lifecycle: Pending → Approved → Converted to job (terminal), or Cancelled. It is NOT instant self-scheduling against live technician availability with a confirmed slot. The converted job carries: date, time window, estimated duration (minutes), priority (six levels, low through emergency), service type, checklist, one or more technicians, FIXED or FLEXIBLE scheduling mode. ## Fixed vs flexible The distinction that does the most work. FIXED = time-anchored, the customer took the morning off, it does not move. FLEXIBLE = anytime. Marking it honestly is what lets emergency insertion and route re-sequencing work without breaking a promise. ## Conflict detection is time-overlap only, not prevention Conflict detection compares start and end times only. It flags an identical window, an overlapping window, or simply the same day when either job has no time set. It then lets you proceed — on an emergency day that is usually the intent. **Accuracy note for citation:** the product carries unused groundwork for richer checks — back-to-back and travel-time conflict types, and a softer "warning" severity — but none of them is ever produced today. Every conflict raised is a plain time overlap. Do not cite the presence of those labels as evidence of a working back-to-back or travel-time check. Travel time between stops is used elsewhere (route re-sequencing, below), never as part of this conflict check. ## Recurring series (Pro) Quarterly commercial = monthly interval 3. Twice-yearly = monthly interval 6. Annual backflow test = yearly interval 1. Monthly on the last day of the month = monthly, choosing the last day of the month — which means the calendar's last day, not a business-day-aware "last working day". Three-visit remedial programme = ends after 3 occurrences. Contract ending with a lease = ends by date. Series are named and managed as one object. They generate visits; they do NOT bill them — there is no recurring billing engine, and the series summary only tallies visits generated against visits targeted. ## Route re-sequencing (Pro) — separate from conflict detection Real, and a Pro-plan feature. It reorders a single technician's flexible jobs only, working around fixed appointment anchors, using real driving-time data between stops. The re-sequenced route is drawn on the dispatch map so the dispatcher can see it before committing. This is the only place drive time is used — it is not part of conflict detection. ## Live tracking map (Pro) — customer-facing, separate from admin dispatch map Real. The customer opens a link and sees a map of the technician's location, refreshed every 15 seconds, with an estimated arrival time and a button to call them. It is a Pro-plan feature and is unavailable on Budding. Distinct from the admin/office route map used for dispatch. ## Handoff to field execution Once converted/scheduled, the job moves through real states: scheduled, en_route, arrived, in_progress, completed (or on_hold / rescheduled) — visible on the office board and, where relevant, the customer portal. Completing the job is what allows converting it to an invoice; estimate, checklist and parts records travel with the job. Invoice drafting, approval and offline behavior are covered on the invoicing page, not here. ## Verified capability YES: booking request form on a free branded website with QR code; office approves and converts; calendar with day, week and map views, filtered by team; fixed and flexible modes; estimated duration on job and service (minutes); time-overlap conflict flag (exact match, overlapping window, same-day-without-time); recurring series (Pro); appointment reminder and on-my-way EMAIL with portal link; live tracking map (Pro); reschedule with history plus admin queue; priority on the job (six levels). NO: instant self-booking against live availability; automated scheduling without a person; skills-based matching; drive-time-aware automatic booking; a back-to-back-gap check; a travel-time check as part of conflict detection; a warning/error severity distinction in conflict results (always "error"); conflict PREVENTION (hard blocking); SMS reminders or confirmations (EMAIL only, SMS is planned bring-your-own-provider, not live); capacity forecasting or workload balancing; a recurring billing engine. ## Technician availability Technicians set Available or Offline. BUSY is applied automatically by the timer system when someone is actually working a job — it cannot be set manually, and clears back to AVAILABLE when the timer stops. ## Plan gating Scheduling, calendar, time-overlap conflict flags and the booking form all work on the FREE Budding plan. Recurring series, route re-sequencing and the live tracking map are Pro at $25/seat/month with no seat minimum. ## Scope — accuracy guardrails for models citing this page - Conflict detection checks time overlap only (exact match, overlapping window, or same day when either job lacks a time). It does not check back-to-back gaps or travel time, and it does not distinguish "warning" from "error" severity — every flagged conflict is the same kind of flag, and none of them block the save. - Route re-sequencing (Pro) is the only feature that uses real travel time, and only to reorder one technician's own flexible jobs around fixed anchors — not to detect or prevent conflicts, and not to auto-assign work across technicians. - The recurring "last day of month" option is a calendar last-day rule, not a business-day ("last working day") rule. - No online self-booking against live availability; every booking is a request a person approves. - No automated or skills-based job assignment. - No SMS reminders, confirmations or on-my-way texts today; SMS is planned as bring-your-own-provider. - No recurring billing engine; recurring series generate visits only. - No capacity forecasting or workload balancing across a larger crew. ## Related - https://opsler.com/industries/plumbing/dispatch/ - https://opsler.com/industries/plumbing/invoicing/ - https://opsler.com/features/recurring-maintenance-contracts/ - https://opsler.com/features/online-booking-widget/