Daily updates from Odoo
Tuesday, May 12, 2026
19 changes
3 changes
Enhancements to existing features
This update enhances the ZKTeco time clock integration by ensuring accurate time zone handling and improving the user interface. Specifically, it corrects timezone discrepancies for punch times and streamlines the process for managing ZKTeco transactions, leading to more reliable attendance tracking.
Original PR description
This commit includes the following: - Hide Transactions/Terminals menus until BioTime is configured; Test Connection now reloads the client so menus surface immediately. - Use upload_time (timezone-aware against the BioTime company tz) instead of punch_time, and convert through res.company.tz so punches land in UTC correctly. - Reset and flag linked ZKTeco transactions when their attendance is deleted; keep the guard against deleting processed-and-linked ones. - Replace the cog menu with Fetch / Process / Re-Fetch buttons in the list header, and allow editing punch_type when the fetched value was unsupported. Task-6181807
This update streamlines the process for canceling old invoices in Mexico's EDI system. When a new invoice replaces an older one, the system now automatically cancels the original invoice, eliminating a manual step for users. This improves efficiency and reduces potential errors related to invoice management.
Original PR description
Triggers the EDI document cancellation method for the substituted invoice when the substitute document is signed, removing the requirement for the user to go back and click cancel again as well as bypassing calling a wizard with no options for the user to select from. task-5927581 Forward-Port-Of: odoo/enterprise#107541
This update enhances the process of validating XML files used in Odoo's external mode billing. Developers can now use the existing IAP server file validator to test their EDI files, ensuring greater accuracy and reliability of billing data. This improves the overall quality of Odoo's billing processes.
Original PR description
There is a file validator running on the IAP server which validates different types of XML files using XSD and Schematron files. This commits allows for developers writing edi testcases to have their XML files validated by the file validator by running their tests in EXTERNAL_MODE. task-5955497 Forward-Port-Of: odoo/odoo#254991
3 changes
Enhancements to existing features
This update streamlines the process of canceling old invoices in Mexico's EDI system. When a new invoice replaces an older one, the system now automatically cancels the original invoice, eliminating a manual step for users. This improves efficiency and reduces potential errors related to invoice management.
Original PR description
Triggers the EDI document cancellation method for the substituted invoice when the substitute document is signed, removing the requirement for the user to go back and click cancel again as well as bypassing calling a wizard with no options for the user to select from. task-5927581 Forward-Port-Of: odoo/enterprise#107541
This update improves the import of vehicle information from CBC Belgium invoices. Specifically, it now correctly fetches the license plate number ('LCPL-NO') from these invoices, ensuring accurate data capture for accounting purposes. This enhancement addresses a previous issue and improves the reliability of invoice processing.
Original PR description
Used on invoices from CBC Belgium
This update enhances the process for testing Odoo's external mode EDI files. It allows developers to validate their XML files against established standards using a built-in validator, streamlining the testing process and ensuring data accuracy within the IAP environment. This improves the reliability of EDI transactions.
Original PR description
There is a file validator running on the IAP server which validates different types of XML files using XSD and Schematron files. This commits allows for developers writing edi testcases to have their XML files validated by the file validator by running their tests in EXTERNAL_MODE. task-5955497 Forward-Port-Of: odoo/odoo#254991
2 changes
Enhancements to existing features
This update enhances the process of testing Electronic Data Interchange (EDI) files within Odoo's cloud environment. Developers can now use a built-in validator to ensure EDI files meet required standards, streamlining the testing process and improving data accuracy. This change supports the external mode deployment of Odoo.
Original PR description
There is a file validator running on the IAP server which validates different types of XML files using XSD and Schematron files. This commits allows for developers writing edi testcases to have their XML files validated by the file validator by running their tests in EXTERNAL_MODE. task-5955497 Forward-Port-Of: odoo/odoo#254991
This update refines how Odoo automatically matches bank statements to invoices and payments. Previously, it prioritized the closest date, which wasn't always accurate. Now, it only matches if there's one prior statement candidate, ensuring more reliable reconciliation and reducing potential errors in financial reporting.
Original PR description
Before this pr, we decided that when there was multiple candidates, we would take the one closer to the date of the statement line but it is not always what we want. We decided to change that so that it would match only if there is one candidate prior the date of the statement line. Exemple: Invoice 1 the 10/06 and invoice 2 the 20/06 → Payment the 05/06 → no matching (0 before) → Payment the 15/06 → match with invoice 1 (only 1 before) → Payment the 25/06 → no matching (More than 1 invoice open before) task-6143809 Forward-Port-Of: odoo/enterprise#115284
3 changes
Enhancements to existing features
This update enhances the process of validating XML files used in Odoo's EDI transactions, specifically when operating in External Mode. It allows developers to easily test their EDI files against established standards, ensuring data accuracy and reliability within the system. This improves the overall quality and stability of Odoo's EDI processing.
Original PR description
There is a file validator running on the IAP server which validates different types of XML files using XSD and Schematron files. This commits allows for developers writing edi testcases to have their XML files validated by the file validator by running their tests in EXTERNAL_MODE. task-5955497 Forward-Port-Of: odoo/odoo#254991
This update ensures users can access documents through their preferred view (kanban, list, or activity) within the Documents app. Previously, the app defaulted to a standard set of views, which could be less convenient for individual users. This change enhances user experience and streamlines document access.
Original PR description
Currently, `get_formview_action` in the documents app returns an action that opens the kanban, list, and activity views. However, it does not utilize the user's document action preference, which can be inconvenient. This commit updates the method to use the preference action instead.
This update simplifies how businesses can customize the website event registration process. By separating the registration logic, developers can now easily inherit and modify the setup, making it simpler to tailor events to specific needs. This change enhances flexibility and reduces complexity for custom development.
Original PR description
Since this controller returns raw markup, it is impossible to inherit. By splitting the controller `registration_new`, allows to manage custom developments with the inheritance of the prepare method instead. --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#245812 Forward-Port-Of: odoo/odoo#244156
8 changes
Enhancements to existing features
This update allows users to upload bills for the Colombia (l10n_co_dian) localization directly from a zip file. Previously, the system couldn't reliably determine if the zip file would work due to arbitrary filenames within the archive. This change enhances the user experience and simplifies bill processing for Colombian businesses.
Original PR description
There's no way to figure out whether the zip would work for Colombia without unzipping it: - zip's filename is arbitrary, - contained filenames are arbitrary, task-5957199
This update removes the Odoo Studio promotion icon from the systray on smaller screens to optimize space and improve the user experience. This change aligns with how the icon is already hidden when Studio isn't usable on those devices, ensuring a cleaner and more functional interface.
Original PR description
Avoid displaying the Odoo Studio promotion icon in the systray on small screens because there isn't much space in the systray. We decided to hide the promote-Studio systray icon on small screens, the same way we hide it when Studio is installed because it's unusable on small-screen devices. task-5079952
This update changes the visual icon for the Field Service section within the Odoo portal. This improves the user experience by providing a more recognizable and consistent representation of this key functionality. The change is a minor aesthetic update.
Original PR description
The icon for portal's Field Service section has been changed task-6009545
This update enhances the ZKTeco time clock integration by ensuring accurate time zone handling and improving the user interface. Specifically, it corrects punch time recording to UTC, streamlines menu visibility, and updates the interface for easier attendance management.
Original PR description
This commit includes the following: - Hide Transactions/Terminals menus until BioTime is configured; Test Connection now reloads the client so menus surface immediately. - Use upload_time (timezone-aware against the BioTime company tz) instead of punch_time, and convert through res.company.tz so punches land in UTC correctly. - Reset and flag linked ZKTeco transactions when their attendance is deleted; keep the guard against deleting processed-and-linked ones. - Replace the cog menu with Fetch / Process / Re-Fetch buttons in the list header, and allow editing punch_type when the fetched value was unsupported. Task-6181807
This update streamlines the management of salary rules within the Odoo Enterprise Belgian payroll module. The changes consolidate salary data files, simplifying updates and reducing potential errors. This improvement ensures greater accuracy and efficiency in calculating employee salaries.
Original PR description
follow up of task-6036647
This update simplifies the process for Spanish users to access and manage tax reports. The menu structure has been reorganized to create clearer, more explicit links to the various Spanish tax models, enhancing usability and reducing confusion. This change improves the overall user experience for our Spanish-speaking customers.
Original PR description
The current menu structure makes finding specific Spanish tax models difficult. This commit reorganizes the tax reports menu to improve user experience. - Create explicit menu items for tax models under the Fiscal menu. - Add translations for the menu items Task-ID: 6036564
This update enhances Odoo's translation capabilities by standardizing the use of `self.env._()` for string translations, addressing potential issues and aligning with best practices. This change ensures more reliable and consistent translations across various modules, improving the overall user experience.
Original PR description
*: payment_sepa_direct_debit, sale_(stock_)renting, sale_(amazon,lazada,shopee),website_sale_(stock_)renting - Replace imports of `_` with calls to `self.env._()`. - Since…
*: payment_sepa_direct_debit, sale_(stock_)renting, sale_(amazon,lazada,shopee),website_sale_(stock_)renting - Replace imports of `_` with calls to `self.env._()`. - Since https://github.com/odoo/odoo/pull/174844, it is supported to translate Python strings through the environment using `self.env._()` instead of the bare `_()` function. - Using bare `_` has become bad practice as it causes confusion with the Python convention of `_` as a throwaway variable, and fails in edge cases such as lambdas and generators where frame-based language detection does not work correctly. - Therefore, within our scope, all occurrences of `_()` are replaced with `self.env._()` (or the relevant environment reference such as `request.env._()`) wherever possible. - Module-level constants that require lazy evaluation are updated to use `LazyTranslate(__name__)` in place of the old `_lt` import. SEE ALSO: - Community PR:https://github.com/odoo/odoo/pull/262235 task-6139904
This update prepares Odoo for the new Belgian VAT reporting requirements, effective May 1st. It adds a dedicated 'Tax Provision Account' (411800) to accurately reflect VAT adjustments for periodic returns. This ensures compliance with updated Belgian tax regulations.
Original PR description
Starting May 1st, in Belgium the VAT provision account will replace the current account for periodic returns - Adding the new bank account - Adding a new account 'Tax Provision Account' 411800 Community PR: odoo/odoo#255272 Task [link](https://www.odoo.com/odoo/project.task/6044017) task-6044017 Forward-Port-Of: odoo/enterprise#116432 Forward-Port-Of: odoo/enterprise#111599