This module adds the ability to track employee time and contractor costs for Field Service Orders. It also adds functionality to create a customer invoice and a vendor bill when a Field Service Order is completed.
auto_awesome What this module does
AI-generated from the code · Odoo 16.0Track employee time and contractor costs on Field Service Orders, then create the customer invoice and the vendor bill from the order. An Accounting Stage status bar guides the order from Draft to Confirmed and Fully Invoiced.
This module adds an accounting layer to Field Service Orders. On the order form you get an Accounting tab and a status bar with the stages Draft, Needs Review, Confirmed, Fully Invoiced and Nothing Invoiced.
- Contractor Costs: a list of products, quantities and unit prices. Choosing a product fills in its cost price automatically. The Contractor Cost Estimate is computed from these lines.
- Employee Timesheets: a list of timesheet lines with employee, service product and duration. Total Employee Hours is computed from them, and the order's total cost uses each employee's hourly cost.
When you complete an order, Odoo moves it to Needs Review and blocks completion if the assigned worker is a supplier but no contractor costs are entered, or if the worker is not a supplier but no employee timesheets are entered.
A dispatcher can press Confirm: if there are contractor costs and the worker is a supplier, a vendor bill is created automatically; otherwise an error is raised. Accountants then press Create Invoice to generate a customer invoice, priced from the customer's pricelist, or No Invoice to close the order without billing.
In Accounting you get an Operations menu with a Service Orders list showing only confirmed orders, plus a Needs Review filter in the order search. The worker form shows a Vendor Bills button counting their bills. Three service products are preloaded: FSM Travel Time, FSM Regular Time and FSM Overtime.
Depends on
Menus it adds
Models and fields (3)
- fsm.order · extends an existing modelemployee, account_stage (Accounting Stage), contractor_total (Contractor Cost Estimate), contractor_cost_ids (Contractor Costs), employee_time_total (Total Employee Hours), employee_timesheet_ids (Employee Timesheets)
- fsm.person · extends an existing modelbill_count (Vendor Bills)
- fsm.order.cost · new modelquantity, price_unit (Unit Price), product_id (Product), fsm_order_id
Text generated by AI (DeepSeek) from reading the Odoo 16.0 code on GitHub; it may contain mistakes, so check the code before deciding. View the code on GitHub
Availability by version
Reviewed: 2026-11-03Confirmation status: 4 confirmed, 5 with no information of 9 versions.
Sources · Odoo 16.0
Confirmed on 2026-11-03 in branch 16.0 of OCA/field-service.
terminal Installation and usage
OCA documentation · Odoo 16.0Installation
Source · Odoo 16.0No special installation instructions
Configuration
Source · Odoo 16.0No special configuration instructions.
Usage
Source · Odoo 16.0To use the module:
On a field service order, open the "Accounting" tab. Depending on whether the logged in user or an employee or not, they will see either a place to enter timesheet records or contractor costs.
The total cost of the order is calculated based on the entries in the employee timesheet entries and contractor costs.
When an order is completed, a customer invoice will be generated for the employee time and the contractor costs. A vendor bill will be created for the contractor costs.
Installation instructions, the distribution package, dependencies and configuration steps are not shown because they have not yet been verified in the module documentation for any version.
Data imported from GitHub: this sheet reflects the latest catalog review, not a live lookup. Always check the module documentation and staging before installing in production.