Skip to Content
Menu
v 17.0 Third Party
This module requires Odoo Enterprise Edition.
Availability
Odoo Online
Odoo.sh
On Premise
Odoo Apps Dependencies Sales (sale_management)
Subscriptions (sale_subscription)
Discuss (mail)
Invoicing (account)
Accounting (account_accountant)
Lines of code 554
Technical Name fal_invoice_milestone
LicenseOPL-1
Websitehttps://www.cluedoo.com/shop/lic-clu-set-egn-0019-sales-invoice-automation-downpayment-subscription-6672
Versions 17.0 18.0
You bought this module and need support? Click here!
Availability
Odoo Online
Odoo.sh
On Premise
Odoo Apps Dependencies Sales (sale_management)
Subscriptions (sale_subscription)
Discuss (mail)
Invoicing (account)
Accounting (account_accountant)
Lines of code 554
Technical Name fal_invoice_milestone
LicenseOPL-1
Websitehttps://www.cluedoo.com/shop/lic-clu-set-egn-0019-sales-invoice-automation-downpayment-subscription-6672
Versions 17.0 18.0

STORY BEHIND THE FEATURES

ODOO BEHAVIOR

In Odoo, invoice terms management is on the products only and do not propose the options Milestone or Subscription.

- For Milestone invoice terms:

The milestone feature is an important missing invoicing terms in Odoo.

- For subscription invoice terms:

Odoo decided to manage subscription like an independant object, quite in parallel to sales order and not like an extra invoicing policy.

CLUEDOO BEHAVIOR

For Milestone Invoice Term:

1. Invoicing Type: Downpayment

On sales order, you can define an Invoice terms policy based on milestone (40%/40%/30% for instance), created from scratch or from a template and give the forecasted invoice date.

When the event occurs, you can define the milestone term invoice date. You will get the invoice related to the milestone automatically at the date.

2. Invoicing Type: Regular

This type allows you to automatically generate an invoice on the scheduled date with the specified quantity in the transfer, making the process more efficient and seamless.

For Subscription Invoice Term:

Cluedoo defines subscription invoice term as an extra invoicing policy you propose to your customer for a sales order.

For instance, for an order of 18 000€, you propose to your customer to invoice 100% at order (invoice based on ordered quantity) or you propose to your customer to invoice monthly 1 500€ (invoice based on monthly subscription). As the subscription is just an invoicing term option, we prefer to keep the management at the sales order level and not managing another object.


CLUEDOO RECOMMENDATIONS

​​Install on 100% of the database.


HOW TO USE THIS MODULE ?


Invoicing Type: Downpayment

1

On Sales → Configuration → Invoice Rules Template, we can create a template for invoice rule. Set Percentage, Invoice date, and Invoice Forecast Date. We also can directly take this template by clicking Take Template button.

2

Sales → To Invoice → Invoice Rule. We directly have invoice term from the template. Give the invoice date



3

Create a Quotation > Select invoice rule > Confirm quotation, and you will have Run Invoice Milestone button. When you click that button, invoice will be created automatically based on the invoice date that we already set on invoice rules.

In this example, first invoice rule is 50% for the date 02/01/2021. Today is 02/01/2021, so when we click Run Invoice Milestone, it creates the invoice for 50%.
For the next invoice, it will be created automatically for the next date as we already set Auto Run Invoice Milestone.

Warning: the autorun will work best for orders with less than 10 lines. If you have bigger orders, you may have to increase the server limit for the invoice milestone to work.


Custom Formula

1


Go to Sales → Configuration → Invoice Rule Template. On an invoice rule template, we can set formula in Python programming code.


For example, we set formula to duplicate the sale order after last milestone is done.




2


Create a quotation using the invoice rule template where we already set the custom formula (duplicate sale order)



3


Click Run Invoice Milestone

4

After clicking Run Invoice Milestone, the duplicated sale order is automatically created.



Update v18

Go to Sales > Invoice Automation Template > Create a new Template

Invoicing Type: Regular

1

Set up Invoicing Type to Regular > Configure Recurrence

EX: I want to create an invoice automatically each month, so I set up Recurrence to Monthly

2

Go to Sales > Create a new Quotation > Select the Template that has just been created in the Invoice Automation Template > Add a product

EX: Add a product with Quantity: 10 and Invoicing Policy: Deliveried Quantities

Move to Invoice Automation Tab >  Can see that Recurrence is automatically inherited by the set-up in the template > Configure the Date of Next Invoice and Auto-Post Until > Confirm the order

Note:

The Date of Next Invoice: When the date set in the Date of Next Invoice is reached, an invoice will be automatically generated

Auto-Post Until: After the date set up in Auto-Post Until, there will be no invoice created automatically

​



3

Go to Delivery > Set up the Quantity > Validate the Transfer

EX: Set up the Quantity to 4

4

Go to Settings > Technical > Scheduled Actions > Search for Run Invoice Automation Regular > Click on Run Manually

Note: The behavior of this feature is to create invoices automatically based on pre-defined configuration

EX: Based on the configuration of the two fields in the image, the system will automatically run every day and update the next scheduled date for the process



5

Go back to the Order > Can see that an invoice has already been generated automatically because today is 03/28/2025, which matches the date set up in the Date of Next Invoice: 03/28/2025 > Notice that the Quantity of the Invoice is equal to the one set up in the Transfer because the Invoicing Policy of the product is Deliveried Quantities

6

After the invoice is created, the Date of Next Invoice will be updated based on the Recurrence. That means an invoice will be created automatically in 04/28/2025

Note:

In the case of an order including a product with Invoicing Policy: Deliveried Quantities , an invoice is created automatically only after the transfer is validated


7

If users set up the Invoicing Policy of the product to Ordered Quantities , an invoice will be generated automatically regardless of the validation of the transfer

Invoicing Type: Downpayment

1

Set up Invoicing Type to Downpayment > Set up fields

Note: the number in the Days feature means the number of days after the invoice date. EX: 1 Days + Invoice Date : 03/28/2025 = 03/29/2025, which means an invoice is created automatically in 03/29/2025

2

Go to Sales > Create a new Quotation > Select Invoice Automation Template  > Move to Invoice Automation Tab to see details > Can switch the Downpayment Type to Exact Amount to see the exact cost calculated based on the set-up percentage and the total cost of the order



3

Go to Settings > Technical > Scheduled Actions > Search for Run Invoice Automation Downpayment > Click on Run Manually

Note: This scheduled action's behavior is the same as Run Invoice Automation Regular

4

Go back to the Order > Can see that an invoice has already been generated automatically because today is 03/28/2025, which matches the date set up in the Date of Next Invoice: 03/28/2025 > Notice that the total cost of the invoices is calculated based on the set-up percentage and the total cost of the order

On the next intended date, an invoice will be generated (as a draft) automatically

Note: In terms of Invoice Automation Template: Downpayment , invoices are created automatically regardless of the Invoicing Policy of products


Custom Formula

Set up Custom Formula

EX: Code: sale.copy() , which means that for each automatically generated invoice on the intended date, a quotation will also be automatically created with the copied information


Odoo Proprietary License v1.0

This software and associated files (the "Software") may only be used (executed,
modified, executed after modifications) if you have purchased a valid license
from the authors, typically via Odoo Apps, or if you have received a written
agreement from the authors of the Software (see the COPYRIGHT file).

You may develop Odoo modules that use the Software as a library (typically
by depending on it, importing it and using its resources), but without copying
any source code or material from the Software. You may distribute those
modules under the license of your choice, provided that this license is
compatible with the terms of the Odoo Proprietary License (For example:
LGPL, MIT, or proprietary licenses similar to this one).

It is forbidden to publish, distribute, sublicense, or sell copies of the Software
or modified copies of the Software.

The above copyright notice and this permission notice must be included in all
copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
DEALINGS IN THE SOFTWARE.

Please log in to comment on this module

  • The author can leave a single reply to each comment.
  • This section is meant to ask simple questions or leave a rating. Every report of a problem experienced while using the module should be addressed to the author directly (refer to the following point).
  • If you want to start a discussion with the author or have a question related to your purchase, please use the support page.