v 9.0 v 10.0 v 11.0 v 12.0 Third Party 6833
Download for v 12.0 Deploy on Odoo.sh
Required Apps Fleet (fleet)
Invoicing (account)
Lines of code 1702
Technical Name fleet_rental
Also available in version v 15.0 v 11.0 v 9.0 v 14.0 v 13.0 v 10.0
You bought this module and need support? Click here!
Required Apps Fleet (fleet)
Invoicing (account)
Lines of code 1702
Technical Name fleet_rental
Also available in version v 15.0 v 11.0 v 9.0 v 14.0 v 13.0 v 10.0

Fleet/Vehicle Rental Management

This module helps with an opportunity to give the vehicles like car,van,bike,jeep etc.. for Rent.

Cybrosys Technologies


Multiple Plans for Rental Contract(Days/Weeks/Months/Years).
Integrated with Accounting Module.
Automatically Create Recurring Invoices.
Sending email for confirmation, first payment and recurrent invoices.
Check List Facility.
Separate Tree view for Checklist.
Damage Checking Facility.
Billing Facility for Damages/Check Lists.
Contract Payment Validations.
Detailed Fleet Rental Analysis Report.
Access Rights From Multiple Level.
Flexible for further customization.


This module is an application for Vehicle Rental System which helps in managing the rental of vehicles like car,van,bike, jeep etc... It manages fleet/vehicle property by extending the basic fleet module of Odoo. Currently fleet module does not have any connection with accounting module. But in this module, we integrate the module with accounting also.

Fleet Rental Management

Fleet Rental -> Rental Management

☛ When you install the module, an extra menu named Rental Management is created under the Fleet Menu. Also "Fleet" menu is replaced as "Fleet Rental". Here you can see different color codes according to each state. This helps you in finding out contracts easily.

Fleet Rental -> Rental Management -> Rental Contract

☛ This is the Rental Contract form. You can see the Recurring lines created according to the Recurring cost. And also you can see all the invoices related to this contract from the smart button "Invoices".


☛ Checklist Tab in Rental Contract Form.

Here you can add the list of tools given with the vehicle. When the vehicle is returned back, the checklist can be validated and helps you to identify the tools that are not returned. The price of unreturned tools will be added to the missing tool cost. The renter have to pay that amount and you can also add damage cost if any. Check the damages by using the images of vehicle uploaded before the contract.

Checklist Easy Access

☛ No need to open all rental contract to see the checklist.
You can also create invoice against the checklist from here. The checklists are those which are in the checking state, that means the ones ready for checking the operation. If there is any damage or any missing tool, then you can charge all that from customer.

Email Notifications

☛The system will send email notification to notify the confirmation of contract.
☛The system will notify the first payment through email.
☛The system will remind all recurrent invoices through email.
Note:- You should configure outgoing and incoming e-mail settings from your odoo for email service.

Contract Payment Validations

☛ Here you can see you have 4 invoices and this contract is in 'Invoice' state. So you can set this contract to done only if all the invoices are in 'paid' state. Otherwise it will raise a warning as follow.

Fleet Rental Analysis Report

☛ You can also analyse all your fleet rentals from Fleet Rental -> Reports -> Fleet Rental Analysis.

Access Rights

☛Fleet Manager :- Fleet manager has the complete access across the fleet rental management
☛Fleet Rental User :- Fleet rental user can read, write and create the records.

Need Any Help?

Email Contact Us Request Customization

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.
Excellent Module
Ahmed Kamar-eddine
on 3/2/19, 3:37 PM

It is working fine now. Thanks

Issue Fixed
Cybrosys Technologies
on 2/23/19, 4:11 AM Author

The issue is fixed. Please check with the latest

more customization
hicham oub
on 7/18/19, 11:41 AM

how to do more customization?

Re: more customization
Cybrosys Technologies
on 7/26/19, 12:16 AM Author

Hi, Please send your requirements to odoo@cybrosys.com

Problem installing the module in Odoo 12
Ahmed Kamar-eddine
on 2/18/19, 1:59 PM

Hello, I have tried to install the module in Odoo 12 community but the error still exist.

Excellent module
Ahmed Kamar-eddine
on 12/1/18, 2:55 PM

Hello, I am trying to install your module in Odoo 12 Enterprise and I am getting the following error. Please advise Odoo Server Error Traceback (most recent call last): File "C:\Program Files (x86)\Odoo 12.0e\server\odoo\tools\convert.py", line 757, in parse self._tags[rec.tag](rec, de, mode=mode) File "C:\Program Files (x86)\Odoo 12.0e\server\odoo\tools\convert.py", line 612, in _tag_record raise Exception("Cannot update missing record %r" % xid) Exception: Cannot update missing record 'fleet.vehicle_state_inshop' During handling of the above exception, another exception occurred: Traceback (most recent call last): File "C:\Program Files (x86)\Odoo 12.0e\server\odoo\http.py", line 653, in _handle_exception return super(JsonRequest, self)._handle_exception(exception) File "C:\Program Files (x86)\Odoo 12.0e\server\odoo\http.py", line 312, in _handle_exception raise pycompat.reraise(type(exception), exception, sys.exc_info()[2]) File "C:\Program Files (x86)\Odoo 12.0e\server\odoo\tools\pycompat.py", line 87, in reraise raise value File "C:\Program Files (x86)\Odoo 12.0e\server\odoo\http.py", line 695, in dispatch result = self._call_function(**self.params) File "C:\Program Files (x86)\Odoo 12.0e\server\odoo\http.py", line 344, in _call_function return checked_call(self.db, *args, **kwargs) File "C:\Program Files (x86)\Odoo 12.0e\server\odoo\service\model.py", line 97, in wrapper return f(dbname, *args, **kwargs) File "C:\Program Files (x86)\Odoo 12.0e\server\odoo\http.py", line 337, in checked_call result = self.endpoint(*a, **kw) File "C:\Program Files (x86)\Odoo 12.0e\server\odoo\http.py", line 938, in __call__ return self.method(*args, **kw) File "C:\Program Files (x86)\Odoo 12.0e\server\odoo\http.py", line 517, in response_wrap response = f(*args, **kw) File "C:\Program Files (x86)\Odoo 12.0e\server\odoo\addons\web\controllers\main.py", line 966, in call_button action = self._call_kw(model, method, args, {}) File "C:\Program Files (x86)\Odoo 12.0e\server\odoo\addons\web\controllers\main.py", line 954, in _call_kw return call_kw(request.env[model], method, args, kwargs) File "C:\Program Files (x86)\Odoo 12.0e\server\odoo\api.py", line 749, in call_kw return _call_kw_multi(method, model, args, kwargs) File "C:\Program Files (x86)\Odoo 12.0e\server\odoo\api.py", line 736, in _call_kw_multi result = method(recs, *args, **kwargs) File "", line 2, in button_immediate_install File "C:\Program Files (x86)\Odoo 12.0e\server\odoo\addons\base\models\ir_module.py", line 71, in check_and_log return method(self, *args, **kwargs) File "C:\Program Files (x86)\Odoo 12.0e\server\odoo\addons\base\models\ir_module.py", line 442, in button_immediate_install return self._button_immediate_function(type(self).button_install) File "C:\Program Files (x86)\Odoo 12.0e\server\odoo\addons\base\models\ir_module.py", line 535, in _button_immediate_function modules.registry.Registry.new(self._cr.dbname, update_module=True) File "C:\Program Files (x86)\Odoo 12.0e\server\odoo\modules\registry.py", line 86, in new odoo.modules.load_modules(registry._db, force_demo, status, update_module) File "C:\Program Files (x86)\Odoo 12.0e\server\odoo\modules\loading.py", line 426, in load_modules loaded_modules, update_module, models_to_check) File "C:\Program Files (x86)\Odoo 12.0e\server\odoo\modules\loading.py", line 318, in load_marked_modules perform_checks=perform_checks, models_to_check=models_to_check File "C:\Program Files (x86)\Odoo 12.0e\server\odoo\modules\loading.py", line 224, in load_module_graph load_data(cr, idref, mode, kind='data', package=package, report=report) File "C:\Program Files (x86)\Odoo 12.0e\server\odoo\modules\loading.py", line 68, in load_data tools.convert_file(cr, package.name, filename, idref, mode, noupdate, kind, report) File "C:\Program Files (x86)\Odoo 12.0e\server\odoo\tools\convert.py", line 801, in convert_file convert_xml_import(cr, module, fp, idref, mode, noupdate, report) File "C:\Program Files (x86)\Odoo 12.0e\server\odoo\tools\convert.py", line 864, in convert_xml_import obj.parse(doc.getroot(), mode=mode) File "C:\Program Files (x86)\Odoo 12.0e\server\odoo\tools\convert.py", line 754, in parse self.parse(rec, mode) File "C:\Program Files (x86)\Odoo 12.0e\server\odoo\tools\convert.py", line 763, in parse exc_info[2] File "C:\Program Files (x86)\Odoo 12.0e\server\odoo\tools\pycompat.py", line 86, in reraise raise value.with_traceback(tb) File "C:\Program Files (x86)\Odoo 12.0e\server\odoo\tools\convert.py", line 757, in parse self._tags[rec.tag](rec, de, mode=mode) File "C:\Program Files (x86)\Odoo 12.0e\server\odoo\tools\convert.py", line 612, in _tag_record raise Exception("Cannot update missing record %r" % xid) odoo.tools.convert.ParseError: "Cannot update missing record 'fleet.vehicle_state_inshop'" while parsing file:/c:/program files (x86)/odoo 12.0e/server/odoo/addons/fleet_rental/data/fleet_rental_data.xml:10, near In shop 1