Job record
What it's for
The office job record shows what was reported, who and where, visits and parts, costing, and the status that unlocks invoicing. Technicians close jobs from their field job page; owners, office managers and dispatchers close them here. Office and field signatures are recorded against the same visit.
Reach it from Jobs at /jobs/<id>, from a dispatch-board card, or from
any link that names a job. The technician close-out walkthrough is
Close out a job; multi-visit rules live
in Multi-visit jobs.
Tabs
This screen has no separate tab pages. Jump navigation in the header scrolls the collapsible sections:
- Summary (open by default) — reported problem, location, assignment, customer signature, and status actions.
- Visits and parts (open by default) — every visit on the job plus line items. The count is visits + lines.
- Costing (open once the job is completed or invoiced; collapsed before that) — billable-to-date, labor, material, margin, not-yet-billed. This section requires permission to view costs.
- History (collapsed) — streamed audit entries; the count is how many rows that body will render.
- Notifications (collapsed) — customer communication history and send results.
Panels and controls
Header and actions
A status stepper runs Unscheduled → Scheduled → Assigned → In progress →
Completed → Invoiced. en_route and in_progress share the In progress
step. A canceled job holds at Unscheduled rather than inventing a
pre-cancel step. One exception chip appears on the title line when a
customer promise is broken (danger) or approaching (warning); otherwise the
chip is absent.
Edit opens /jobs/<id>/edit. The filled primary action is the next
forward status (Mark …), Complete job once the next status is
completed, Generate Invoice / View Invoice after completion, or a
disabled Complete job until a signature exists or the visit is waived.
Summary — customer signature
The Customer signature block renders while the job is in_progress, and
stays visible after that if a signature is already on file. Capture stores the signature privately on the visit used for completion.
Saving also requires Signer name. A blank name is refused with
Enter the signer's name. A name longer than 200 characters is refused
with Signer name must be 200 characters or fewer. After a name is
stored, the block reads Signed by that name. A signature taken before
the name field existed reads Name not recorded. When sign-off is
required, saving refreshes the record so the stored signature unlocks
completion.
Customer sign-off is required unless the company turned it off on the work order row in Settings → Signatures. While it is required, and no signature or waiver is on file, Complete job stays disabled. The reason reads Needs the customer's signature before this job can be completed. Get signature jumps to this block. Owners, office managers, and dispatchers also see Skip with a reason.
Owners, office managers, and dispatchers (anyone who can open Invoices) can waive that signature while the job is in progress and none is on file. The block has a required reason. Waive signature records who waived it and why; the block then reads "Signature waived by …". Complete without signature appears when Completed is a legal next status: it waives and completes in one step. A waived visit counts as signed for completion and for invoicing. It does not draw a signature. Checklist items, required inspection items, and a JHA stop-work still block. Technicians do not see these buttons. Complete without paperwork, beside the status actions, is the other office path: it closes the job with items still missing and blocks invoicing until they are on file.
Signature images are private and only available through the authorized job record.
Summary — status actions
Pinned to the bottom of the viewport on a phone. An optional Note sits above the buttons, up to 280 characters, and is stored with the status change. The placeholder reads Added to the status change, e.g. holding until Tuesday. Leave it blank to change status with no note. Forward statuses plus Cancel Job (cannot be undone). Completed jobs offer Generate Invoice or View Invoice, plus Create Callback WO. Invoiced jobs offer only the invoice link.
If starting work is refused, the page says Complete the arrival job hazard analysis before starting work. Owners and office managers also see Open the safety check setting. A missing before photo says Capture a before photo before starting work. That photo line appears only when the arrival template's Require a before photo to start the visit box is on.
Arrival safety check is on the job when a check is already filed, or when someone who can open Dispatch can file one. With no check yet, an assigned technician, and an active template, the form says it records the answers that technician gave by phone and that the record shows it was entered by office. Record safety check saves it. A saved office check reads Entered by office and names who entered it. A check the technician submitted does not say that. The form is absent once a check is on file, and it is absent when the visit has no assigned technician.
Side panels
Related records (customer, site, equipment, agreement) and a blocking / promise-clock card when those facts exist. There is no master rail on this record.
Contact attempts sits in that side column for owners, office managers, and dispatchers. Technicians do not see it. How is Phone, Text, Email, or In person. What happened depends on how: a phone try can be Reached, No answer, Left voicemail, Wrong number, or Refused. Text and email do not offer Left voicemail. In person offers Reached, Refused, Customer not present, and No access. When (optional) records an earlier time in the company time zone; leave it blank to log now. A time more than a few minutes ahead is refused. Note (optional) holds up to 1,000 characters. Log attempt saves it. The card counts how many tries did not reach the customer. Jobs with two or more of those show on Unreachable customers.
Line items
Visits and parts lists the visits and priced lines. Each line shows Description, Kind, Qty, Unit Price and Total. Search the price book to add an item, add an ad-hoc line, apply a template, or adjust/remove a line while the job is neither invoiced nor canceled. The subtotal, tax and total preview explains when tax is unavailable instead of showing it as zero.
On a job that is not invoiced or canceled, anyone who can open Invoices sees Set coverage on each line. Coverage is Chargeable, Warranty, Agreement labor, Agreement parts, or Goodwill. Warranty, agreement labor, agreement parts, and goodwill bill at $0. Agreement is required for agreement labor, agreement parts, or a discount, and it has to be an agreement for this job's customer or site. Discount (basis points) is only for a chargeable line: 1500 is 15% off, and it stays on the line if the agreement changes later. Explanation is required. Save coverage writes it. The line then shows a badge such as Warranty covered or Agreement labor covered. A discounted chargeable line shows the discount instead. A missing explanation says "Explain why this line's coverage is changing." A missing agreement says "Choose the agreement that covers this line."
The Costing section shows billable line totals, labour cost, material cost, margin and not-yet-billed. Material cost includes material lines, linked purchase order lines and field purchases. Margin also subtracts other line costs and recorded USD subcontractor/commission costs. It is not just billable total minus labour and materials. Margin percentage is absent when billable total is zero. Not-yet-billed is the invoice preview total, or zero for an invoiced job; unavailable tax makes that preview unavailable.
Permits
There is no dedicated Permits section on this office record.
Refrigerant
There is no dedicated Refrigerant section on this office record. Use the Refrigerant compliance report for the compliance reporting surface.
Empty states
No visits scheduled yet means the job has no visits. No line items means no priced lines have been added. History distinguishes No service history, No equipment linked and No schedule changes yet. The related-records area shows which customer, site, equipment and agreement are linked.
What it accepts
- Signature ink — drawn on the signature pad and stored privately on the visit used for completion.
- Status transitions — only legal next statuses, plus cancel from any non-terminal state. On this record, while customer sign-off is required, completing stays disabled until a signature is on file or an office waiver is recorded on the visit. The optional status Note, up to 280 characters, is stored with the status change. The completion check skips the customer signature for internal fleet work; JHA and mandatory-task gates still apply.
- Line items — add/adjust from Visits and parts while the job is not invoiced or canceled. Owners, office, and dispatchers who can open the record can edit those lines; the gate is status, not role.
- Assignment — the Assigned Technician card retargets the primary visit only. Other visits move from that visit's More visit actions menu (Reassign technician…, Reassign subcontractor…, Reschedule…) or from the dispatch board.
Signature capture and download use the visit selected by the job record.
How to configure it
- Business hours and defaults settings change scheduling windows used when this record is placed. They live under Settings.
- Invoicing settings change prebill and tax behavior once you generate an invoice from this job. They live under Settings.
- Settings → Signatures sets rental, lease, and work-order sign-off. Work-order completion on this record waits on the signature captured here (or on the technician job page), or on an office waiver with a reason, unless the work order row is Not required. Internal fleet jobs skip the customer-signature gate.
Who can see it
This screen sits behind the Jobs area.
Owners, office managers and dispatchers can open it. Technicians
cannot — they use /tech/[id]. The gate is checked on the server, not just
hidden in the sidebar, so a direct link does not get around it.
The full role matrix is on Roles & permissions.