Izveidot kontuCreate account
‹ All playbooks
Dispatch, execute and bill a field work order

ops.work-order·version 1.0.0·draft2 to verify

Dispatch, execute and bill a field work order

The job is scoped and priced before the truck rolls, the work and actuals are recorded the same day, and the customer is invoiced from those actuals.

MārisOperations Managerruns itProfile ›
Whenon an event — a customer requests a job — repair, installation, service visit or emergency call-out
Who actsthe agent acts after approval
Time30–45 min active across the life of the job; the job itself may take hours to days
Countryany country
Sign in to run thisThis playbook opens inside Brain Club. Sign in to read and run it.

When to use

A customer asks for work to be done at a site, or a recurring service visit comes due. Not for a pure quote with no work yet — that is sales.prepare-offer. Not for an internal purchase of goods with no field job — that is ops.purchase-approval. If the customer is new and unvetted, run sales.check-new-customer before S3.

Before you start

  • The rate card and travel rule are current in the work-orders module.
  • The customer exists in the CRM with a billing address; a new customer needs sales.check-new-customer first.
  • It is known who at the company approves spend and invoices when the owner is unreachable (named backup).

What a run requires4

  • Approval · S3 · ownerthe run stops until a named person records the decision
  • Approval · S5 · ownerthe run stops until a named person records the decision
  • Irreversible · S5an agent never closes it alone
  • Approval · S8 · ownerthe run stops until a named person records the decision

Any step can wait until a date and reopens by itself; every closed step leaves evidence (a note, a link, a number).

The trail10 steps

  1. Record the requestagent

    Create the work order: customer, site, contact, description, requested date, who asked and when.

    Done when the work order exists with a number and status "received".

  2. Scope the jobagent

    Call or message the contact to confirm the problem, access, and whether previous work applies (check the customer's history in the work-orders module). Attach photos to the order.

    Done when the scope is written on the order in one paragraph the technician could act on.

  3. Price itownerneeds approval · owner

    Approval · S3 · owner — the run stops until a named person records the decision

    Prepare the estimate from the rate card: estimated hours, call-out, travel, parts at list. Present it to the owner; the owner approves the price or corrects it.

    Done when the approved price is recorded on the order and the customer has it in writing (e-mail suffices).

    ⛔ Work must not be dispatched on an unapproved price — a disputed invoice is cheaper to prevent than to win.

  4. Schedule and dispatchagent

    Assign a technician and a time window, confirm with the customer, and add the site visit to the technician's task list (bc tasks add if no calendar integration is in place).

    Done when the technician has the order, the address, the contact's phone number and the confirmed window.

  5. Prepare parts; buy if neededagentneeds approval · ownerirreversible

    Approval · S5 · owner — the run stops until a named person records the decision

    Irreversible · S5 — an agent never closes it alone

    List the parts the job needs from stock. Anything not in stock goes to the owner as a purchase request with supplier and price; only approved purchases are ordered.

    Done when the parts list on the order shows each item as in stock, ordered (with approval noted), or flagged as buy-on-site.

    ⛔ On-site retail buys above the company's petty limit need the owner's approval by message before purchase — record it on the order.

  6. Execute on sitetechnician

    Do the work. Note start and end times, parts used, and photograph the state before and after.

    Done when the technician marks the job "done on site" with times and photos attached to the order.

  7. Record actuals the same dayagent

    Enter real hours, travel, and parts used into the order; compare against the estimate in S3. Any difference beyond the estimate gets a one-line reason.

    Done when actuals on the order match the technician's notes, dated the job day.

    ⛔ Actuals written three days later are the top cause of under-billing — if the technician has not reported by evening, chase the same day.

  8. Approve the invoiceownerneeds approval · owner

    Approval · S8 · owner — the run stops until a named person records the decision

    Prepare the invoice draft from the actuals, linked to the order. Present quote vs actuals; the owner approves, or sends it back with a correction (e.g. goodwill discount to record on the order).

    Done when the owner has approved the final amount.

  9. Issue and send the invoiceagent

    Issue per money.issue-invoice (correct number series, VAT as applicable — ⚠ verify the VAT rate and e-invoice format rules for the company's country at the national tax authority site, LV: vid.gov.lv).

    Done when the invoice is sent and its link is on the work order.

  10. Close and follow upagent

    Set the order to "closed and billed". Anything left open (return visit, warranty item, part on back-order) becomes a new task with a due date. Payment is watched by money.chase-overdue-invoice, not by this playbook.

    Done when no open item on the order lacks an owner and a due date.

Checks — how we know it worked

  • Invoice total = recorded actuals × rate card, line by line (read the invoice back against the order, not against memory).
  • Every part on the invoice appears on the parts list in S5, with an approval where it was bought ad hoc.
  • Photos of the work are attached to the order, dated the job day.
  • The customer's written price from S3 matches the invoice unless the owner recorded a change in S8.

If it goes wrong

SymptomResponse
Customer refuses the price on siteTechnician does not start billable work; call the owner, re-scope, get the new price in writing before continuing.
Job grew beyond the estimate mid-workStop, photograph the extra work, get the owner's approval for a revised price, confirm with the customer in writing before proceeding.
Technician did not record hoursReconstruct from calendar and site photos the same day; mark the order "actuals estimated" and tell the owner.
Part failed under warranty after invoicingOpen a new work order at zero charge referencing the original order number; claim the part from the supplier per ops.supplier-review-yearly records.
Customer disputes the invoiceDo not argue by e-mail; pull the order, the S3 written price and the photos, and respond with those attached. If it stays disputed, use ops.consumer-claim-lv for consumers.

What each step leaves behind

  1. S1the work order exists with a number and status "received".
  2. S2the scope is written on the order in one paragraph the technician could act on.
  3. S3the approved price is recorded on the order and the customer has it in writing (e-mail suffices).
  4. S4the technician has the order, the address, the contact's phone number and the confirmed window.
  5. S5the parts list on the order shows each item as in stock, ordered (with approval noted), or flagged as buy-on-site.
  6. S6the technician marks the job "done on site" with times and photos attached to the order.
  7. S7actuals on the order match the technician's notes, dated the job day.
  8. S8the owner has approved the final amount.
  9. S9the invoice is sent and its link is on the work order.
  10. S10no open item on the order lacks an owner and a due date.

Evidence to keep

Work order number · the S3 written price (e-mail or PDF) · purchase approvals for ad-hoc parts · technician's times and photos · invoice number and sent date · the owner's approval in S3 and S8 (who, when).

How this playbook improves

After every 20 orders ask: how long from request to dispatch, and which step delayed it? How many invoices needed an S8 correction, and why? Did any actuals differ from the technician's notes? Did any order close with an open item that had no follow-up? A new version changes the step that caused the delay or the correction, and says so in its change note.