Timesheet details invoice description
This module allows to add timesheets details on invoices.
auto_awesome What this module does
AI-generated from the code · Odoo 18.0Adds timesheet details (date, time spent, description) to invoice lines generated from sales orders with timesheet-based services, and can split an invoice line into one line per timesheet.
When you invoice a sales order whose products are billed on timesheets, this module can write the details of each timesheet directly into the invoice line description.
On the sales order form you get two new fields: a choice of what to show in the invoice description (None, Date - Time spent - Description, Date - Description, Description, or Time spent - Description) and a checkbox to split order lines by timesheets. The default choice can be set once in the Sales settings, under the time billing option.
When the invoice is created, each timesheet is linked to the invoice line it belongs to. If a description format is chosen, the invoice line text is extended with one line per timesheet, sorted by date. If the split option is ticked, the original invoice line is replaced by a section line plus one invoice line per timesheet, with quantities converted to the invoice line's unit of measure.
This only applies to products with the timesheet service type and the delivery-based invoicing policy. The module touches sale.order, sale.order.line, account.move.line, account.analytic.line and the sales settings screen.
Depends on
Models and fields (5)
- sale.order · extends an existing modeltimesheet_invoice_split (Split Order lines by timesheets), timesheet_invoice_description (_get_timesheet_invoice_description)
- sale.order.line · extends an existing model
- account.move.line · extends an existing modeltimesheet_ids (Timesheets), timesheet_invoice_split (Split Order lines by timesheets), timesheet_invoice_description
- res.config.settings · extends an existing modeldefault_timesheet_invoice_description (Timesheet Invoice Description)
- account.analytic.line · extends an existing modeltimesheet_invoice_line_id (Invoice Line)
Text generated by AI (DeepSeek) from reading the Odoo 18.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: 7 confirmed, 2 with no information of 9 versions.
Sources · Odoo 14.0
Confirmed on 2026-11-03 in branch 14.0 of OCA/account-invoicing.
terminal Installation and usage
OCA documentation · Odoo 18.0Configuration
Source · Odoo 18.0To configure this module, you need to:
- Go to Timesheets \> Configuration \> Settings and select an option from Timesheet Invoice Description under Billing section.
Usage
Source · Odoo 18.0To use this module, you need to:
- Create or modify a product and set the following options under 'General Information' tab:
- Product Type \> 'Service'
- Invoicing Policy \> 'Based on Timesheets'
- Create on Order \> 'Project & Task'
- Unit of Measure \> 'Hours' (or any other time unit)
- Go to Sales \> Orders \> Orders, select a Sale Order or create a new one, add a product (service) under 'Order Lines' tab.
- Go to 'Other Info' tab (within the same Sale Order) and:
- Select an option from Timesheet Invoice Description.
- Tick off Split Order lines by timesheets, if you want to create an invoice line per each Sale Order timesheet's line.
- Link the Sale Order with a project from Project field.
- Confirm Sale.
- Go to Timesheets \> Timesheets \> My Timesheets, create a record (timesheet line) and select a task related to the Sale Order's project (and to your specific Sale Order's line). Remember to add the time spent.
- Go to the Sale Order and create its invoice (click on 'Create Invoice').
No verified information in OCA: Installation.
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.