OdooWiki OCA HUB

Sales Timesheet: exclude Timesheet Line from Sale Order

sale_timesheet_line_exclude folder_open OCA/timesheet open_in_new
Sales License: AGPL-3

Allows to exclude specific Timesheet line from Sale Order.

This feature proves itself useful for By Task billing approach, when a specific timesheet entry tracked towards a billable task needs to be excluded from the Sale Order.

This functionality is not available in Odoo, reported in odoo/odoo#31043.

auto_awesome What this module does

AI-generated from the code · Odoo 19.0

Adds a "Non-billable" checkbox on timesheet entries so you can keep a specific timesheet line out of the linked Sale Order, useful for By Task billing.

This module adds a "Non-billable" checkbox to timesheet entries (the account.analytic.line records). When you tick it, that timesheet line is excluded from the Sale Order: it no longer gets linked to a sale order line and is treated as non-billable, so it will not be billed to the customer.

Where you see it: - In the timesheet list and form views, next to the task and date fields. - In the Timesheets tab of a task form, just before the Sale Order Line column.

Business rules and automatic behaviour: - Ticking the checkbox forces the timesheet's invoice type to "non-billable" and clears its sale order line. - If a timesheet has already been invoiced and its sale order line uses a delivery-based invoicing policy, changing this checkbox raises a validation error, protecting already-invoiced work. - The field is not copied when duplicating a timesheet.

Access is controlled by a dedicated security group "Exclude timesheets from sale order"; only users in that group can see and use the checkbox. The module touches timesheets (account.analytic.line) and the task form (project.task), and depends on the standard Sales Timesheet app.

Depends on

sale_timesheet

Required by other modules

Models and fields (1)
  • account.analytic.line · extends an existing modelexclude_from_sale_order (Non-billable)

Text generated by AI (DeepSeek) from reading the Odoo 19.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: 8 confirmed, 1 with no information of 9 versions.

Sources · Odoo 15.0

Confirmed on 2026-11-03 in branch 15.0 of OCA/timesheet.

terminal Installation and usage

OCA documentation · Odoo 19.0

To exclude a specific timesheet entry from invoicing:

> # Go to Timesheets \> Timesheet \> All Timesheets # On the > Timesheet list view, check Non-billable for specific timesheet > entries

or:

> # Go to Project \> All Tasks, ans open a specific Task form # On > the Task form, Timesheets tab, check Non-billable for specific > timesheet entries

No verified information in OCA: Installation, Configuration.

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.