Tuesday, February 24, 2026
14 changes · 17.0
Enhancements to existing features
- CFE series now support numbers. Document numbers could have a sequence of 1 alphanumeric character + 7 digits or 2 alphanumeric + 7 digits. Users will now be expected to input a valid document number. With the new alphanumeric series, it will be difficult to support a reformatting of document number. task-5419331 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
Original PR description
- CFE series now support numbers. Document numbers could have a sequence of 1 alphanumeric character + 7 digits or 2 alphanumeric + 7 digits. Users will now be expected to input a valid document number. With the new alphanumeric series, it will be difficult to support a reformatting of document number. task-5419331 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
Resolved issues and error corrections
This update corrects a visual imbalance in the layout of Knowledge articles, specifically addressing an uneven gutter size in the editor. The change ensures a more balanced and professional appearance for all Knowledge articles, improving user experience. This fix addresses a minor aesthetic issue and enhances overall consistency.
Original PR description
There is a visual imbalance in the Knowledge article layout where horizontal padding is asymmetric in the editor content. How to reproduce: Open any Knowledge article and observe the horizontal spacing. The right gutter appears larger than the left one. Issue: The layout applies padding-left: var(--editor-gutter-size) and padding-right: calc(var(--editor-gutter-size) + 2rem), which creates a larger right gutter and makes the article content appear visually unbalanced. Resolution: Make the horizontal padding symmetric by applying the same offset on both sides using a logical property.This preserves sufficient spacing for floating UI elements while improving visual balance and ensuring consistency. Task-5222643
Code cleanup and technical improvements
This pull request streamlines the management of our internationalization (I18n) files by re-exporting the ‘base.pot’ file. Previously, this file was not readily accessible for translation updates, leading to potential delays. Now, it’s more easily available for translators to contribute to our global support for different languages.
Original PR description
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 fixes an issue where the X/Z report incorrectly identified refund lines based on negative quantity. Now, refund lines are correctly selected based on negative amounts, ensuring accurate reporting of returned items. This improves the reliability of sales data analysis.
Original PR description
Previously, on the X/Z report, the refund lines were the lines with a negative quantity. Now they are chosen if they have a negative amount. --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
This update ensures that free products offered through loyalty programs are correctly applied as 100% discounts within the Point of Sale (POS) system. Previously, this behavior wasn't consistently replicated, and this fix corrects that to align with existing loyalty reward logic. This ensures accurate and consistent reward application for customers.
Original PR description
In the module sale_loyalty, a free product is handled as the reward_product from the loyalty reward with a 100% discount. We copy this behavior in the POS module. opw-4397720 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
This update fixes an issue within the departure wizard by switching to a more reliable method for archiving employees. Previously, using 'toggle_active' caused problems; now, 'action_archive' ensures employees are properly removed from the system. This change aligns with a related enterprise issue and improves data integrity.
Original PR description
When archiving an employee from the departure wizard, use the action_archive method instead of toggle_active. Related to odoo/enterprise#100437 task: 5354002
This update fixes a problem where employees marked as archived would still have incorrect appraisal dates, causing conflicts when managing appraisal plans. The change ensures that archived employee appraisal dates are cleared, preventing these errors and improving the accuracy of appraisal settings.
Original PR description
**Steps to reproduce:** Based on this feedback https://www.odoo.com/odoo/project.task/5270281 companies with archived employees face an issue when they try to toggle Appraisals Plans from Appraisls -> Configuration -> Settings -> Appraisals Plans **Issue:** The propblem is that when employees with next appraisal date are archived, their next appraisal date is not cleared which leads to past date conflicts upon trying to set the next appraisals dates for all the employees (which is done through toggling the Appraisals Plans checkbox) **Solution:** - Unset the next appraisal date upon archiving an employee - exclude archived employees from _compute_next_appraisal_date method Task: 5354002
This update fixes a labeling error in Odoo invoices for Qatar. Previously, the invoice amount description used "Rial" instead of the correct "Riyal". This change ensures accurate currency representation for Qatar-based accounting, improving data clarity and compliance.
Original PR description
Steps to reproduce: 1- Install Accounting and 'l10n_qa' modules 2- Switch to Qatar company and enable "Total amount of invoice in letters" under accounting settings 3. Issue an invoice and preview it The issue: The description of the amount uses "Rial" Expected behavior: The amount should use "Riyal" opw-5919587
This update fixes an issue where sales order statuses were displayed in an incorrect alphabetical order within the sales Kanban view. The change ensures that statuses appear in the correct, logical order (Cancelled, Quotation, Sale Order, Quotation Sent), improving the user experience and data clarity. This was a minor visual inconsistency.
Original PR description
Steps to produce: --- - Install sales module. - Open sales module > orders > switch to kanban view. - Then make it group by status. Observation: --- - The order of status is not proper. - It comes as…
Steps to produce: --- - Install sales module. - Open sales module > orders > switch to kanban view. - Then make it group by status. Observation: --- - The order of status is not proper. - It comes as Cancelled, Quatation, Sale order, Quatation sent. Root cause: --- - When we perform Group By > Status, the method `web_read_group()` is executed. then in chain `_web_read_group()` calls `read_group()` without providing any explicit `orderby`. Inside `read_group()`, if orderby is not provided, it sets the order to the grouped field itself. - Inside `_read_group()`, the SQL query constructed with an order by clause on the grouped field (state). Therefore, the values are retrieved in alphabetical order as `cancel, draft, sale, sent`. Solution: --- - Define `group_expand` on the `state` field. During `read_group()`, `_read_group_fill_results()` calls this method and reorders the groups accordingly. - This overrides the alphabetical SQL order returned by `_read_group()` and ensures the correct logical status order in Kanban view. opw-5497664 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
This update corrects a problem with how leave periods are tracked, specifically related to time zone differences. By updating the system to use 'request_date_from' and 'request_date_to' instead of 'date_from' and 'date_to', the system now accurately reflects leave interruptions, ensuring correct payroll calculations.
Original PR description
This commit fixes the leaves work interruption constraint by replacing `date_from` and `date_to` with `request_date_from` and `request_date_to`, resolving any inconsistencies that may arise due to time zone differences. task-5966780
A test was failing due to access restrictions when dealing with archived company subscriptions. This update uses `sudo` to ensure the test user has the necessary permissions, resolving the error and maintaining proper subscription functionality. This ensures the subscription test suite continues to run reliably.
Original PR description
Following https://github.com/odoo/odoo/commit/6b7b83449739932aa8420ef8fcd888116e3c0f8a, the test was failing because of an access error
` AccessError(_("Access to unauthorized or invalid companies."))`
Fix: use `sudo` to avoid access errors due to the user no longer
having access to the archived company after its archival.
runbot-238373This update fixes an error in the Spanish Profit & Loss reports where specific accounts (7950 and 7957) were incorrectly placed. The change aligns with official Spanish tax documentation, ensuring accurate reporting for Spanish fiscal localization packages. This ensures compliance with Spanish tax regulations.
Original PR description
In the Profit & Loss reports, accounts 7950 and 7957 were incorrectly shown in section 10 instead of section 6 These accounts appear only for non-SME fiscal localization packages According to the official Spanish tax documentation, these accounts should belong to section 6 and not section 10: https://www.boe.es/buscar/act.php?id=BOE-A-2007-19884 opw-5363664
This update addresses a critical maintenance task, updating tax codes within the Avatax module after a 4-year period. This ensures continued accurate tax calculations for our business operations. A future enhancement will allow users to initiate this update automatically, but a manual update is required now.
Original PR description
It's been 4 years since the last update [1]. No codes were removed. At some point it would be nice to add this to the avatax_sync_company_params() method so it can be initiated by the user. But we need to update this file regardless, and the mechanism would need to be smart enough to not cause duplicates when e.g. the user has synced it themselves, we then update the csv and they then update the module. [1] https://github.com/odoo/enterprise/pull/30220 opw-5928245
This update fixes an issue where SII invoices were not correctly formatted, preventing successful confirmation. The update replaces specific XML tags in the DTE template to align with SII's invoice requirements, ensuring invoices meet regulatory standards and avoid processing errors.
Original PR description
Link to SII API Documentation: https://www.sii.cl/factura_electronica/formato_dte.pdf Problem: The DTE template was using incorrect XML elements for withholdings when confirming an invoice with SII. This fix replaces: ImptRetOtrMnda -> ImpRetOtrMnda ValorImpOtrMnda -> VlrImpOtrMnda so the generated DTE matches SII specifications. OPW-5437484