Tuesday, September 22, 2026
2 changes · saas-18.3
Resolved issues and error corrections
The customer portal now shows only the remaining unpaid balance for overdue invoices instead of the original invoice total. This prevents customers from overpaying when an overdue invoice has already been partially paid, and ensures related payment records use the correct amount.
Original PR description
Issue: When customer pays overdue amount from the portal, it shows the total amount of the overdue invoices. However, if overdue invoices are partially paid then the customer of the invoices would be overpaying. Purpose of this PR: We should display the residual amount of the overdue invoices so that when the transaction and payment records are created, they are created with the residual amounts of the overdue invoices and not the total amount of invoices. Steps to Reproduce on Runbot: create an invoice for Joel Willis that is overdue. partially pay for the invoice. go to the portal view with Joel Willis logged in and click 'Pay Overdue' the amount shown at the top and the corresponding transaction and payment records will have the total amount of the invoice. opw-4745031 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#232195 Forward-Port-Of: odoo/odoo#210702
Rental orders can now be created successfully when an optional rental product is added, even if the website rental module is not installed. The fix makes sure rental dates are handled correctly before pricing is calculated, preventing an error that blocked order creation.
Original PR description
Problem: When the website_sale_renting module is uninstalled and you try to create a rental order with a product that has an optional rental product, the system crashes with a traceback. This happens…
Problem: When the website_sale_renting module is uninstalled and you try to create a rental order with a product that has an optional rental product, the system crashes with a traceback. This happens because the rental start and end dates are passed to the product pricing calculations as plain text strings instead of proper date formats, which breaks the timezone math. Solution: This commit ensures that the rental start and end dates are converted into proper datetime formats before any duration or pricing calculations occur, preventing the error and allowing the products to be added to the rental order smoothly. Steps to reproduce(runbot v18): 1. Install the Rental (sale_renting) and Website modules. 2. Uninstall the website_sale_renting module. 3. Create a rental product and configure another rental product as its optional product. 4. Open the Rental application and try to add the created product to a rental order. 5. A traceback is raised while calculating the rental price. opw-6485776 Forward-Port-Of: odoo/enterprise#128668