Daily updates from Odoo
Tuesday, February 24, 2026
29 changes
4 changes
Enhancements to existing features
This update enhances the accuracy of account reconciliation by validating the use of 'integer' and 'fraction' groups within regular expressions. Previously, inconsistencies in these groups could lead to incorrect amount formatting, particularly with formats like CODA files. Now, the system enforces that both groups are present when defined, providing clearer error messages to guide users.
Original PR description
When using a regular expression to extract amounts from a label, especially for formats without a decimal separator (like CODA files), the logic now supports and validates the use of named groups 'integer' and 'fraction'. This commit ensures that: - If 'integer' is defined, 'fraction' must also be present to correctly format the decimal value. - If 'fraction' is defined, 'integer' must be present. - Meaningful UserErrors are thrown to guide the user when one group is missing. Enterprise PR: odoo/enterprise#103630 Task [link](https://www.odoo.com/odoo/project.task/5449413) task-5449413 Forward-Port-Of: odoo/odoo#242750
This update enhances the depreciation schedule reports within the Enterprise edition of Odoo by automatically including an analytic filter. This allows for more granular tracking of depreciation costs by specific projects or departments, providing better financial insights. The change improves reporting accuracy and supports more detailed cost analysis.
Original PR description
Forward-Port-Of: odoo/enterprise#108334
This update adds a notification to the Odoo interface when a user adds or removes a channel as a favorite. This enhances the user experience by providing immediate feedback on channel management actions, making it easier for users to track and manage their preferred channels within the system. This improves channel organization and streamlines user workflows.
Original PR description
Task-5867464 point 84
This update enables OAuth and tokenization for Mercado Pago payments, enhancing security and payment processing capabilities. It also addresses a critical issue by explicitly excluding unsupported countries, preventing errors for users in those regions. The changes include required data for recurring payments to meet Mercado Pago's homologation requirements.
Original PR description
OAuth is enabled for Mercado Pago, which also allows enabling tokenization. Not supported countries were added to the list of countries which would result in an error when user in one of the unsupported countries would try to go through OAuth. Forward-Port-Of: odoo/odoo#234747
4 changes
Enhancements to existing features
This update adds tests to ensure accurate calculation of wage types on payslips, considering variations in employee contracts and leave requests across multiple months. These tests verify the correct application of different monthly wage types, enhancing payroll accuracy and reliability. This improves the overall stability of the Swiss payroll module.
Original PR description
This commit adds tests to the `_compute_l10n_ch_swiss_wage_ids` function to verify **Wage Types** in payslips across multiple months and with different **Monthly Wage Types** defined in an employee’s contract, as well as multiple leave requests occurring in different months. task-5906677 Forward-Port-Of: odoo/enterprise#107802
This update enhances the depreciation schedule reports in the Enterprise version of Odoo by automatically including an analytic filter. This allows for more granular tracking of depreciation costs by specific projects or departments, providing better financial insights. It's an improvement to reporting capabilities.
Original PR description
Forward-Port-Of: odoo/enterprise#108334
This update allows discounts to be applied directly to individual products within UrbanPiper, rather than the entire order. This ensures order totals, payments, and taxes accurately reflect these line-level discounts, improving pricing accuracy for UrbanPiper users. It resolves a previous limitation where product-specific discounts weren't supported.
Original PR description
Before this commit: ================ - Discounts were only applied to the entire order. - Product-level (line) discounts were not handled in UrbanPiper. After this commit: ================ - Product-level discounts can be applied to individual products in UrbanPiper. - Order totals, payments, and taxes now correctly reflect line-level discounts. Task - 4977960 Forward-Port-Of: odoo/enterprise#97114
This update enables OAuth and tokenization for Mercado Pago payments, enhancing security and payment processing capabilities. Additionally, a fix was implemented to address unsupported countries, preventing errors for users in those regions. This ensures smoother and more reliable Mercado Pago integration.
Original PR description
OAuth is enabled for Mercado Pago, which also allows enabling tokenization. Not supported countries were added to the list of countries which would result in an error when user in one of the unsupported countries would try to go through OAuth. Forward-Port-Of: odoo/odoo#234747
1 change
Enhancements to existing features
This update adds tests to ensure payslips accurately reflect employee wage types, considering variations in monthly wage types and overlapping leave requests. These tests cover multiple months and employee contracts, enhancing the reliability of payroll calculations. This improves accuracy and reduces potential errors in payslip generation.
Original PR description
This commit adds tests to the `_compute_l10n_ch_swiss_wage_ids` function to verify **Wage Types** in payslips across multiple months and with different **Monthly Wage Types** defined in an employee’s contract, as well as multiple leave requests occurring in different months. task-5906677 Forward-Port-Of: odoo/enterprise#107802
1 change
Enhancements to existing features
This update adds tests to ensure accurate calculation of wage types on payslips, considering various employee contract settings and leave requests. These tests verify correct processing of monthly wage types and multiple leave periods across different months, enhancing payroll accuracy.
Original PR description
This commit adds tests to the `_compute_l10n_ch_swiss_wage_ids` function to verify **Wage Types** in payslips across multiple months and with different **Monthly Wage Types** defined in an employee’s contract, as well as multiple leave requests occurring in different months. task-5906677 Forward-Port-Of: odoo/enterprise#107802
12 changes
Enhancements to existing features
This update replaces a less efficient caching method (`lru_cache`) with a simpler, more reliable caching approach. This change optimizes the performance of the Delivery Ups module, leading to faster processing times and a smoother user experience. It's a routine performance enhancement.
Original PR description
On an argument-less function, `lru_cache` is strictly worse. Forward-Port-Of: odoo/enterprise#108100
This update improves the performance of the Work Entry Attendance module by adjusting how the system counts queries during work entry generation. Specifically, it addresses a change in the system's logic that now creates work entries for weekend holidays, leading to increased query activity. This ensures the system continues to function efficiently.
Original PR description
This PR updates the expected query count for regenerate_work_entries in the Work Entry Attendance module. Due to the new functionality that creates work entries for weekend holidays, additional queries are now triggered during work entry generation. task-4907728
This update improves the user experience by automatically opening avatar cards when a follower is clicked in the follower list. Previously, users were directed to a partner form view, which was less intuitive. This change streamlines the process of viewing follower information.
Original PR description
The tours are updated to reflect the new behaviour where clicking on a follower opens the avatar card for users instead of the partner form view task-5873738 Forward-Port-Of: odoo/enterprise#107393
This update integrates Odoo's payroll system with the Belgian Joint Committee, ensuring compliance with local regulations. It includes changes to rule parameters and data migration to reflect the Committee's requirements, improving payroll accuracy and reporting for Belgian users.
Original PR description
- add the connection of the Joint Committee on rule parameters - add scalegrid rule parameter - migrate scalegrid BE data Task: 5477497
This pull request enhances the testing framework for Odoo's website rental functionality. Changes include a more efficient test setup using setUpClass, streamlining test execution and reducing redundancy. The updates also address community changes and remove outdated common values, ensuring consistent and reliable rental testing.
This update optimizes the performance of Odoo's Studio view editor by eliminating an unnecessary database query. The change ensures that view information is stored directly within the view's key, leading to faster and more efficient operations. This improves the overall responsiveness of the Studio interface.
Original PR description
Because ir.ui.view.xml_id triggers an additional SQL request, it will be more efficient to have that information in the key field of the view.
This update modifies the company settings wizard within the Odoo Enterprise module. The change shifts the focus to using company-specific data, aligning with best practices. This adjustment could potentially impact module uninstallation processes.
Original PR description
In this commit, we changed the configure company settings wizard view from res.config.settings to res.company All the used fields are related to res.company, this can have side effects during module uninstallation (for example). task-5933795
This update enables businesses to export essential payroll reports for Egypt (EG) – specifically NOSI Form 2 and ETA Form 2 – in Excel format. This allows for easier compliance reporting and data sharing with tax authorities. Users may encounter errors if required fields are missing during the export process.
Original PR description
### AIM:
- This commit introduces a way to export NOSI Form 2 and ETA Form 2 for the
Egypt (EG) country.
### FLOW:
- NOSI Form 2:
- Go to Employee -> Reporting > Egypt NOSI Form2.
- While exporting NOSI Form 2, you may encounter a user error; this indicates
that some required fields are missing.
- To export ETA Form 2:
- Once a payslip is created and confirmed > Payment Report > In the export
format, select ETA Form 2.
- While exporting ETA Form 2, you may encounter warnings or errors on the
payslip; this indicates that certain required or optional fields must be
filled to export ETA Form 2 correctly.
### Key Updates:
- Added support to export NOSI Form 2 and ETA Form 2.
Task: 4510109This update simplifies the user interface by streamlining breadcrumbs and ensuring control panel buttons display correctly. By grouping older navigation steps and fixing button wrapping, the system is now easier to navigate and use, particularly in complex areas of the application.
Original PR description
*account_reports,documents_spreadsheet,industry_fsm_sale,web_studio Only the most recent breadcrumb remains visible, while older navigation steps are grouped under the dropdown to reduce clutter in deep navigation path. This keeps the breadcrumb clean in deep navigation paths. Control panel buttons now keep their text on one line so labels are easier to read and the layout stays even. task-5933463
This update enables users to download a required XML file for notifying the SGK (Social Security Institution) in Turkey when a new employee is hired. The changes include adding necessary fields, validation rules, and ensuring the generated XML adheres to SGK specifications, streamlining compliance for Turkish companies.
Original PR description
- In this task we are allowing user to download SGK Hiring Notice XML(TR country). - Required in Turkey company to notify SGK when an employee is hired. Key updates: - Added fields required for SGK XML export. - Added tooltips for all new fields. - Added validations with clear error messages when mandatory employee details are missing. - Generated XML follows SGK specifications. task-5002712
This update fixes an issue where the system incorrectly overstated End-of-Service (EOS) provisions for departing employees. A new rule now accurately reconciles accumulated EOS with the final benefit amount, ensuring correct accounting and reducing potential overpayments. This improves financial accuracy and reporting related to employee departures.
Original PR description
## Before: - End-of-Service provision is accumulated monthly and assumed to be fully payable upon employee departure. - However, this assumption is incorrect in certain cases where employees are either not entitled to EOS or entitled to a reduced amount. - Currently, the system does not reconcile the accumulated EOS provision with the actual EOS benefit paid at departure, leading to overstated provisions. ## After: - A new salary rule is introduced and triggered when a departure reason is defined and the employee is archived. - The rule reconciles the total EOS provision accumulated across previous payslips with the final EOS benefit amount calculated at termination. - When the payable EOS is lower than the accumulated provision, the difference is posted as a negative adjustment. Task-5440790
This update allows users to manually adjust the data extracted from expense documents (PDFs or images) by the OCR system. Previously, changes required a full re-scan. This enhancement improves accuracy and streamlines the expense reporting process.
Original PR description
This PR aims to add the functionality to manually correct the values parsed by the OCR for expense documents. After this commit, PDF or images of expense documents can now allow for manual correction using the data extracted by OCR service. task-5165853 related PR: https://github.com/odoo/odoo/pull/250135
1 change
Enhancements to existing features
This update adds tests to ensure accurate calculation of wage types on payslips, considering various employee contract details like monthly wage types and multiple leave requests across different months. These tests strengthen the reliability of the Swiss payroll system by verifying correct wage type assignments.
Original PR description
This commit adds tests to the `_compute_l10n_ch_swiss_wage_ids` function to verify **Wage Types** in payslips across multiple months and with different **Monthly Wage Types** defined in an employee’s contract, as well as multiple leave requests occurring in different months. task-5906677 Forward-Port-Of: odoo/enterprise#107802
3 changes
Enhancements to existing features
This update adds tests to ensure accurate calculation of wage types on payslips, considering various employee contract details like monthly wage types and multiple leave requests across different months. These tests enhance the reliability of payroll processing for Swiss employees, particularly within the l10n_ch module.
Original PR description
This commit adds tests to the `_compute_l10n_ch_swiss_wage_ids` function to verify **Wage Types** in payslips across multiple months and with different **Monthly Wage Types** defined in an employee’s contract, as well as multiple leave requests occurring in different months. task-5906677 Forward-Port-Of: odoo/enterprise#107802
This update enhances the Odoo profiling tool by automatically tracking the time taken for database queries. Previously, profiling data was incomplete. Now, the system captures query execution times with a time limit, providing more accurate performance insights for developers to identify and address slow queries.
Original PR description
Modify the query collector so that it add an entry before the query runs and updates the time after it runs. use the async collector periodic sampling to commit the profiler after a time limit. --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#215034
This update adjusts the Romanian tax reporting within the Enterprise module to align with recent changes in the Core Enterprise (CE) version. The update removes unnecessary tax lines and adds new ones, ensuring accurate reporting and compliance. This change was driven by task-5411745.
Original PR description
Some taxes were no longer needed in CE, so they needed to be removed task-5411745 Forward-Port-Of: odoo/enterprise#106127
3 changes
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
This update ensures Odoo complies with recent changes from the Uruguayan tax authority (DGI) regarding Electronic Sales Reports (CFE). Specifically, a new option is added for exporting goods under a mandate, and the reporting of reference documents (credit/debit notes) now includes currency and exchange rate information when needed.
Original PR description
Purpose: The DGI introduced changes in CFE version 25. The following changes below needs to be implemented for legal compliance.
Required Changes:
- Introduce a new selection value,("91", "Export under Mandate")for field, l10n_uy_edi_cfe_sale_mode. This option is required when documenting export operation performed as a mandating entity, where the definitive export will be carried out by a third party.
- The reference document(credit note or debit note) of an existing account move will need to send:
- Amount (MntCFEref)
- Currency (TpoMonedaRef)
- Exchange Rate (TpoCambioRef) if the currency is not Uruguayan Pesos
task-5419331
task-5419331This update adds tests to ensure accurate calculation of Swiss payroll payslips. Specifically, it verifies the correct handling of different wage types and monthly wage types defined for employees, alongside multiple leave requests across various months. This improves the reliability of payroll reporting in the Odoo Enterprise system.
Original PR description
This commit adds tests to the `_compute_l10n_ch_swiss_wage_ids` function to verify **Wage Types** in payslips across multiple months and with different **Monthly Wage Types** defined in an employee’s contract, as well as multiple leave requests occurring in different months. task-5906677