OdooWiki OCA HUB

Sale Milestone Profile Invoicing

sale_milestone_profile_invoicing folder_open OCA/sale-workflow open_in_new
Uncategorised License: AGPL-3

This module improves on sale order lines the visibility of the budget spent and invoiced for milestones products.

For this module to function properly the sale order must include one or more milestone product and one or more rate product, those products are configured as follow :

i * A milestone product is a product of type 'Service' with a service invoicing policy set as 'Milestones' and service tracking set as 'Create a task in a new project'

  • A rate is a product of type 'Service' with a service invoicing policy of 'Timesheets on tasks' and service tracking set as 'Don't create a task'.

For each milestone product the module changes the way the delivered and invoiced quantity is computed.

This module also adds two fields to the sale order line the 'Amount delivered from task' and 'Amount invoiced from task', they are computed for milestone products only.

Rates are linked to specific employees in the project configuration through the Invoicing tab.

The two 'Amount .. from task' fields are computed using the time logged by employee on a project in timesheets and the rate assigned to the employee.

In the detail view of a sale order line the same two fields are displayed as well their correspondant value in the company currency, it that currency is different to the sale order one.

auto_awesome What this module does

AI-generated from the code · Odoo 12.0

Shows, on each sales order line, how much work has been delivered and invoiced from timesheets for milestone products, and adjusts delivered/invoiced quantities accordingly.

This module adds visibility on sales order lines for milestone-type service products. On the order line, users see two new amounts: "Delivered from task" and "Invoiced from task", plus their equivalents in the company currency when the order uses a different currency.

These amounts are calculated from the timesheets recorded on the tasks linked to the line, multiplied by the hourly rate defined for each employee on the project. Only timesheets that have been invoiced (and not cancelled) count towards the invoiced amount.

For milestone products, the module changes how the delivered and invoiced quantities are computed: instead of the standard behaviour, the quantity is derived from the amount of work done from tasks divided by the unit price of the line. The invoice status of the line is also adjusted: if no employee rate is linked to the line, the line stays "Nothing to invoice" until the delivered quantity exceeds the ordered quantity, in which case it becomes "Upselling".

The new amounts appear in the order lines list (after the delivered and invoiced quantity columns) and in the detailed order line form, where the company-currency amounts are hidden when the order currency is already the company currency.

Depends on

salesale_timesheet
Models and fields (1)
  • sale.order.line · extends an existing modelcompany_currency_id (Company currency), is_company_currency, amount_invoiced_from_task (Invoiced from task), amount_delivered_from_task (Delivered from task), amount_invoiced_from_task_company_currency (Invoiced from task (company currency)), amount_delivered_from_task_company_currency (Delivered from task (company currency))

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

Sources · Odoo 12.0

Confirmed on 2026-11-03 in branch 12.0 of OCA/sale-workflow.

terminal Installation and usage

OCA documentation · Odoo 12.0

No specific configuration is needed.

To use this module, you need to:

  • Create some milestone products.
  • Create some rate products.
  • Create a project
  • Create and confirm a sale order with milestones and rates targetting the new project.
  • Configure the rates assigned to specific employees in the project configuration (Invoicing tab).
  • Add some timesheets targeting the milestones.
  • Create some invoices.
  • Watch the Amount Delivered From Task and Amount Invoiced From Task on each sale order line inform you of the sale/invoice situation.

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.