Friday, June 19, 2026
12 changes · saas-19.1
Enhancements to existing features
This update incorporates support for the states of Tajikistan, Turkmenistan, Kyrgyzstan, Armenia, and Kazakhstan, aligning with international ISO 3166-2 standards. This change improves data accuracy and consistency by displaying state names instead of codes within address fields. This update is considered an improvement to the base system.
Original PR description
Added the states of Tajikistan, Turkmenistan, Kyrgyzstan, Armenian, and Kazakhstan to align with official ISO 3166-2 standards. In addition change their address format of the country to show state name instead of state code. task-6237707 task-6237595 task-6237473 task-6237440 task-6237284 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#269091
Resolved issues and error corrections
This update fixes an error in the Luxembourg localization settings, ensuring the correct valuation account (301 Inventories of raw materials) is used instead of an expense account (60761 Merchandise). This ensures accurate financial reporting for Luxembourg businesses using Odoo.
Original PR description
**Problem:** Valuation account for luxembourg is currently 60761 Merchandise which is incorrect because it's an expense account. We should rather use a current asset account like 301 Inventories of raw materials **Steps to reproduce on a fresh db:** - create a new db with modules stock_account and accountant (without demo data) - On the 'fiscal localization setting' set the package as 'Luxembourg' and save - ativate the automatic accounting setting **Current Behavior:** The 'stock valuation account' appearing below the automatic accounting setting is : 60761 Merchandise **Expected behaviour:** It should be 301 Inventories of raw materials Forward-Port-Of: odoo/odoo#270048 Forward-Port-Of: odoo/odoo#269469
This update enhances the visual clarity of the account reconciliation search dialog. The changes remove text truncation and reposition date and balance fields, making it easier for users to quickly review key financial information. This improves the user experience for managing bank reconciliations.
Original PR description
This commit will remove the text-truncate from the reference so that we have it full. Also removing the align item so that the date and balance are on top. no task id Forward-Port-Of: odoo/enterprise#120963
This update fixes a visual issue where the shadow around buttons in the spreadsheet dashboard was obscured when they were focused. The change ensures that buttons have a clear, consistent appearance, improving the user experience and overall visual quality of the dashboard. This resolves a minor aesthetic problem.
Original PR description
the searchbar container cropped the shadow of its button when they were focused. Task-6303342 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
This update restores the display of the 'amount_total' field in the Orders to Invoice view. Previously, this field was hidden as it was a technical field used only for credit limit warnings. This change ensures accurate invoice totals are visible to users, improving financial reporting and reconciliation.
Original PR description
This is a backport of 953e92b8bd79a39042c78ca7183ae73f90906c1e. `amount_to_invoice` is a technical field only used to trigger the credit limit warning on invoices/SOs and is not supposed to be shown in views. 6feba7b018e15738be145ce48be9761481e9e11a opw-6271335
This update resolves a bug that prevented users from successfully uploading cover images for Knowledge articles. The issue stemmed from a missing configuration within the article creation process, causing uploads to fail. This fix ensures a smooth and reliable cover image upload experience.
Original PR description
Steps to reproduce: 1. Install Knowledge. 2. Create an article. 3. Open the more actions menu. 4. Click "Add Cover". 5. Upload a cover image. Issue: - The upload crashes with the following traceback:…
Steps to reproduce: 1. Install Knowledge. 2. Create an article. 3. Open the more actions menu. 4. Click "Add Cover". 5. Upload a cover image. Issue: - The upload crashes with the following traceback: `Uncaught Promise > this.props.setAbortUploadsCallback is not a function` Cause: - `KnowledgeCoverSelector` extends the html_editor `ImageSelector`, whose upload flow registers an abort callback through setAbortUploadsCallback. The generic MediaDialog provides this callback, but KnowledgeCoverDialog renders KnowledgeCoverSelector directly and did not pass it. As a result, the inherited upload flow called a missing prop. Solution: - Pass setAbortUploadsCallback from KnowledgeCoverDialog to KnowledgeCoverSelector and abort pending uploads when the cover dialog is discarded. Alternative approach: - Make ImageSelector tolerate callers that do not provide setAbortUploadsCallback by calling it with optional chaining. opw-6176716 Forward-Port-Of: odoo/enterprise#120134 Forward-Port-Of: odoo/enterprise#116906
This update corrects a previous issue where fully settled customers with past pay-later payments were incorrectly prevented from seeing their Customer Statements. The fix now checks for any existing pay-later payment lines, ensuring that customers can still access their statements regardless of their overall balance. This improves the user experience for all customers.
Original PR description
The override of _compute_has_moves was checking `total_due != 0` to set `has_moves` on for PoS pay_later customers. Once the customer is fully settled however, `total_due` is 0 and the check does not pass anymore, so `has_moves` goes back to `False` and the Customer Statement button hides for them, even though they had past pay_later payment lines. The fix is to check directly for any past pay_later `pos.payment` instead, which covers the cases where partner had used pay_later payment methods before, regardless if they have settled their total due or not. opw-6173760 Forward-Port-Of: odoo/enterprise#120911 Forward-Port-Of: odoo/enterprise#116536
This update resolves an issue where new tasks created through Timesheets Assistant Rules were incorrectly set as private. The fix ensures that tasks are always associated with a project, preventing this unintended behavior and improving task management clarity. This change enhances the user experience and data accuracy within the Timesheets module.
Original PR description
Steps to reproduce: - Install Timesheets and enable Timesheets Assistant. - Go to Timesheets -> Configuration -> Assistant Rules. - Open an existing rule or create a new one. - Select a Project and enter a new Task name. Issue 1: - Click Create. - The task is created as a private task, and the project is cleared. Issue 2: - Click Create and Edit. - Remove the project and save. - The task is saved as a private task. Cause: - When using Create, the `default_project_id` from the context is not applied, so the task is created as a private task. - When using Create and Edit, users can remove the prefilled project before saving, which also results in a private task. Fix: - Pass `default_project_id` and `form_view_ref='project.view_task_form_res_partner'` in the context. This prefills the project and makes it required when creating a task. task-6293306
This update corrects a visual issue where product images in the grid layout didn't always display in the correct left-to-right order. The change ensures that product images in the product image viewer now match the visual order as seen by the user, improving the overall product presentation.
Original PR description
This commit ensures product images follow their visual order in the product image viewer when using the grid layout. Steps to reproduce: - Open a product page with multiple images (or add Extra Media…
This commit ensures product images follow their visual order in the product image viewer when using the grid layout. Steps to reproduce: - Open a product page with multiple images (or add Extra Media to the product) - Change layout mode to "Grid" and click save - Click any image to open the product image viewer - Navigate between images Images do not follow the visual left-to-right order. This regression was introduced by [commit], which replaced the row-based grid with a column-first layout. As a result, `querySelectorAll` returns images in DOM order, which no longer matches the visual order. To fix this, images are now reordered based on their visual placement in the grid so navigation matches the order seen by the user. Images are traversed in visual left-to-right order while also accounting for varying image heights and multi-column alignment. [commit]: https://github.com/odoo/odoo/commit/9a3628b9735550bf8ecc2252ea1b7338f68ab966 task-[4364143](https://www.odoo.com/odoo/project/974/tasks/4364143) Forward-Port-Of: odoo/odoo#270513 Forward-Port-Of: odoo/odoo#254077
This update resolves an issue where sending NFC-e invoices would halt the synchronization of point-of-sale (POS) data when IAP credits were exhausted. The change prevents a system block, ensuring POS data continues to update smoothly even when IAP credit limits are reached. This improves the reliability of the POS system.
Original PR description
When sending an NFC-e, tax calculation is done by calling Avatax through IAP. If the IAP account has no credits left, iap_jsonrpc() raises an InsufficientCreditError. opw-6290857 Forward-Port-Of: odoo/enterprise#120700
This update resolves a minor issue affecting the marketing automation dashboard by correcting calculations for key engagement metrics. Specifically, the 'engagement rate' KPI now accurately reflects data, ensuring more reliable reporting on campaign performance. This improves the accuracy of marketing insights.
Original PR description
This commit fixes two issues:
- KPI engagement rate ('Mailing Statistics'!B16) should be =iferror((B7+B9)/B10),0)
- KPI engagement rate n-1 ('Mailing Statistics'!C16) should be =iferror((C7+C9)/C10),0)
Task: 5418449
Forward-Port-Of: odoo/enterprise#120962This update resolves an issue where opening the chatter in the accounting module was unintentionally unfolding financial lines. This change ensures a smoother user experience by preventing unnecessary data expansion and improving performance. The fix addresses a technical detail that didn't directly impact users but contributed to a better overall system operation.
Original PR description
Before this commit, open_chatter use the selectStatementLine function that will unfold the line. But we don't want the unfold when opening the chatter. task-6306311 Forward-Port-Of: odoo/enterprise#120847