Timesheet Integration

Detailed guide

odoo timesheet
sales timesheet
time-based invoicing
time tracking
billable hours
hourly services

Terminology

Table

TermDefinition
TimesheetTime tracking record of employee work hours
Billable HoursHours that can be charged to customers
Non-billable HoursHours not charged (internal, training)
Service ProductHourly-based service product
Time & MaterialsBilling method based on actual time spent
Invoicing PolicyPolicy for invoice generation (hourly, milestone)
Analytic AccountAccount for tracking project costs

Prerequisites

Key points

  • Install **Timesheet** module (hr_timesheet)

  • Install **Sales Timesheet** module (sale_timesheet)

  • Set up employees with hourly cost in HR

  • Configure analytic accounts for projects

  • Set up access rights for Timesheet User


Set Up Service Product

Steps

  • 1. Go to **Sales → Products → Products**

  • 2. Create new product with **Product Type = Service**

  • 3. In **General Information** tab, select **Track Service = Timesheets on tasks**

  • 4. Set **Invoicing Policy = Based on Timesheets**

  • 5. Enter **Sales Price** (hourly rate)

  • 6. In **Sales** tab, set **Service Tracking = Create a task in an existing project**

  • 7. Select default **Project** for task creation

  • 8. Save product


Create Sales Order with Timesheet

Steps

  • 1. Go to **Sales → Orders → Quotations**

  • 2. Create new quotation, select customer

  • 3. Add service product to order lines

  • 4. Enter **Quantity** (estimated hours)

  • 5. Confirm quotation to sales order

  • 6. System automatically creates **Task** in project

  • 7. Task is linked to sales order line


Record Timesheet

Steps

  • 1. Employee goes to **Timesheets → My Timesheets**

  • 2. Click **Create** to add timesheet entry

  • 3. Select **Project** and **Task** (from sales order)

  • 4. Enter **Date** and **Hours Spent**

  • 5. Add **Description** of work done

  • 6. Save timesheet entry

  • 7. Timesheet automatically links to sales order line


Track Work Hours

Key points

  • Go to **Sales → Orders → Orders**

  • Open sales order with service product

  • View **Timesheets** tab to track recorded hours

  • Compare **Ordered Quantity** vs **Delivered Quantity**

  • Delivered Quantity = total hours in timesheets

  • Track **Remaining Hours** = Ordered - Delivered

  • Alert when exceeding sold hours


Invoice Based on Timesheet

Steps

  • 1. Open sales order with timesheet entries

  • 2. Click **Create Invoice**

  • 3. Choose **Invoice what is ordered** or **Invoice what is delivered**

  • 4. If "delivered", invoice only includes hours recorded in timesheets

  • 5. Confirm invoice

  • 6. Invoice lines show actual hours and unit price

  • 7. Send invoice to customer


Profitability Analysis

Key points

  • Go to **Sales → Reporting → Sales Analysis**

  • Filter by service products

  • View **Margin** = (Sales Price - Cost) × Hours

  • Cost = Employee Hourly Cost × Hours

  • Analyze **Profitability** by project, customer, salesperson

  • Compare **Estimated Hours** vs **Actual Hours**

  • Identify high/low profitability projects


Timesheet Validation

Steps

  • 1. Go to **Timesheets → Timesheets to Validate**

  • 2. Manager reviews pending timesheet entries

  • 3. Check validity of timesheet entries

  • 4. Click **Validate** to approve

  • 5. Only validated timesheets are included in invoices

  • 6. Reject invalid timesheets with reason


Configure Invoicing Policy

Table

PolicyDescriptionWhen to Use
Based on TimesheetsInvoice based on actual hours recorded in timesheetsTime & Materials projects, charge actual hours
Based on Ordered QuantitiesInvoice based on sold hours (fixed price)Fixed-price projects, independent of actual hours
Based on MilestonesInvoice based on milestone completionLarge projects, phased payments

Project Integration

Key points

  • Sales order automatically creates task in project

  • Task shows **Allocated Hours** from sales order

  • Employees record timesheets directly on task

  • Project manager tracks **Progress** = Hours Spent / Allocated Hours

  • Alert when task exceeds allocated hours

  • Automatically updates **Delivered Quantity** in sales order


Best Practices

Key points

  • Set accurate **hourly cost** for each employee

  • Require employees to record timesheets **daily** to avoid forgetting

  • Use **timesheet validation** for quality control

  • Monitor **remaining hours** for early budget warnings

  • Analyze **profitability** regularly to optimize pricing

  • Use **analytic accounts** for accurate cost allocation

  • Configure **email reminders** for timesheet recording

  • Set **minimum/maximum hours** for timesheet entries


Common Issues

Table

IssueCauseSolution
Timesheet not linked to sales orderTask not created from sales order or wrong product typeCheck product type = Service and Track Service = Timesheets
Cannot create invoice from timesheetTimesheet not validated or wrong invoicing policyValidate timesheet and check Invoicing Policy = Based on Timesheets
Delivered quantity not updatingTimesheet not linked to correct task/projectCheck task created from sales order, record timesheet on correct task
Margin calculated incorrectlyEmployee hourly cost not setGo to HR → Employees, set Hourly Cost for each employee

FAQ

Key points

  • **How to charge based on actual hours?** Set product with Invoicing Policy = Based on Timesheets, employees record timesheets, invoice automatically calculates actual hours.

  • **Can I limit maximum hours?** Yes, in sales order line enter Quantity = max hours, system alerts when timesheets exceed.

  • **Do timesheets need approval?** Depends on configuration, you can enable Timesheet Validation for manager approval before invoicing.

  • **How to track project profitability?** Go to Sales Analysis or Project Profitability, view Margin = (Sales Price - Employee Cost) × Hours.

  • **Can I record timesheets for multiple tasks at once?** Yes, employees can create multiple timesheet entries for different tasks on the same day.

  • **How to distinguish billable and non-billable hours?** Timesheets on tasks from sales orders are billable, timesheets on internal tasks are non-billable.

  • **Can I edit timesheets after validation?** No, after validation you need to un-validate first before editing (if you have permission).

  • **How to remind employees to record timesheets?** Configure Automated Action to send daily email reminders to employees without timesheets.

  • **Does timesheet integrate with payroll?** Yes, if Payroll module is installed, timesheets are used to calculate hourly wages.

  • **Can I import timesheets from Excel?** Yes, use Import feature in Timesheets list view, map fields correctly.