Tuesday, July 14, 2026
9 changes · saas-18.3
Enhancements to existing features
This update enhances the product configurator within Point of Sale. Now, when a barcode scan matches a product variant, the pre-selected options (like color) are automatically filled in, mirroring the experience when searching for a product by barcode. This simplifies the process for sales staff and improves accuracy.
Original PR description
When a barcode scan matches a specific product variant, the product configurator now behaves the same as when the user searches by barcode: - The `always`-mode attribute (e.g. Color) is preselected from the matched variant instead of being hidden or left blank. - The `no_variant`-mode attributes (e.g. Size) are shown for user input. opw-6220883 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#267038 Forward-Port-Of: odoo/odoo#265189
Resolved issues and error corrections
The Dutch reports module no longer shows an outdated website link that now points to unrelated content. This prevents users from being directed to the wrong external site and keeps module information accurate.
Original PR description
The URL leads to a website that has nothing to do with what it used to be so it needs to be removed. Task-6360682 Forward-Port-Of: odoo/enterprise#123019
Features or functions removed from Odoo
This update removes a redundant check within the ‘pos_self_order’ module that was incorrectly verifying if the self-ordering mode was ‘qr_code’. As ‘qr_code’ is not a valid option, this check always returned true, consuming unnecessary processing power. This change ensures smoother operation and improved efficiency.
Original PR description
Description of the issue/feature this PR addresses: Removed obsolete code checking "this.config.self_ordering_mode !== 'qr_code'". Since "qr_code" is not a valid value of the "self_ordering_mode" selection field. The condition is always true. Forward-Port-Of: odoo/odoo#273245
This update ensures that the default placeholder for the Klipy search feature displays "Search KLIPY", as required by Klipy's attribution guidelines. This change maintains compliance with Klipy's documentation and improves the user experience for Klipy users within Odoo. It was a necessary fix to align with external partner requirements.
Original PR description
Klipy requires attribution with "Search KLIPY" as the default placeholder [1]. This commit complies these guidelines. [1]: https://docs.klipy.com/attribution Forward-Port-Of: odoo/odoo#275894 Forward-Port-Of: odoo/odoo#275677
This update fixes a potential issue where loading certificates could cause the Odoo system to crash with an error message. The change ensures that loading errors are handled gracefully, preventing unexpected downtime and improving the overall stability of the certificate management process. This enhances the reliability of our secure connections.
Original PR description
Loading a certificate could raise an unhandled exception instead of failing gracefully. Clearing the content, uploading a bundle with a corrupted certificate block, or handling certificates with unsupported signature algorithms or malformed extensions all could end up in a traceback. Guard those paths to ensure loading errors are handled. opw-6370529 Description of the issue/feature this PR addresses: Current behavior before PR: Desired behavior after PR is merged: --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#275325
This update corrects a display issue where debit notes were consistently shown in English, regardless of the user's selected language. The fix prevents overriding core Odoo translation settings, ensuring that debit note titles are now correctly translated based on the user's language preference. This improves the user experience for international customers.
Original PR description
### Steps to reproduce the issue: 1. Download Invoice and Debit Notes 2. Switch to another language 3. Go to an invoice (or create a new one) 4. Create a debit note for that invoice and print it or…
### Steps to reproduce the issue: 1. Download Invoice and Debit Notes 2. Switch to another language 3. Go to an invoice (or create a new one) 4. Create a debit note for that invoice and print it or send it 5. In the PDF the title is 'INVOICE DINV....' instead of 'DEBIT NOTE DINV...' ### Cause of the issue: This PR wants to fix c81be50733fcc9db5a3c903e7a571ce87c8f12bc. In that commit, the view inheritance used position="replace" to redefine the entire document title block. By doing so, standard strings like "Invoice" and "Invoice Date" were hardcoded directly into the account_debit_note view. Since these base terms are not exported to the translation files (.pot/.po) of the account_debit_note module to prevent duplication, Odoo fails to find their translations locally. Consequently, it ignores the existing translations from the base account module and falls back to displaying the terms in English. ### Reason to introduce the fix: To restore the broken translations, we must avoid overriding the base XML nodes of the account module. Instead of replacing the entire block, this fix applies a minimal diff. This approach leaves the original base strings untouched, allowing Odoo's translation engine to successfully retrieve and apply the correct translations from the core account module. opw-6341939 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
This update resolves a crash that occurred when users deleted tabs within a website snippet. The issue stemmed from a technical glitch where tab elements weren't being fully removed from the website's code. Adding a specific setting ensures these tabs remain intact after deletion, improving website stability.
Original PR description
Steps to reproduce: 1. Drop a .s_tabs snippet 2. Click inside a tab to move the selection in it 3. Press backspace (remove each tab name + the last one should be empty) 4. Click on the "+" in the sidebar to add a Tab => Crash or on step 3: 3. Press backspace to delete one tab => Check the DOM: the tab has been removed, but the tab-pane element is still in the DOM and won't be deleted. This is easily fixed by adding `oe_unremovable` on tab links. task-4671317
This update resolves a flaky test related to marking inbox messages as read in Odoo. The fix adjusts a configuration setting to ensure the correct process is followed when opening a thread with a needaction message, guaranteeing that all messages are properly marked as read. This improves the reliability of the inbox functionality.
Original PR description
The "Opening thread with needaction messages should mark all messages of thread as read" test opens a channel that holds an inbox (needaction) message and asserts mark_all_as_read is sent. Two flows can mark that message as read: the channel messages fetch, through set_message_done, and mark_all_as_read, sent by markAsRead when the channel gets focused on open. When the self member's new_message_separator is 0, opening the channel fetches its messages around 0, and that fetch marks the message as read and drops the needaction counter to 0 before markAsRead runs. mark_all_as_read is then skipped and the step assertion receives nothing. Give the member a non-zero separator (the pre-existing message is already read) so opening the channel no longer fetches around 0, leaving mark_all_as_read as the flow that marks the inbox message read. https://runbot.odoo.com/odoo/error/243651
This update corrects an issue where invoice addresses weren't displayed on the left as intended when using specific layouts. Previously, the address was always positioned on the right if the 'Customer Address' setting wasn't enabled. This change ensures invoices display the correct address layout, improving the customer experience.
Original PR description
Issue: On an invoice PDF, using a layout with the address on the left. If a contact has a delivery address, but the option "Customer address" is not set, address will be displayed on the right instead of the left. Steps to reproduce: - Create a customer - Add a Delivery address to the customer - Ensure "Customer Address" is not set in the settings - Choose a layout with the address on the left (bubble, wave, ...) - Create an invoice to the customer - print the PDF Current behavior: - Customer address is on the right Expected behavior: - Customer address is on the left Cause: Address is displayed on the right if there is an information bloc . The information bloc was set to an empty div. Therefore, as it is set, address was displayed on the right. opw-6334130 Forward-Port-Of: odoo/odoo#273418