Search 1.8 billion lines of Odoo code on GitHub


Author: Tecnativa, ACSONE SA/NV, Odoo Community Association (OCA)
License: AGPL-3
Branch: 15.0
Repository: aurestic/contract
Dependencies: account, base, mail, portal, product, and web
Languages: HTML (411, 0.6%), JavaScript (46, 0.1%), PO File (59267, 87.8%), Python (5036, 7.5%), Sass (70, 0.1%), XML (2550, 3.8%), and reStructuredText (124, 0.2%)
Other branches: 10.0, 11.0, 12.0, 13.0, 14.0, and 9.0
Other repositories: 3664236979/contract, Alfa-90/contract, App247/contract, ArkanSystem/contract, Bilbonet/contract, BipinRathod/contract, BrownRhined/contract, Bubbles-IT/contract, CarlosToledo1007/contract, Chandni8/contract, Change2improve/contract, ClearCorp/oca-contract, Comunitea/contract, Conectel/contract, Digital5-Odoo/contract, Dobtor-OCA/contract, ERPLibre/contract, Escodoo/contract, ForgeFlow/contract, G00d1/contract, Gabinete-Digital/contract, GhassenTimoumi/contract, Gofekra/contract, Guobower/contract, Haevas/contract, HomerDeoDatu/contract, ITISAG-OCA/contract, Ingeos/contract, Jarsa/contract, JpGarciiia964/contract, Khalid-SerpentCS/contract, KrishnaPrajapati-SerpentCS/contract, LasLabs/contract, LevelPrime/contract, MadsackMediaStore/contract, Martronic-SA/contract, MathBenTech/contract, MindAndGo/contract, MjAbuz/contract, NL66278/contract, NeatNerdPrime/contract, Nikul-Chaudhary/contract, OCA-MUK/contract, OCA/contract, OlhaTsiapa/contract, Openworx/contract, PESOL/contract, Peter-Morawski/contract, RoelAdriaans/contract, SSISoftware/contract, SanteLibre/contract, SerpentConsultingServices/contract, SeuMarco/contract, Stanadigme/contract, StefanRijnhart/contract, Studio73/contract, Swapnesh-SerpentCS/contract, Syci-Consulting/contract, TRESCLOUD/contract, TechnovicInfotech/contract, Tecnativa/contract, Thawah/contract, Trust-Code/trustcode-addons, Upsyd/contract, VCLS-org/contract, VisiionSolucionesTecnologicas/contract, W360S/contract, W360SCORP/contract, YevhenPechurin/contract, Zhouhao12345/contract, acm1pt-colorado/contract, acsone/contract, adminlii/contract, agenterp/contract, aitorbouzas/contract, akretion/contract, algiopensource/contract, altanmur/contract, altexcorp/contract, amcor/contract, amendoncabh/contract, angelmoya/contract, anhvu-sg/contract, antoinecln/contract, antoniofregoso/contract, apachesep/contract, apetbiz/contract, aroodooteam/contract, avanzosc/contract, bacgroup/contract, bmya/contract, bokitchan/contract, brain-tec/contract, brainbeanapps/contract, brian10048/contract, bullet92/contract, bvkl/contract, camptocamp/contract, carlos-domatix/contract, cesaraugustochirinos/contract, cgarcia0785/contract, coobyHQ/contract, coopdevs/contract, coopiteasy/contract, crnd-inc/contract, ctmil/contract, cubells/contract, dansanti/contract, daramousk/contract, devCbssolutionsRo/contract, diagramsoftware/contract, diegobgl/contract, diggy128/contract, dinhhung2512/contract, dndoanh/contract, drl9319/contract, drmedrme/contract, ecosoft-odoo/contract, efatto/contract, eittech/contract, elouafi/contract, elperrofarelo/contract, etobella/contract, exosoftware/oca-contract, fagan2888/contract, fcayre/contract, feketemihai/contract, flotho/contract, gaanto/contract, garzadekoster/contract, gastonfeng/contract, gfcapalbo/contract, git-service-it-ar/contract, goanzaloo/contract, gonxi/contract, gorozcoh/contract, grant-thornton/contract, grelpazm/contract, guramy/contract, gurneyalex/contract, haninada/contract, haroldtamo/contract, haryoran04/contract, hieulucky111/contract, hinfo506/contract, humanilog/contract, i-vyshnevska/contract, id42sistemas/contract, initOS/contract, isos/contract, isoscl/contract, it-projects-llc/contract, izzihector/contract, jacky82669513/contract, jarroyomorales/contract, jason156/contract, jeffery9/odoo-saas-tools, jiashengguo/contract, johnotoole68/contract, jordanvrtanoski/contract, joseernestomendez/contract, josuf567/contract, jpvs1978/contract, julianram/contract, keadanis/contract, kevin070982/contract, kittiu/contract, kmee/contract, kongrattapong/contract, levkar/contract, lfreeke/contract, libregob/contract, lideritjnma/contract, liweijie0812/contract, luximgroup/contract, marcel1981/contract, marcelsavegnago/trustcode-addons, martinllanos/contract, mettadipa/contract, mgielissen/contract, minhhq09/contract, molandtoxx/contract, moltisinc/contract, murtuzasaleh/contract, mybengui/contract, necrodevz/contract, newtratip/contract, nikul-serpentcs/contract, nomadic-coding/contract, norlinhenrik/contract, ntsirintanis/contract, o2deepak-zz/contract, obabawale/contract, odof/contract, odoobgorg/OCA-contract, ovnicraft/contract, patrickrwilson/contract, pdyharshad/contract, piensom/contract, popcomputadores-desenv/contract, presenceverte/contract, primes2h/contract, pscloud/contract, puchisco/contract, qsoftcorporation/contract, rakib09/contract, ravishekharco/contract, rousseldenis/contract, rsullivan2704/contract, saas-addons/contract, sadeqamin/contract, sanube/contract, sbejaoui/contract, selim-b/contract, sewisoft/contract, shine-it/contract, svalaeys/contract, sylvainvh/contract, sys-odoo/contract, t2solutions/contract, tarteo/contract, thinkopensolutions/oca-contract, thinkwelltwd/contract, tosink/contract, uktc87504/contract, unitek-solusi/OCA-contract, ursais/contract, valmarnet/contract, vdedyukhin/contract, vialaurea/contract, vidtsin/contract, vinclar/contract, vishal-serpentcs/contract, westlyou/contract, y2gsmith/contract, yasmanycastillo/contract, ygol/contract, yogesh-serpentcs/contract, and zeroincombenze/contract

Recurring - Contracts Management

Production/Stable 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.

Contracts are shown in portal.

Table of contents


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

Contracts can be viewed on the portal (list and detail) if the user logged into the portal is a follower of the contract.


  1. Contracts are in Invoicing -> Customers -> Customer and Invoicing -> Vendors -> Supplier Contracts
  2. When creating a contract, fill fields for selecting the invoicing parameters:
    • a journal
    • a price list (optional)
  3. And add the lines to be invoiced with:
    • the product with a description, a quantity and a price
    • the recurrence parameters: interval (days, weeks, months, months last day or years), start date, date of next invoice (automatically computed, can be modified) and end date (optional)
    • auto-price, for having a price automatically obtained from the price list
    • #START# or #END# in the description field to display the start/end date of the invoiced period in the invoice line description
    • pre-paid (invoice at period start) or post-paid (invoice at start of next period)
  4. The "Generate Recurring Invoices from Contracts" cron runs daily to generate the invoices. If you are in debug mode, you can click on the invoice creation button.
  5. The Show recurring invoices shortcut on contracts shows all invoices created from the contract.
  6. The contract report can be printed from the Print menu
  7. The contract can be sent by email with the Send by Email button
  8. Contract templates can be created from the Configuration -> Contracts -> Contract Templates menu. They allow to define default journal, price list and lines when creating a contract. To use it, just select the template on the contract and fields will be filled automatically.
  • Contracts appear in portal to following users in every contract:

Known issues / Roadmap

  • Recover states and others functional fields in Contracts.
  • Add recurrence flag at template level.

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.



  • Tecnativa



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