The takedown and the putback are not the same day, the same crew, or the same month.
Removal and reinstall work is a large share of solar service revenue, and almost no field service platform models it. A takedown happens in one month, the roofer takes however long they take, and the putback happens in another — sometimes another quarter. Treat that as one appointment and the reporting is wrong: the work shows in the month it was scheduled rather than the month it was worked, and a job that is genuinely waiting on somebody else looks stalled.
SolarProjeX treats a reroof as one work order with distinct visits. Each visit keeps its own crew, its own inspection form, its own dispatch notes and its own date. A closed trip keeps the words it was closed under, so history does not get rewritten by whatever the ticket says today. Completion follows the visits, not one flag on the work order. A putback shows in the month it was actually worked.
Billing works the way the trade works. The roofing company is frequently the payer, and the roofer's identity is stripped server-side before it ever reaches a technician's device — the field sees that a roofing account is being billed, the office sees which one. Who pays travels separately from who they are, because a tech does not need the payer's name to do the work and a competitor does not need it at all.
A reroof that's genuinely done stops showing up as open work. Once the panels are back on and the only thing left is a permit sitting at inspection, the job leaves the roofer's live board on its own — nobody has to remember to close it out by hand. If a job was already finished on a different ticket (a service visit, a separate reinstall), the office can close the stray putback with one click instead of it sitting open indefinitely.
When a tech finds damage or an upgrade opportunity while the panels are off, they can flag it with a note right there — but nothing goes out automatically. The recommendation stays an internal office note until a human decides to act on it; the office builds the quote, and each roofer account has its own setting for whether that quote bills to them or to the homeowner. Roofers can also opt in to automatic status emails as their job moves — quote ready, panels off, reinstall booked, reinstall done — so they stop having to call and ask. It's off until a company turns it on.
What it does, point by point
- One work order, two visits — takedown and putback tracked separately
- Per-visit crews: the trip that happened keeps the people who did it
- Per-visit forms, dispatch notes, job type and dates
- Completion derived from the visits, never from a single flag on the ticket
- Reporting counts a putback in the month it was worked
- A job waiting on a roofer is not counted as stalled
- Roofer identity stripped server-side before it reaches a technician
- Every invoice for one roofing account, and what is genuinely still open, on one panel
- A finished reroof leaves the roofer's live board on its own — no manual cleanup
- Upgrade opportunities found during a reroof stay an internal note until your office decides to quote it
- Each roofer account sets its own rule for whether an upgrade quote bills to them or the homeowner
- Optional automatic status emails to the roofer as the job moves — off until you turn it on
