Browse Source

[IMP] sale: Rewrite the 'Invoicing Method' subsection

pull/296/head
Yannick Tivisse 1 year ago
parent
commit
bcce8b4b1c
65 changed files with 388 additions and 478 deletions
  1. 7
    1
      sales/invoicing.rst
  2. 45
    0
      sales/invoicing/down_payment.rst
  3. 65
    0
      sales/invoicing/expense.rst
  4. 49
    0
      sales/invoicing/invoicing_policy.rst
  5. BIN
      sales/invoicing/media/down_payment01.png
  6. BIN
      sales/invoicing/media/down_payment02.png
  7. BIN
      sales/invoicing/media/down_payment03.png
  8. BIN
      sales/invoicing/media/down_payment04.png
  9. BIN
      sales/invoicing/media/down_payment05.png
  10. BIN
      sales/invoicing/media/expense01.png
  11. BIN
      sales/invoicing/media/expense02.png
  12. BIN
      sales/invoicing/media/expense03.png
  13. BIN
      sales/invoicing/media/expense04.png
  14. BIN
      sales/invoicing/media/expense05.png
  15. BIN
      sales/invoicing/media/expense06.png
  16. BIN
      sales/invoicing/media/expense07.png
  17. BIN
      sales/invoicing/media/invoicing_policy01.png
  18. BIN
      sales/invoicing/media/invoicing_policy02.png
  19. BIN
      sales/invoicing/media/milestone01.png
  20. BIN
      sales/invoicing/media/milestone02.png
  21. BIN
      sales/invoicing/media/proforma01.png
  22. BIN
      sales/invoicing/media/proforma02.png
  23. BIN
      sales/invoicing/media/proforma03.png
  24. BIN
      sales/invoicing/media/subscriptions01.png
  25. BIN
      sales/invoicing/media/time_materials01.png
  26. BIN
      sales/invoicing/media/time_materials02.png
  27. BIN
      sales/invoicing/media/time_materials03.png
  28. BIN
      sales/invoicing/media/time_materials04.png
  29. BIN
      sales/invoicing/media/time_materials05.png
  30. BIN
      sales/invoicing/media/time_materials06.png
  31. BIN
      sales/invoicing/media/time_materials07.png
  32. BIN
      sales/invoicing/media/time_materials08.png
  33. BIN
      sales/invoicing/media/time_materials09.png
  34. BIN
      sales/invoicing/media/time_materials10.png
  35. BIN
      sales/invoicing/media/time_materials11.png
  36. BIN
      sales/invoicing/media/time_materials12.png
  37. BIN
      sales/invoicing/media/time_materials13.png
  38. 33
    0
      sales/invoicing/milestone.rst
  39. 34
    0
      sales/invoicing/proforma.rst
  40. 0
    10
      sales/invoicing/services.rst
  41. BIN
      sales/invoicing/services/media/milestones01.png
  42. BIN
      sales/invoicing/services/media/milestones02.png
  43. BIN
      sales/invoicing/services/media/milestones03.png
  44. BIN
      sales/invoicing/services/media/milestones04.png
  45. BIN
      sales/invoicing/services/media/reinvoice01.png
  46. BIN
      sales/invoicing/services/media/reinvoice02.png
  47. BIN
      sales/invoicing/services/media/reinvoice03.png
  48. BIN
      sales/invoicing/services/media/reinvoice04.png
  49. BIN
      sales/invoicing/services/media/reinvoice05.png
  50. BIN
      sales/invoicing/services/media/reinvoice06.png
  51. BIN
      sales/invoicing/services/media/reinvoice07.png
  52. BIN
      sales/invoicing/services/media/reinvoice08.png
  53. BIN
      sales/invoicing/services/media/reinvoice09.png
  54. BIN
      sales/invoicing/services/media/support01.png
  55. BIN
      sales/invoicing/services/media/support02.png
  56. BIN
      sales/invoicing/services/media/support03.png
  57. BIN
      sales/invoicing/services/media/support04.png
  58. BIN
      sales/invoicing/services/media/support05.png
  59. BIN
      sales/invoicing/services/media/support06.png
  60. BIN
      sales/invoicing/services/media/support07.png
  61. 0
    125
      sales/invoicing/services/milestones.rst
  62. 0
    186
      sales/invoicing/services/reinvoice.rst
  63. 0
    156
      sales/invoicing/services/support.rst
  64. 19
    0
      sales/invoicing/subscriptions.rst
  65. 136
    0
      sales/invoicing/time_materials.rst

+ 7
- 1
sales/invoicing.rst View File

@@ -5,4 +5,10 @@ Invoicing Method
.. toctree::
:titlesonly:

invoicing/services
invoicing/invoicing_policy
invoicing/down_payment
invoicing/proforma
invoicing/time_materials
invoicing/milestone
invoicing/expense
invoicing/subscriptions

+ 45
- 0
sales/invoicing/down_payment.rst View File

@@ -0,0 +1,45 @@
======================
Request a down payment
======================

A down payment is an initial, partial payment, with the agreement that
the rest will be paid later. For expensive orders or projects, it is a
way to protect yourself and make sure your customer is serious.

First time you request a down payment
=====================================

When you confirm a sale, you can create an invoice and select a down
payment option. It can either be a fixed amount or a percentage of the
total amount.

The first time you request a down payment you can select an income
account and a tax setting that will be reused for next down payments.

.. image:: media/down_payment01.png
:align: center

You will then see the invoice for the down payment.

.. image:: media/down_payment02.png
:align: center

On the subsequent or final invoice, any prepayment made will be
automatically deducted.

.. image:: media/down_payment03.png
:align: center

Modify the income account and customer taxes
============================================

From the products list, search for *Down Payment*.

.. image:: media/down_payment04.png
:align: center

You can then edit it, under the invoicing tab you will be able to change
the income account & customer taxes.

.. image:: media/down_payment05.png
:align: center

+ 65
- 0
sales/invoicing/expense.rst View File

@@ -0,0 +1,65 @@
================================
Re-invoice expenses to customers
================================

It often happens that your employees have to spend their personal money
while working on a project for your client. Let's take the example of an
consultant paying an hotel to work on the site of your client. As a
company, you would like to be able to invoice that expense to your
client.

Expenses configuration
======================

To track & invoice expenses, you will need the expenses app. Go to
:menuselection:`Apps --> Expenses` to install it.

You should also activate the analytic accounts feature to link expenses
to the sales order, to do so, go to :menuselection:`Invoicing -->
Configuration --> Settings` and activate *Analytic Accounting*.

Add expenses to your sales order
================================

From the expense app, you or your consultant can create a new one, e.g.
the hotel for the first week on the site of your customer.

You can then enter a relevant description and select an existing product
or create a new one from right there.

.. image:: media/expense01.png
:align: center

Here, we are creating a *Hotel* product:

.. image:: media/expense02.png
:align: center

Under the invoicing tab, select *Delivered quantities* and either *At
cost* or *Sales price* as well depending if you want to invoice the
cost of your expense or a previously agreed on sales price.

.. image:: media/expense03.png
:align: center

To modify or create more products go to :menuselection:`Expenses -->
Configuration --> Expense products`.

Back on the expense, add the original sale order in the expense to
submit.

.. image:: media/expense04.png
:align: center

It can then be submitted to the manager, approved and finally posted.

.. image:: media/expense05.png
:align: center

.. image:: media/expense06.png
:align: center

.. image:: media/expense07.png
:align: center

It will then be in the sales order and ready to be invoiced.

+ 49
- 0
sales/invoicing/invoicing_policy.rst View File

@@ -0,0 +1,49 @@
================================================
Invoice based on delivered or ordered quantities
================================================

Depending on your business and what you sell, you have two options for
invoicing:

- Invoice on ordered quantity: invoice the full order as soon as the sales
order is confirmed.
- Invoice on delivered quantity: invoice on what you delivered even if
it's a partial delivery.

Invoice on ordered quantity is the default mode.

The benefits of using *Invoice on delivered quantity* depends on your
type of business, when you sell material, liquids or food in large
quantities the quantity might diverge a little bit and it is therefore
better to invoice the actual delivered quantity.

.. note::
You also have the ability to invoice manually, letting you
control every options: invoice ready to invoice lines, invoice a
percentage (advance), invoice a fixed advance.

Decide the policy on a product page
===================================

From any products page, under the invoicing tab you will find the
invoicing policy and select the one you want.

.. image:: media/invoicing_policy01.png
:align: center

Send the invoice
================

Once you confirm the sale, you can see your delivered and invoiced
quantities.

.. image:: media/invoicing_policy02.png
:align: center

If you set it in ordered quantities, you can invoice as soon as the sale
is confirmed. If however you selected delivered quantities, you will
first have to validate the delivery.

Once the products are delivered, you can invoice your customer. Odoo
will automatically add the quantities to invoiced based on how many you
delivered if you did a partial delivery.

BIN
sales/invoicing/media/down_payment01.png View File


BIN
sales/invoicing/media/down_payment02.png View File


BIN
sales/invoicing/media/down_payment03.png View File


BIN
sales/invoicing/media/down_payment04.png View File


BIN
sales/invoicing/media/down_payment05.png View File


BIN
sales/invoicing/media/expense01.png View File


BIN
sales/invoicing/media/expense02.png View File


BIN
sales/invoicing/media/expense03.png View File


BIN
sales/invoicing/media/expense04.png View File


BIN
sales/invoicing/media/expense05.png View File


BIN
sales/invoicing/media/expense06.png View File


BIN
sales/invoicing/media/expense07.png View File


BIN
sales/invoicing/media/invoicing_policy01.png View File


BIN
sales/invoicing/media/invoicing_policy02.png View File


BIN
sales/invoicing/media/milestone01.png View File


BIN
sales/invoicing/media/milestone02.png View File


BIN
sales/invoicing/media/proforma01.png View File


BIN
sales/invoicing/media/proforma02.png View File


BIN
sales/invoicing/media/proforma03.png View File


BIN
sales/invoicing/media/subscriptions01.png View File


BIN
sales/invoicing/media/time_materials01.png View File


BIN
sales/invoicing/media/time_materials02.png View File


BIN
sales/invoicing/media/time_materials03.png View File


BIN
sales/invoicing/media/time_materials04.png View File


BIN
sales/invoicing/media/time_materials05.png View File


BIN
sales/invoicing/media/time_materials06.png View File


BIN
sales/invoicing/media/time_materials07.png View File


BIN
sales/invoicing/media/time_materials08.png View File


BIN
sales/invoicing/media/time_materials09.png View File


BIN
sales/invoicing/media/time_materials10.png View File


BIN
sales/invoicing/media/time_materials11.png View File


BIN
sales/invoicing/media/time_materials12.png View File


BIN
sales/invoicing/media/time_materials13.png View File


+ 33
- 0
sales/invoicing/milestone.rst View File

@@ -0,0 +1,33 @@
==========================
Invoice project milestones
==========================

Milestone invoicing can be used for expensive or large-scale projects,
with each milestone representing a clear sequence of work that will
incrementally build up to the completion of the contract. This invoicing
method is comfortable both for the company which is ensured to get a
steady cash flow throughout the project lifetime and for the client who
can monitor the project's progress and pay in several installments.

Create milestone products
=========================

In Odoo, each milestone of your project is considered as a product. To
configure products to work this way, go to any product form.

You have to set the product type as *Service* under general
information and select *Milestones* in the sales tab.

.. image:: media/milestone01.png
:align: center

Invoice milestones
==================

From the sales order, you can manually edit the quantity delivered as
you complete a milestone.

.. image:: media/milestone02.png
:align: center

You can then invoice that first milestone.

+ 34
- 0
sales/invoicing/proforma.rst View File

@@ -0,0 +1,34 @@
========================
Send a pro-forma invoice
========================

A pro-forma invoice is an abridged or estimated invoice in advance of a
delivery of goods. It notes the kind and quantity of goods, their value,
and other important information such as weight and transportation
charges. Pro-forma invoices are commonly used as preliminary invoices
with a quotation, or for customs purposes in importation. They differ
from a normal invoice in not being a demand or request for payment.

Activate the feature
====================

Go to :menuselection:`SALES --> Configuration --> Settings` and activate
the *Pro-Forma Invoice* feature.

.. image:: media/proforma01.png
:align: center

Send a pro-forma invoice
========================

From any quotation or sales order, you know have an option to send a
pro-forma invoice.

.. image:: media/proforma02.png
:align: center

When you click on send, Odoo will send an email with the pro-forma
invoice in attachment.

.. image:: media/proforma03.png
:align: center

+ 0
- 10
sales/invoicing/services.rst View File

@@ -1,10 +0,0 @@
========
Services
========

.. toctree::
:titlesonly:

services/milestones
services/reinvoice
services/support

BIN
sales/invoicing/services/media/milestones01.png View File


BIN
sales/invoicing/services/media/milestones02.png View File


BIN
sales/invoicing/services/media/milestones03.png View File


BIN
sales/invoicing/services/media/milestones04.png View File


BIN
sales/invoicing/services/media/reinvoice01.png View File


BIN
sales/invoicing/services/media/reinvoice02.png View File


BIN
sales/invoicing/services/media/reinvoice03.png View File


BIN
sales/invoicing/services/media/reinvoice04.png View File


BIN
sales/invoicing/services/media/reinvoice05.png View File


BIN
sales/invoicing/services/media/reinvoice06.png View File


BIN
sales/invoicing/services/media/reinvoice07.png View File


BIN
sales/invoicing/services/media/reinvoice08.png View File


BIN
sales/invoicing/services/media/reinvoice09.png View File


BIN
sales/invoicing/services/media/support01.png View File


BIN
sales/invoicing/services/media/support02.png View File


BIN
sales/invoicing/services/media/support03.png View File


BIN
sales/invoicing/services/media/support04.png View File


BIN
sales/invoicing/services/media/support05.png View File


BIN
sales/invoicing/services/media/support06.png View File


BIN
sales/invoicing/services/media/support07.png View File


+ 0
- 125
sales/invoicing/services/milestones.rst View File

@@ -1,125 +0,0 @@
=======================================
How to invoice milestones of a project?
=======================================

There are different kind of service sales: prepaid volume of hours/days
(e.g. support contract), billing based on time and material (e.g.
billing consulting hours) or a fixed price contract (e.g. a project).

In this section, we will have a look at how to invoice milestones of a
project.

Milestone invoicing can be used for expensive or large scale projects,
with each milestone representing a clear sequence of work that will
incrementally build up to the completion of the contract. For example, a
marketing agency hired for a new product launch could break down a
project into the following milestones, each of them considered as one
service with a fixed price on the sale order :

- Milestone 1 : Marketing strategy audit - 5 000 euros

- Milestone 2 : Brand Identity - 10 000 euros

- Milestone 3 : Campaign launch & PR - 8 500 euros

In this case, an invoice will be sent to the customer each time a
milestone will be successfully reached. That invoicing method is
comfortable both for the company which is ensured to get a steady cash
flow throughout the project lifetime and for the client who can monitor
the project's progress and pay in several times.

.. note::
You can also use milestones to invoice percentages of the entire
project. For example, for a million euros project, your company
might require a 15% upfront payment, 30% at the midpoint and the
balance at the contract conclusion. In that case, each payment will
be considered as one milestone.

Configuration
=============

Install the Sales application
-----------------------------

In order to sell services and to send invoices, you need to install the
**Sales** application, from the **Apps** icon.

.. image:: media/milestones01.png
:align: center

Create products
---------------

In Odoo, each milestone of your project is considered as a product. From
the **Sales** application, use the menu :menuselection:`Sales --> Products`,
create a new product with the following setup:

- **Name**: Strategy audit

- **Product Type**: Service

- **Invoicing Policy**: Delivered Quantities, since you will invoice
your milestone after it has been delivered

- **Track Service**: Manually set quantities on order, as you
complete each milestone, you will manually update their quantity
from the **Delivered** tab on your sale order

.. image:: media/milestones02.png
:align: center

.. note::
Apply the same configuration for the others milestones.

Managing your project
=====================

Quotations and sale orders
--------------------------

Now that your milestones (or products) are created, you can create a
quotation or a sale order with each line corresponding to one milestone.
For each line, set the **Ordered Quantity** to ``1`` as each milestone is
completed once. Once the quotation is confirmed and transformed into a
sale order, you will be able to change the delivered quantities when the
corresponding milestone has been achieved.

.. image:: media/milestones03.png
:align: center

Invoice milestones
------------------

Let's assume that your first milestone (the strategy audit) has been
successfully delivered and you want to invoice it to your customer. On
the sale order, click on **Edit** and set the **Delivered Quantity** of the
related product to ``1``.

.. tip::
As soon as the above modification has been saved, you will notice
that the color of the line has changed to blue, meaning that the
service can now be invoiced. In the same time, the invoice status
of the SO has changed from **Nothing To Invoice** to **To Invoice**

Click on **Create invoice** and, in the new window that pops up, select
**Invoiceable lines** and validate. It will create a new invoice (in draft
status) with only the **strategy audit** product as invoiceable.

.. image:: media/milestones04.png
:align: center

.. note::
In order to be able to invoice a product, you need to set up the
**Accounting** application and to configure an accounting journal
and a chart of account. Click on the following link to learn more:
:doc:`../../../accounting/overview/getting_started/setup`

Back on your sale order, you will notice that the **Invoiced** column of
your order line has been updated accordingly and that the **Invoice
Status** is back to **Nothing to Invoice**.

Follow the same workflow to invoice your remaining milestones.

.. seealso::
* :doc:`reinvoice`
* :doc:`support`

+ 0
- 186
sales/invoicing/services/reinvoice.rst View File

@@ -1,186 +0,0 @@
=============================================
How to re-invoice expenses to your customers?
=============================================

It often happens that your employees have to spend their personal money
while working on a project for your client. Let's take the example of an
employee paying a parking spot for a meeting with your client. As a
company, you would like to be able to invoice that expense to your
client.

In this documentation we will see two use cases. The first, very basic,
consists of invoicing a simple expense to your client like you would do
for a product. The second, more advanced, will consist of invoicing
expenses entered in your expense system by your employees directly to
your customer.

Use case 1: Simple expense invoicing
====================================

Let's take the following example. You are working on a promotion
campaign for one of your customers (``Agrolait``) and you have to print a
lot of copies. Those copies are an expense for your company and you
would like to invoice them.

Configuration
-------------

In order to sell services and to send invoices, you need to install the
**Sales** application, from the **Apps** icon.

.. image:: media/reinvoice01.png
:align: center

Create product to be expensed
-----------------------------

You will need now to create a product called ``Copies``.

From your **Sales** module, go to :menuselection:`Sales --> Products`
and create a product as follows:

- **Product type**: consumable

- **Invoicing policy**: on delivered quantities (you will manually
set the quantities to invoice on the sale order)

.. image:: media/reinvoice02.png
:align: center

Create a sale order
-------------------

Now that your product is correctly set up, you can create a sale order
for that product (from the menu :menuselection:`Sales --> Sales Orders`)
with the ordered quantities set to 0.
Click on **Confirm the Sale** to create the sale
order. You will be able then to manually change the delivered quantities
on the sale order to reinvoice the copies to your customer.

.. image:: media/reinvoice03.png
:align: center

Invoice expense to your client
------------------------------

At the end of the month, you have printed ``1000`` copies on behalf of your
client and you want to re-invoice them. From the related sale order,
click on **Delivered Quantities**, manually enter the correct amount of
copies and click on **Save**. Your order line will turn blue, meaning that
it is ready to be invoiced. Click on **Create invoice**.

.. note::
The total amount on your sale order will be of 0 as it is computed on
the ordered quantities. It is your invoice which will compute the
correct amount due by your customer.

The invoice generated is in draft, so you can always control the
quantities and change the amount if needed. You will notice that the
amount to be invoiced is based here on the delivered quantities.

.. image:: media/reinvoice04.png
:align: center

Click on validate to issue the payment to your customer.

Use case 2: Invoice expenses via the expense module
===================================================

To illustrate this case, let's imagine that your company sells some
consultancy service to your customer ``Agrolait`` and both parties agreed
that the distance covered by your consultant will be re-invoiced at
cost.

Configuration
-------------

Here, you will need to install two more modules:

- Expense Tracker

- Accounting, where you will need to activate the analytic accounting
from the settings

.. image:: media/reinvoice05.png
:align: center

Create a product to be expensed
-------------------------------

You will now need to create a product called ``Kilometers``.

From your **Sales** module, go to :menuselection:`Sales --> Products`
and create a product as follows:

- Product can be expensed

- Product type: Service

- Invoicing policy: invoice based on time and material

- Expense invoicing policy: At cost

- Track service: manually set quantities on order

.. image:: media/reinvoice06.png
:align: center

Create a sales order
--------------------

Still from the Sales module, go to :menuselection:`Sales --> Sales Orders`
and add your product **Consultancy** on the order line.

.. tip::
If your product doesn't exist yet, you can configure it on the fly
from the SO. Just type the name on the **product** field and click
on **Create and edit** to configure it.

Depending on your product configuration, an **Analytic Account** may have
been generated automatically. If not, you can easily create one in order
to link your expenses to the sale order. Do not forget to confirm the
sale order.

.. image:: media/reinvoice07.png
:align: center

.. note::
Refer to the documentation :doc:`../../../accounting/others/analytic/usage`
to learn more about that concept.

Create expense and link it to SO
--------------------------------

Let's assume that your consultant covered ``1.000km`` in October as part
of his consultancy project. We will create a expense for it and link
it to the related sales order thanks to the analytic account.

Go to the **Expenses** module and click on **Create**. Record your expense
as follows:

- **Expense description**: Kilometers October 2015

- **Product**: Kilometers

- **Quantity**: 1.000

- **Analytic account**: SO0019 - Agrolait

.. image:: media/reinvoice08.png
:align: center

Click on **Submit to manager**. As soon as the expense has been validated
and posted to the journal entries, a new line corresponding to the
expense will automatically be generated on the sale order.

Invoice expense to your client
------------------------------

You can now invoice the invoiceable lines to your customer.

.. image:: media/reinvoice09.png
:align: center

.. seealso::
* :doc:`support`
* :doc:`milestones`

+ 0
- 156
sales/invoicing/services/support.rst View File

@@ -1,156 +0,0 @@
==================================================
How to invoice a support contract (prepaid hours)?
==================================================

There are different kinds of service sales: prepaid volume of hours/days
(e.g. support contract), billing based on time and material (e.g.
billing consulting hours) and a fixed price contract (e.g. a project).

In this section, we will have a look at how to sell and keep track of a
pre-paid support contract.

As an example, you may sell a pack of ``50 Hours`` of support at ``$25,000``.
The price is fixed and charged initially. But you want to keep track of
the support service you did for the customer.

Configuration
=============

Install the Sales and Timesheet applications
--------------------------------------------

In order to sell services, you need to install the **Sales** application,
from the **Apps** icon. Install also the **Timesheets** application if you want
to track support services you worked on every contract.

.. image:: media/support01.png
:align: center

.. image:: media/support02.png
:align: center

Create Products
---------------

By default, products are sold by number of units. In order to sell
services ``per hour``, you must allow using multiple unit of measures.
From the **Sales** application, go to the menu
:menuselection:`Configuration --> Settings`.
From this screen, activate the multiple **Unit of Measures** option.

.. image:: media/support03.png
:align: center

In order to sell a support contract, you must create a product for every
support contract you sell. From the **Sales** application, use the menu
:menuselection:`Sales --> Products`, create a new product with the following setup:

- **Name**: Technical Support

- **Product Type**: Service

- **Unit of Measure**: Hours

- **Invoicing Policy**: Ordered Quantities, since the service is
prepaid, we will invoice the service based on what has been
ordered, not based on delivered quantities.

- **Track Service**: Timesheet on contracts. An analytic account will
automatically be created for every order containing this service
so that you can track hours in the related account.

.. image:: media/support04.png
:align: center

.. tip::
There are different ways to track the service related to a sales
order or product sold. With the above configuration, you can only
sell one support contract per order. If your customer orders
several service contracts on timesheet, you will have to split
the quotation into several orders.

Note that you can sell in different unit of measure than hours, example:
days, pack of 40h, etc. To do that, just create a new unit of measure in
the **Unit of Measure** category and set a conversion ratio compared to
**Hours** (example: ``1 day = 8 hours``).

Managing support contract
=========================

Quotations and Sales Orders
---------------------------

Once the product is created, you can create a quotation or a sales order
with the related product. Once the quotation is confirmed and
transformed into a sales order, your users will be able to record
services related to this support contract using the timesheet
application.

.. image:: media/support05.png
:align: center

Timesheets
----------

To track the service you do on a specific contract, you should use the
timesheet application. An analytic account related to the sale order has
been automatically created (``SO009 - Agrolait`` on the screenshot here
above), so you can start tracking services as soon as it has been sold.

.. image:: media/support06.png
:align: center

Control delivered support on the sales order
--------------------------------------------

From the **Sales** application, use the menu
:menuselection:`Sales --> Sales Orders` to control
the progress of every order. On the sales order line related to the
support contract, you should see the **Delivered Quantities** that are
updated automatically, based on the number of hours in the timesheet.

.. image:: media/support07.png
:align: center

Upselling and renewal
---------------------

If the number of hours you performed on the support contract is bigger
or equal to the number of hours the customer purchased, you are
suggested to sell an extra contract to the customer since they
used all their quota of service.
Periodically (ideally once every two weeks), you should check the sales
order that are in such a case.
To do so, go to :menuselection:`Sales --> Invoicing --> Orders to Upsell`.

.. tip::
If you use Odoo CRM, a good practice is to create an opportunity for
every sale order in upselling invoice status so that you easily track
your upselling effort.

If you sell an extra support contract, you can either add a new line on
the existing sales order (thus, you continue to timesheet on the same
order) or create a new order (thus, people will timesheet their hours on
the new contract). To unmark the sales order as **Upselling**, you can set
the sales order as done and it will disappear from your upselling list.

Special Configuration
=====================

When creating the product form, you may set a different approach to
track the service:

- **Create task and track hours**: in this mode, a task is created for
every sales order line. Then when you do the timesheet, you don't
record hours on a sales order/contract, but you record hours on a
task (that represents the contract). The advantage of this
solution is that it allows to sell several service contracts
within the same sales order.

- **Manually**: you can use this mode if you don't record timesheets in
Odoo. The number of hours you worked on a specific contract can
be recorded manually on the sales order line directly, in the
delivered quantity field.

.. seealso::
* :doc:`../../../inventory/settings/products/uom`

+ 19
- 0
sales/invoicing/subscriptions.rst View File

@@ -0,0 +1,19 @@
==================
Sell subscriptions
==================

Selling subscription products will give you predictable revenue, making
planning ahead much easier.

Make a subscription from a sales order
======================================

From the sales app, create a quotation to the desired customer, and
select the subscription product your previously created.

When you confirm the sale the subscription will be created
automatically. You will see a direct link from the sales order to the
Subscription in the upper right corner.

.. image:: media/subscriptions01.png
:align: center

+ 136
- 0
sales/invoicing/time_materials.rst View File

@@ -0,0 +1,136 @@
===================================
Invoice based on time and materials
===================================

Time and Materials is generally used in projects in which it is not
possible to accurately estimate the size of the project, or when it is
expected that the project requirements would most likely change.

This is opposed to a fixed-price contract in which the owner agrees to
pay the contractor a lump sum for the fulfillment of the contract no
matter what the contractors pay their employees, sub-contractors, and
suppliers.

For this documentation I will use the example of a consultant, you will
need to invoice their time, their various expenses (transport,
lodging, ...) and purchases.

Invoice time configuration
==========================

To keep track of progress in the project, you will need the *Project*
app. Go to :menuselection:`Apps --> Project` to install it.

In *Project* you will use timesheets, to do so go to
:menuselection:`Project --> Configuration --> Settings` and activate the
*Timesheets* feature.

.. image:: media/time_materials01.png
:align: center

Invoice your time spent
=======================

From a product page set as a service, you will find two options under
the invoicing tab, select both *Timesheets on tasks* and *Create a
task in a new project*.

.. image:: media/time_materials02.png
:align: center

You could also add the task to an existing project.

Once confirming a sales order, you will now see two new buttons, one for
the project overview and one for the current task.

.. image:: media/time_materials03.png
:align: center

You will directly be in the task if you click on it, you can also access
it from the *Project* app.

Under timesheets, you can assign who works on it. You can or they can
add how many hours they worked on the project so far.

.. image:: media/time_materials04.png
:align: center

From the sales order, you can then invoice those hours.

.. image:: media/time_materials05.png
:align: center

Expenses configuration
======================

To track & invoice expenses, you will need the expenses app. Go to
:menuselection:`Apps --> Expenses` to install it.

You should also activate the analytic accounts feature to link expenses
to the sales order, to do so, go to :menuselection:`Invoicing -->
Configuration --> Settings` and activate *Analytic Accounting*.

Add expenses to your sales order
================================

From the expense app, you or your consultant can create a new one, e.g.
the hotel for the first week on the site of your customer.

You can then enter a relevant description and select an existing product
or create a new one from right there.

.. image:: media/time_materials06.png
:align: center

Here, we are creating a *Hotel* product:

.. image:: media/time_materials07.png
:align: center

under the invoicing tab, select *Delivered quantities* and either *At
cost* or *Sales price* as well depending if you want to invoice the
cost of your expense or a previously agreed on sales price.

.. image:: media/time_materials08.png
:align: center

To modify or create more products go to :menuselection:`Expenses -->
Configuration --> Expense products`.

Back on the expense, add the original sale order in the expense to
submit.

.. image:: media/time_materials09.png
:align: center

It can then be submitted to the manager, approved and finally posted.

.. image:: media/time_materials10.png
:align: center

.. image:: media/time_materials11.png
:align: center

.. image:: media/time_materials12.png
:align: center

It will then be in the sales order and ready to be invoiced.

Invoice purchases
=================

The last thing you might need to add to the sale order is purchases made
for it.

You will need the *Purchase Analytics* feature, to activate it, go to
:menuselection:`Invoicing --> Configuration --> Settings` and select
*Purchase Analytics*.

While making the purchase order don't forget to add the right analytic
account.

.. image:: media/time_materials08.png
:align: center

Once the PO is confirmed and received, you can create the vendor bill,
this will automatically add it to the SO where you can invoice it.

Loading…
Cancel
Save