| Availability |
Odoo Online
Odoo.sh
On Premise
|
| Odoo Apps Dependencies |
•
Discuss (mail)
• Invoicing (account) |
| Community Apps Dependencies | Show |
| Lines of code | 351 |
| Technical Name |
rental_sale_product |
| License | AGPL-3 |
| Website | https://github.com/kurniawanlucky/odoo_addons |
| Availability |
Odoo Online
Odoo.sh
On Premise
|
| Odoo Apps Dependencies |
•
Discuss (mail)
• Invoicing (account) |
| Community Apps Dependencies | Show |
| Lines of code | 351 |
| Technical Name |
rental_sale_product |
| License | AGPL-3 |
| Website | https://github.com/kurniawanlucky/odoo_addons |
Rental Management System
Manage rental products, availability, pricing, and scheduling easily
This module extends the Odoo Sales and Product apps to provide a complete rental workflow. It allows you to define rental products, set hourly/daily/weekly pricing, control availability, and prevent double bookings. First, we must install Rental Product Base. You can download it at https://apps.odoo.com/apps/modules/18.0/rental_product_base
Key Features
- New Product Type: Rental
- Flexible pricing: per hour, per day, or per week
- Rental duration with automatic breakdown (weeks / days / hours)
- Prevent overlapping rentals (double booking protection)
- Availability count and smart buttons on product form
- Calendar view to visualize ongoing and upcoming rentals
- Auto-calculated total rental price
Rental Pricing Setup Example
| Field Name | Description | Example Value |
|---|---|---|
| rental_price_per_hour | Price for 1 hour rental | 10.00 |
| rental_price_per_day | Price for 1 day rental (24h) | 100.00 |
| rental_price_per_week | Price for 1 week rental (7 days) | 600.00 |
| rental_min_hours | Minimum hours that can be rented | 4 |
| rental_min_days | Minimum days that can be rented | 1 |
| rental_min_weeks | Minimum weeks that can be rented | 0 |
Example: If a product is rented for 1 day 4 hours and your pricing is as above:
- 1 Day à 100 = 100
- 4 Hours à 10 = 40
- Total Price = 140.00
Product Form Enhancements
- Field: Total Rental Units â Define how many identical units are available.
- Field: Currently Rented â Shows how many units are currently rented.
- Field: Available Units â Auto-computed from total units minus rented ones.
- Smart Buttons:
- Active Rentals â Opens related rental orders.
- Availability â Shows how many units are available now.
Rental Calendar View
The module includes a Rental Calendar view that helps you see all current and upcoming rental bookings. Each product is color-coded, and you can quickly detect overlapping or upcoming returns.
Availability Logic Example
Example:
Total Rental Units: 3
Current Orders:
Order A â 2025-10-10 to 2025-10-12
Order B â 2025-10-11 to 2025-10-15
On 2025-10-11, 2 units are rented â 1 still available.
On 2025-10-13, both are rented â 1 available.
On 2025-10-16, all are free again.
Rental Validation and Warnings
- Prevents selecting rental dates that overlap with existing rentals.
- Shows instant warning popup when product is not available.
- Automatically rounds duration (e.g. 28 hours â 1 day 4 hours).
- Auto-calculates total rental amount based on selected duration.
Simplify and automate your rental operations
Track, price, and manage your rentals effortlessly in Odoo.
Please log in to comment on this module
rental_sale_product error during installation: File "D:\Program Files\Odoo 18\server\odoo\addons\base\models\ir_model.py", line 2238, in _xmlid_lookup raise ValueError('External ID not found in the system: %s' % xmlid) ValueError: External ID not found in the system: rental_sale_product.action_sale_rental_calendar
Re: rental_sale_product error during installation: File "D:\Program Files\Odoo 18\server\odoo\addons\base\models\ir_model.py", line 2238, in _xmlid_lookup raise ValueError('External ID not found in the system: %s' % xmlid) ValueError: External ID not found in the system: rental_sale_product.action_sale_rental_calendar
Your comment is appreciated. That issue has already been resolved. You can download and install it.
There are no comments yet!