Odoo Help


Generate Invoice from Timesheet

Sophie Kowalski
on 10/19/15, 8:38 AM 4,851 views

How do I generate Invoices from Timesheets in odoo version 9.0? 

I want the employees to use the timesheet to note the time spent in helping a customer and once a month I generate an invoice from all the timesheets for each Support-Customer.

Does anyone know how to do this? In previous versions of odoo you pressed the "Invoice Tasks" link on the projects page. This is a fairly fundamental thing for odoo to be able to do. If it can't do it any more it kind of kills its usefulness for a lot of people. There seems to a lot of people viewing this issue, but no one coming up with an answer. Does this mean that there's problem?

Paul Jeanneret
on 12/4/15, 9:51 AM

Ray Carnes

--Ray Carnes--
| 9 7 9
Keyport, United States
--Ray Carnes--

Senior ERP Analyst

OpenERP 6.1, 7.0; Odoo 8.0, 9.0, 10.0 and 11.0.

Completed Odoo Functional and Technical Training.

Functional Areas:

  • CRM/Sales

  • Inventory

  • Manufacturing

  • Accounting

  • Purchasing

Major Skills:

  • Business Process Reengineering

  • Efficiency Consulting

  • User Needs and GAP Analysis;

  • Functional and Technical Design;

  • Prototyping and Proof of Concepts;

  • Requirements Specifications;

  • Agile Implementation;

  • Data Migration;

  • Configuration & Customization (UI and code);

  • Integration - Odoo and non Odoo Applications and Services;

  • Training and Knowledge Transfer;

  • Go Live Support;

  • Helpdesk;

  • Version Upgrades and Migration.

  • Accounting Expert.

I have over 20 years of experience empowering and enabling users with enterprise information systems that make a real and measurable difference in their ability to proactively manage their businesses and organizations. 

I am a skilled Communicator and I only take the serious things seriously!

Ray Carnes
On 12/4/15, 8:23 PM

There are several ways to do this, but a simple way is:

1. Create a Product.

  • Product Type = Service

  • Invoicing Policy = Delivered Quantities

  • Track Service = Timesheets on Contract

2. Create a Sales Order, showing the Product (you can just put 1 unit, so the Customer knows the hourly rate).

3. Create a Timesheet, and select the relevant Analytic Account.  It is in the format [Order Reference]-[Customer Name]

  • Use the Summary tab, if all you need is hours logged per day.

  • Use the Detail tab, if you need descriptive information relating to the hours logged.

4. From Sales --> Invoicing --> Orders to Invoice, you will see the total hours that have been logged in the Delivered column.  Click Create Invoice.  

Note: The Invoiced Column on the Sales Order keeps track of what's already been Invoiced, so you can keep Invoicing at regular intervals from the same Sales Order until you stop providing service for your Customer.

I'm starting to get there, but something's still not right. I've got the timesheets working fine and the Sales order and product setup. When I go to "create invoice" I get the prompt to select how the invoicing's to be done (Invoice lines) but then I get nothing. One thing that does occur to be that could be wrong - the "delivered" column on the sales order is set to 0 (qty is right, delivered is 0, invoiced is 0, totals to invoice are correct). Is there an option to include the timesheet details in the invoice? My customers like to know what they've spent their money on, and it's really helpful to have all the details in one place. That used to be an option in V8.

Paul Jeanneret
on 12/6/15, 2:53 AM

Check your work. The timesheet isn't getting attached to the Sale Order. Are you selecting the correct Account? "SO00001 - Customer"? To print timesheet lines on an Invoice, you need to link the Invoice to the Sales Order(s) with a module like https://apps.openerp.com/apps/modules/8.0/account_invoice_sale_link/ and then customize the Invoice report - <tr t-foreach="o.sale_ids" t-as="s"> { print the column headings } <tr t-foreach="s.timesheet_ids" t-as="t"> {print the timesheet line data} </tr> </tr>

Ray Carnes
on 12/6/15, 3:18 PM

Thx for the explanation. Is there any direct way to invoice timesheets or account_analytic_lines like in version 8,7, 6...? This is way to complicated to have to create a sale order.

OpenCloud Unipessoal LDA, Ricardo Martins
on 12/29/15, 9:18 AM

About This Community

This platform is for beginners and experts willing to share their Odoo knowledge. It's not a forum to discuss ideas, but a knowledge base of questions and their answers.


Odoo Training Center

Access to our E-learning platform and experience all Odoo Apps through learning videos, exercises and Quizz.

Test it now

Question tools

3 follower(s)


Asked: 10/19/15, 8:38 AM
Seen: 4851 times
Last updated: 3/7/17, 3:46 AM