I had an extension to the sale_rental module made for odoo 8.
It adds rental duration depending pricing functionality.
Each rental service corresponding to a rental product has to be assign a quantum (staffel in dutch) which is defined seperately. Each quantum table defines the relationschip between number of rental days and the factor to multiply the base price (rental price for one day).
When adding a rental service orderline you define the number of rental days (its calculated from the start/end date) and the number of items you want to rent out.
Orderline price is calculated by making the quantity a calculated field where number of rented item * factor pulled from quantum table based in number of rental days.
You can define multiple quantum tables to suite different price modems within rental fleet.
It also adds a start/end date for the logistical actions separate from the actual fields used for the calculation as mentioned.
I had start/end dates added to order definitief so these are used as default when adding rental services to prevent having to select dates over and over.
For anyone looping intro using sale_rental: you can define rental service for each product variant and it is compatibel with lots if you want to rent out on unique product number. I had a field added to each lot pointing back to the stock location tree helping to define unique warehouse location per unique rental product despite sale_rental only operating from one single stock location (for now).
I'm open to working with other parties in developing further towards odoo 9/10/... and adding availabilty checking etc.