v 9.0 v 11.0 v 12.0 Third Party 8219
Download for v 11.0 Deploy on Odoo.sh
Lines of code 1197
Technical Name contract
Also available in version v 9.0 v 14.0 v 13.0 v 15.0 v 12.0
You bought this module and need support? Click here!

Contracts Management - Recurring

Beta License: AGPL-3 OCA/contract Translate me on Weblate Try me on Runbot

This module enables contracts management with recurring invoicing functions. Also you can print and send by email contract report.

It works for customer contract and supplier contracts.

Table of contents


To view discount field in contract line, you need to set Discount on lines in user access rights.


To use this module, you need to:

  1. Go to Accounting -> Contracts and select or create a new contract.
  2. Check Generate recurring invoices automatically.
  3. Fill fields for selecting the recurrency and invoice parameters:
    • Journal
    • Pricelist
    • Period. It can be any interval of days, weeks, months, months last day or years.
    • Start date and next invoice date.
    • Invoicing type: pre-paid or post-paid.
  4. Add the lines to be invoiced with the product, description, quantity and price.
  5. You can mark Auto-price? for having a price automatically obtained applying the pricelist to the product price.
  6. You have the possibility to use the markers #START# or #END# in the description field to show the start and end date of the invoiced period.
  7. Choosing between pre-paid and post-paid, you modify the dates that are shown with the markers.
  8. A cron is created with daily interval, but if you are in debug mode, you can click on Create invoices to force this action.
  9. Click Show recurring invoices link to show all invoices created by the contract.
  10. Click on Print > Contract menu to print contract report.
  11. Click on Send by Email button to send contract by email.

Known issues / Roadmap

  • Recover states and others functional fields in Contracts.

Bug Tracker

Bugs are tracked on GitHub Issues. In case of trouble, please check there if your issue has already been reported. If you spotted it first, help us smashing it by providing a detailed and welcomed feedback.

Do not contact contributors directly about support or help with technical issues.



  • OpenERP SA
  • Tecnativa
  • LasLabs


This module is maintained by the OCA.

Odoo Community Association

OCA, or the Odoo Community Association, is a nonprofit organization whose mission is to support the collaborative development of Odoo features and promote its widespread use.

This module is part of the OCA/contract project on GitHub.

You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute.

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, please use the developer contact information. They can usually be found in the description.
Please choose a rating from 1 to 5 for this module.
There are no ratings yet!
Contract for Sales
David Thiercelin
on 4/25/18, 4:44 AM

Does this module works also for sales in order to create contract for customers? and not suppliers only.