Monday, September 8, 2025
6 changes · 17.0
Enhancements to existing features
Users can now rename online bank synchronization links from the form view. This helps distinguish multiple connections to the same bank, reducing confusion when managing account synchronization.
Original PR description
With some provider, you can have several links to the same bank. This can be confusing for the user. Allowing to edit the sync name from the form view can help the user sort out its links. Not a FIX, but suggestion is from opw-5004182
Resolved issues and error corrections
This fix lets customers use the portal signature form on regular pages, not only inside pop-up windows. It prevents an error that could stop users from completing signature actions in portal workflows.
Original PR description
Description of the issue/feature this PR addresses: Be able to use the portal signature form outside of a modal. Current behavior before PR: If the signature form (```<t t-call=“portal.signature_form”>```) is used outside of a modal, an error occurs: ```TypeError: Cannot read properties of null (reading 'addEventListener')``` Desired behavior after PR is merged: The signature form can be used outside of a modal. --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
Sales orders now use the loyalty reward description for free product lines instead of the product’s default name. This makes promotional offers clearer and keeps sales order behavior consistent with point of sale.
Original PR description
Currently, the reward's product name is used as the SOL name for the free product, which can be confusing. **To reproduce this issue:** 1) Install the sale_loyalty module. 2) Create a loyalty program that grants a free product. 3) Manually update the reward's description. 4) Create a SO with a SOL containing that product 5) Apply the reward and observe the behavior. **Issue / Cause:** - The free product's description is taken from the reward product's name instead of the manually updated description. - This is incorrect because, in the point of sale, the name is taken from the reward's `discount_line_product_id` rather than the `reward_product_ids`. https://github.com/odoo/odoo/blob/0abdcd9ef6ad3fc932dc0eb46d8aa973b00c34c2/addons/pos_loyalty/static/src/overrides/models/pos_order.js#L1162 **Solution:** To resolve this inconsistent behavior, the free product name in the sale order line will now be taken from discount_line_product_id. opw-4982774
On small screens, selecting items such as Preferences from the user menu now closes the burger menu as expected. This prevents dialogs from opening hidden behind the menu, making mobile navigation clearer and easier to use.
Original PR description
This commit ensures the BurgerMenu is closed when clicking on one of its items, and specifically on one of the BurgerUserMenu items. Steps to reproduce (on small screen): - on a "base" database (no app installed) - click on the BurgerMenu (top right) - click on "Preferences" => the user's preference dialog opens behind the BurgerMenu
The WhatsApp integration now uses Meta's latest Graph API version instead of an older version that is being phased out. This helps keep WhatsApp messaging reliable and reduces the risk of service disruption from upcoming API changes.
Original PR description
As outlines in the version [changelog] v17 of the API which we are currently using will be converted to the next oldest supported version of the API as per [policy] We can migrate directly to the latest version and avoid any issue in the next few years instead of having to worry about potentially breaking changes every few months. [changelog]: https://developers.facebook.com/docs/graph-api/changelog/versions/ [policy]: https://developers.facebook.com/docs/graph-api/guides/versioning task-4971841
The Belgian salary configurator now prevents employees from combining a private bike reimbursement with fuel card values. When a private bike reimbursement is active, fuel card inputs are cleared and disabled to keep salary choices consistent with policy.
Original PR description
The Belgian salary configurator allows employees to declare a private bike cost. When the "Private Bike" option is checked and its reimbursement value is greater than zero, the fuel card inputs must be reset to 0 and disabled. task-5062963