OdooWiki OCA HUB

Timesheet details invoice description

sale_timesheet_invoice_description folder_open OCA/account-invoicing open_in_new
Sales Management License: AGPL-3

This module allows to add timesheets details on invoices.

auto_awesome What this module does

AI-generated from the code · Odoo 18.0

Adds 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

sale_timesheet
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-03
Confirmed (verified in repository and branch) Estimated (unverified) No information

Confirmation status: 7 confirmed, 2 with no information of 9 versions.

Sources · Odoo 12.0

Confirmed on 2026-11-03 in branch 12.0 of OCA/account-invoicing.

terminal Installation and usage

OCA documentation · Odoo 18.0

To configure this module, you need to:

  • Go to Timesheets \> Configuration \> Settings and select an option from Timesheet Invoice Description under Billing section.

To 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.

info

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.