Recommended Modules
Sales
Project
Timesheets
Field Service (optional, but useful for on-site jobs)
Invoicing
Inventory
Employees
---
🔧 Setup & Workflow
1. Create a Sales Order with Planned Services and Materials
Create a Sales Order for the customer.
Add lines:
Product: Welding Wire – 1 kg @ $15/kg → set as storable product
Product: Welding Labor – 14 hours @ $76/hour → set as service (tracked by timesheets)
Add a section or note to describe the job ("Welding a Stair").
2. Link a Project/Task to the Order
In the sales order, link it to a Project (auto-created if the product is configured for "Timesheet on project").
A Task is created for the job (e.g., “Welding a Stair”).
3. Track Time via Timesheets
Enable the Timesheets app.
Employees A and B log their time:
On the task (via desktop or mobile).
With descriptions:
“Job preparation” – 3h on 05/19
“Weld seam reinforced” – 2h and 6h on 05/21 and 05/24
“Stair cleaned” – 2h on 05/25
Each employee’s rate is respected based on their contract (see below).
4. Configure Hourly Rates per Employee
Go to Employees > Contracts.
Set Timesheet Cost (internal cost) and Billing Rate (for invoicing).
Employee A → $76/h
Employee B → $54/h
Alternatively, use Timesheet-Based Invoicing with custom rates per employee (requires a bit of customization or third-party module if advanced rate rules are needed).
5. Consume Actual Materials
Go to the linked Delivery Order or use Inventory Adjustment to record that 2 kg of welding wire were consumed instead of 1 kg.
You can manually update the Sales Order line to match the actual material usage (2 kg × $15).
6. Create the Invoice
From the Sales Order, click Create Invoice.
Choose Timesheet and Delivered Quantities.
Odoo will generate an invoice that includes:
2 kg of welding wire @ $15 = $30
Labor lines per employee, broken down by hours and tasks.
> 💡 To make the invoice layout more descriptive (e.g., show task descriptions per employee), you may need to:
Use Analytic Lines with Descriptions
Enable the option in Invoicing Settings > Timesheet Description on Invoice
Customize the invoice template if you want extra clarity (e.g., grouped by employee).
---
🔍 Tracking Over/Under Time (Compared to Estimate)
In the Task View, you can compare:
Planned Hours (14h)
Actual Timesheet Hours (13h)
Use Reporting > Timesheet or the Project app to analyze employee contributions and discrepancies.