Service Billing
Post-job billing approval workflow — raise, review, and approve service invoices after completed field jobs.
Overview
Service Billing manages the financial close-out of completed field service jobs. After a technician completes a repair or maintenance visit, a billing record is created detailing the service type, labor hours, parts used, and the total amount due. These records pass through a structured approval workflow before being submitted to Finance for invoicing, ensuring that every billable job is verified and authorised before charges reach the customer.
The screen sits within the Contracts & Warranty module alongside Active Contracts and Warranty Check, giving service managers a single place to track not only which warranties are active but also what billing has been raised and approved following each job.
Where these records come from
Bills sent from Job Management are displayed here for approval and invoicing. Once a technician marks a field job Completed and clicks Push to Billing on that job, the record appears on this screen with status Pending, ready for manager review.
Key Features
Billing Record Creation
Log service charges with job description, labor hours, parts cost, and the total amount for each completed field visit.
Approval Workflow
Pending billing records must be reviewed and approved by a manager before they can be submitted for invoicing, preventing unbilled or incorrectly-billed jobs.
Status Tracking
Clear Pending → Approved → Invoiced pipeline gives every stakeholder instant visibility into where each billing record stands in the process.
Customer & Contract Linking
Associate billing records with specific customer accounts and service contracts so costs can be traced back to the originating agreement.
Billing Record Fields
When creating or editing a billing record, the following fields are available:
| Field | Required | Description |
|---|---|---|
| Customer Name | Yes | The customer who received the service. |
| Job Description | Yes | A brief description of the work performed during the visit. |
| Service Date | Yes | The date on which the field service job was completed. |
| Labor Hours | Yes | The number of technician hours worked, used to calculate the labor portion of the invoice. |
| Parts Cost | No | Total cost of replacement parts or consumables used during the job. Leave blank if no parts were needed. |
| Total Amount | Yes | The total charge to the customer (labor + parts). Calculated automatically if a labor rate is configured. |
| Status | Auto | Set automatically. Defaults to Pending on creation, then transitions to Approved and finally Invoiced. |
Billing Workflow
Service billing follows a linear approval pipeline from job completion through to finance processing:
Technicians or service coordinators create the record immediately after the job is marked complete. Managers then have full visibility of all pending records and can approve or send them back for correction. Once approved, the record is marked Invoiced after Finance confirms the invoice has been raised with the customer.
Approval Process
How approval works
Billing records start in Pending status when they are first created. A manager opens the record, reviews the labor hours, parts cost, and total amount for accuracy, then clicks Approve. Approved records receive a green badge and become eligible for submission to Finance.
If a record contains errors — incorrect hours, missing parts cost, or an incorrect total — the manager can reject it. Rejected records return to Pending status with a rejection note so the originator can correct and resubmit. This ensures that only verified, accurate billing records reach the customer-facing invoicing stage.
Status Definitions
| Status | Color | Meaning |
|---|---|---|
| Pending | Amber | The billing record has been created and is awaiting manager review and approval. |
| Approved | Green | The manager has approved the record. It is ready to be sent to Finance for customer invoicing. |
| Invoiced | Blue | The invoice has been submitted to Finance and is in the billing cycle. No further changes are permitted. |
Filtering Records
The Service Billing screen provides a filter bar to help managers and coordinators quickly locate records across large backlogs:
- Search input — Search by customer name or keywords in the job description. Results update as you type.
- Filter tabs — Quick filter pills for All, Pending, Approved, and Invoiced. Click any tab to restrict the list to that status instantly.
- Date range filter — Narrow records to a specific service date window. Useful for end-of-month billing runs or audit periods.
- Refresh button — Reload the record list from the server to pick up records added by other users since the page loaded.
The search and filter controls work together — you can search within a filtered status tab to isolate a specific customer's pending records, for example.
The four summary stat cards — Pending Approval, Approved, Rejected, and Total Billable — are shown above the search bar, so you always see the current billing pipeline totals before scanning or filtering the list below.
Selecting and Bulk-Approving Records
Every row in the billing table has a checkbox, and a header checkbox lets you select or clear every visible record at once. As soon as one or more rows are selected, a bulk action toolbar appears with an Approve action that moves all selected records from Pending to Approved in a single step. Unlike other multi-select tables in TotalApp, there is no bulk delete here — billing records represent financial history, so deleting them in bulk doesn't make sense; approving a batch of verified records at once is the action managers need most often.
Review before you bulk-approve
Bulk approve is best used after filtering to the Pending tab and confirming labor hours, parts cost, and total amounts look correct on each selected row — approval moves records one step closer to invoicing, so it should follow the same review discipline as approving records one at a time.
Table and Card Views
Service Billing respects the Settings → Appearance → List Style preference used across TotalApp, so you can switch between a dense Table view for scanning many records at once and a Card view for reviewing records individually. In Card view, each record can still be expanded to show its line items — labor hours, parts, and unit costs — exactly as in Table view, so switching views never hides that detail.
AI Assistant
Service Billing includes a chat-based AI Assistant, opened from the vertical AI Assistant tab on the right edge of the screen. The assistant has context on the billing records currently loaded (or your selection) and can help analyze pending approvals, summarize revenue across the current filter, review which records are linked to active service contracts, and surface rejection patterns worth investigating (e.g. a specific technician or job type with repeated rejections).
Like every AI Assistant panel in TotalApp, it respects your Settings → Agentic → Writer Engine selection — Ollama, Local LLM, and In-Browser models run in your browser or on your own machine, while API and Local CLI route through the server. Any assistant reply can be saved as a report with one click for later reference.
Tips
Best practices for service billing
- Create billing records immediately after job completion while labor hours and parts details are still fresh in the technician's memory.
- Always document parts used by part number and quantity in the job description field to give Finance enough detail to raise an accurate invoice.
- Managers should aim to approve or reject records within 24 hours to maintain billing velocity and avoid end-of-period backlogs.
- Cross-reference the warranty status in the Warranty Check screen before billing to confirm the job is actually billable and not covered by an active warranty or service contract.