How to Complete, Revert, and Bulk-Update Visits (Visit Actions)
Last updated October 16, 2026 · Admins, office staff, and crew managers
Beyond placing visits on the calendar, day-to-day dispatch is mostly about changing their status: marking work complete (or un-completing it), seeing what’s overdue, and finding out who changed what. Most of this lives on the Appointments list (Schedule > Visits, or All Appointments on Daily Dispatch), with quick single-visit actions also available right on the calendar and on each visit’s own page.
Before you start
- Visits must exist on the schedule: see Calendar Scheduling.
- Know the status vocabulary: Scheduled, Unscheduled (no date yet), On My Way, In Progress, Completed, Skipped, Rescheduled. Office-side buttons toggle between Completed and Active (scheduled); the “in the field” statuses (On My Way, In Progress, and Skipped with a skip reason) are set by crews from the crew app.
Complete a single visit
Use whichever screen you’re already on:
- From the calendar (Daily Dispatch): click the appointment, then Mark Complete in the popup. The event turns green. (Hidden for recurring series; see below.)
- From the Appointments list: find the row and click its Complete button. For a recurring visit, this completes only that date’s occurrence, not the whole series.
- From the visit’s own page: click Complete visit (see “The visit page” below).
- From Today or the crew app: the crew taps Complete on the stop.
If the visit is missing required documentation (for example a treatment visit with no chemical log), you are asked “This visit is missing: … Complete anyway?” before it is completed.
Undo a completion
The same buttons flip: Mark Active on the calendar popup, or Revert on the Appointments row. The visit returns to Scheduled/Active status.
Reverting never voids an invoice that was already created for the visit. The message tells you the invoice number; delete the invoice from the Sales page if you need to reverse the billing.
What completing a visit triggers
- The visit turns green on the calendar and its status badge reads Completed.
- If it was the last open visit on the job, the job itself rolls up to Completed.
- If the job is opted in to auto-invoicing, completing the visit creates the invoice automatically.
- The change is written to the visit’s History with who did it and when.
Bulk complete / bulk revert
On the Appointments list:
- Tick the checkboxes on the rows you want (selection survives paging).
- In the grid toolbar click Mark Selected Complete: or Mark Selected Active to bulk-revert.
- A toast confirms how many appointments were updated and the grid refreshes.
Recurring rows are handled per-occurrence: only the specific dates you selected change.
Recurring visits: the one rule to remember
A recurring appointment is a series; each date is an occurrence.
- The Appointments list shows one row per occurrence, so its Complete/Revert buttons (and bulk toolbar) affect only the date on that row. This is the right place to complete recurring work.
- On the dispatch calendar, the quick popup’s complete button is hidden for a recurring series (completing “the series” from there would be ambiguous). Occurrences that were individually edited/detached behave like normal single visits.
Find visits fast: filters on the Appointments list
- Quick chips: All, Today, This Week, Next 7 Days, This Month, Unscheduled (visits with no date), Past Due (dated before today and not completed), Custom Range (opens a date-range picker).
- Dropdown filters: Crew, Status, Customer: plus the grid’s own search box and column filters.
- Clear All resets everything.
- Toolbar exports: Excel and PDF.
View details and history
Each Appointments row has three buttons:
- View: opens the appointment detail window: date/time, recurring flag, crew, job (linked), address with a Get Directions map link, the description, and the visit notes log. Footer buttons jump to Open Customer, Open in Calendar (lands on Daily Dispatch with the right crew, date, and the editor open), Open job, and Review visit (the visit’s own page).
- Complete / Revert: as above.
- History: “who changed this visit, and when”: every create, move, edit, completion, reorder, and batch shift with the user and timestamp. This is your answer to “why did this appointment move?”
The visit page
Every dated visit has its own page. Open it with Review visit on the Appointments list, Open visit in a visit row’s More menu on Job Summary, a job name on the Weather page, or the visit links on the customer’s overview.
The header shows the customer, date and time (in your company’s time zone), crew, status, property, job, and program round if there is one. On the page:
- Chemical logs for this visit, with Add Chemical Log (you come back to this page after saving).
- Visit notes: the shared office and crew log for this date.
- Photos, with Add Photo (Before, Progress, After, or Issue, plus an optional caption).
- Documentation: whether a chemical log and an after photo are Recorded, Missing, or Not required.
The buttons at the top change with the visit:
- An open visit shows Complete visit and Reschedule this visit.
- A visit with no date yet shows Set date.
- A completed visit shows Review billing, which opens the job’s financials.
If the visit was moved since the link was made, the page says “This visit was moved. You are viewing its current details.”
Reschedule one visit
The Reschedule window moves a single visit to a new day, time, or crew. It opens from Reschedule this visit on the visit page, the More menu on Job Summary visit rows, the Customer Summary appointments list and Programs tab, and the Weather page.
- Pick the Crew, Day, and (for a timed visit) Start time and Length.
- Click Preview move to see where it moves from and to, and anything that moves with it.
- Click Move visit (or Move anyway if the preview raised a warning).
For a repeating visit, only that date moves. A visit that has its own invoice cannot be rescheduled.
Set date and Reschedule both need a crew. With no crews yet, the window says so and links to add one in a new tab; open the window again afterwards to pick it. Schedule round opens on Save for later when there are no crews, so a round can still wait in the Non Scheduled list.
Batch reschedule (Rain / Delay Shift)
Shifting a whole crew’s open visits by N days lives on the Route Management page (More actions > Rain / Delay Shift), with a preview-before-commit flow. See Route Management for the full walkthrough and the rules (completed and skipped visits stay put, recurring series never move, and a timed visit that would double-book its crew stays where it is).
Delete a visit
Open the appointment on the calendar and use its delete option; a confirmation dialog warns the action can’t be undone. For recurring appointments you’ll be asked whether to delete just that occurrence or the whole series. Prefer Revert/Reschedule over delete when the work still needs to happen: deleting removes the record from the schedule entirely.
Tips & best practices
- Start your morning on the “Past Due” chip. Anything dated before today and not completed shows up there: reschedule or complete it before it snowballs.
- Use the “Unscheduled” chip as your backlog view of Schedule Later visits.
- Bulk-complete at day’s end. Filter to Today + the crew, select all, Mark Selected Complete: faster than clicking through the calendar.
- Check History before asking around. Every schedule change is attributed; the History button settles “who moved this?” in one click.
Troubleshooting
- The Complete button is missing on a calendar event: it’s a recurring series. Complete individual dates from All Appointments.
- I completed a recurring visit and the whole series looks done / not done: check you were on the grid row for the right date; each occurrence completes independently.
- “No appointments were updated” on a bulk action: no rows were selected, or the update failed; re-select and retry.
- A visit shows Skipped but nobody in the office skipped it: Skipped (with a reason) is set by the crew from the mobile app; check with the crew or the visit History.
- The job didn’t auto-complete after the last visit: job roll-up happens on visit completion; if a visit was completed some other way, open the job and complete it manually.
- “Could not update status”: the save failed; the button re-enables so you can retry. Contact support if it persists.
Related articles
- Calendar Scheduling: create, edit, move, and delete appointments
- Route Management: stop order and Rain / Delay Shift
- Visit Notes: the shared note log on each visit
- Weather: visits at risk from the forecast
- Scheduling Overview: modes and status vocabulary
- Manage Crews