Daily updates from Odoo
Tuesday, June 16, 2026
15 changes · master
Enhancements to existing features
This update enhances the flexibility of the Hong Kong payroll localization by streamlining salary rules based on categories. This allows for easier creation of new reporting rules and supports custom salary structures, improving accuracy and adaptability for tax reporting requirements.
Original PR description
This task aims to improve flexibility in the Hong Kong localization by reworking the salary rules and declarations so that we make full use of categories. IRD declarations are now built purely by summing categories, allowing to easily add new rules while targeting specific report cases. We also remove the hardcoded reference to specific salary structures when possible, opening support for custom structures to be reported as well if their rules use the pre-defined categories. task-6100375
This update simplifies the integration with Monster by moving the Monster ID information from employee types to contract templates. This change allows each localization to manage its own Monster settings, reducing complexity and improving flexibility. The system now reads Monster IDs from contract templates instead of employee types.
Original PR description
**Version:** - master This PR introduces improvements to **hr_recruitment_integration_monster** module, focuses on removing the dependency of this module from employee module: - Moved monster_id field from hr.employee.type to hr.version (contract template). - Removed the data file from monster integration module as no generic hr.version data files exist in base hr module. - Each localization is now responsible for setting monster_id values on their own contract templates. - Updated the job posting logic to read monster_id from contract template instead of employee type. **Task-6190560**
This update enhances the Odoo Enterprise website configuration tool, streamlining the process for businesses to customize their online presence. Specifically, it adapts the website generator hook to a new description screen and adds a welcome message for the AI assistant, improving the user experience.
Original PR description
This PR is linked to the community PR #odoo/262484 improving the website configurator. Improvements: - Added a custom first-message subtitle for the AI assistant after the configurator. - Adapted the Enterprise website generator hook to the new description screen. task-5910875
This update enhances the Time Off dashboard's usability by dynamically filtering time off requests based on the user's team and department. This provides a clearer and more relevant overview of employee time off, improving efficiency for HR and managers. It also updates the Gantt and Calendar views for a better user experience.
Original PR description
Purpose: - Improve usability and clarity of the Time Off dashboard and overview by enhancing UI layout, adding meaningful data (units, statuses), and applying some default behaviors. This PR includes: - Extended the Overview SearchModel to dynamically apply 'My Team' or 'My Department' filters based on the current user's hierarchy. - Apply the behavior to both Calendar and Gantt overview views. Related Community PR: https://github.com/odoo/odoo/pull/263006 task-6132977
This update integrates the Belgian flat-rate payroll system with job categories within Odoo. Previously, flat-rate calculations were separate; now, they are linked to specific job roles, ensuring accurate payroll processing for employees in Belgium. This improves reporting and compliance with local tax regulations.
Original PR description
Task-6128111
This pull request updates the design of the frontdesk interface to ensure it looks consistently good across different devices and screen sizes. The changes focus on improving the overall user experience and responsiveness, particularly in key areas like the host selection screen. A new feature was also added to detect custom background images.
Original PR description
Follow-up of: - https://github.com/odoo/enterprise/pull/119827 - https://github.com/odoo/enterprise/pull/120380 --- This PR review the overall frontdesk design to improve responsiveness and…
Follow-up of: - https://github.com/odoo/enterprise/pull/119827 - https://github.com/odoo/enterprise/pull/120380 --- This PR review the overall frontdesk design to improve responsiveness and consistency across views. task-6022341 | master | this PR | |--------|--------| | <img width="1021" height="765" alt="image" src="https://github.com/user-attachments/assets/d981f222-e3ce-42ae-9846-8eb05378fb46" /> | <img width="1022" height="769" alt="image" src="https://github.com/user-attachments/assets/4c49206b-3022-40bc-9ce6-e8e374156c6d" /> | | <img width="1025" height="767" alt="image" src="https://github.com/user-attachments/assets/1b929595-c8fb-4863-9c02-2c4d8cd00376" /> | <img width="1023" height="766" alt="image" src="https://github.com/user-attachments/assets/750b4423-be14-4974-bdde-4a8e332e6f29" /> | | <img width="1020" height="764" alt="image" src="https://github.com/user-attachments/assets/45cdad54-0654-4d86-a844-4b004400bab9" /> | <img width="1017" height="758" alt="image" src="https://github.com/user-attachments/assets/c848e800-5b4f-4a70-a718-d1d6d48ae411" /> |
This update introduces a new wizard that simplifies the process of splitting journal items, such as bills, into individual lines for asset creation. Previously, users had to manually split large lines, which was time-consuming. This automation streamlines workflows and improves efficiency for creating assets from multiple transactions.
Original PR description
This commit allows the user to manipulate move lines dynamically. It is often the case that when you have a bill line of 10 items you want to create assets for every single item in that line. Right now you need to split the line manually into 10 different lines and then create assets from them. The split wizard automates this flow. task-6222463
This update improves the timesheet timer by prioritizing recently used projects, tasks, and helpdesk tickets. This reduces the time users spend searching for relevant records and streamlines the timesheet entry process. The change maintains existing prefill functionality for a seamless experience.
Original PR description
Before this PR --- The systray timer used the default search ordering, making users repeatedly search for projects, tasks, and helpdesk tickets they had recently tracked time on. After this PR --- The systray timer now ranks projects, tasks, and helpdesk tickets according to recent timesheet activity. Frequently used records are surfaced first while preserving the existing prefill behavior, making timer selection faster and requiring fewer manual searches. task - 6216535 Forward-Port-Of: odoo/enterprise#118299
This update enhances the timesheet and attendance app's systray by allowing users to access both check-in options based on their permissions. A new user role has been added to control access, and the systray now dynamically displays relevant check-in options depending on the user's rights, improving usability.
Original PR description
1 - Normally, when the timesheet app is installed systray was always only including the timesheet, it was hiding attendance lines
1.1 - Now, it can include timesheet, attendance and both
2 - New right "User" is added to attendance (check-in and access are both okay but cannot modify anything in attendance)
3 - Check-in separation
3.1 - If no right for timesheet + attendance check in, no systray in the app
3.2 - If no right for attendance but at least User: own timesheets only right for timesheet, timesheet check-in is possible
3.3 - If no right for timesheet but at least User right for attendance, only attendance check-in possible from systray
3.4 - Else, both check-in options are put into the systray UI.
task - 5942545This update enhances the softphone's call reporting feature by now displaying records from all partners within the same 'family' (defined by the same commercial partner ID). Previously, it only showed calls related to the individual partner. This change provides a more complete view of customer interactions.
Original PR description
voip_* = voip_crm, voip_helpdesk, voip_project, voip_sale, voip_sale_subscription In this commit, we call all partners with same commercial_partner_id are from the same partner family. In softphone "Go to" button, we now count and show records from all its family instead of only the records from itself. Task-[5437327](https://www.odoo.com/odoo/5778/tasks/5437327)
This update enhances the Odoo Enterprise payroll system to better comply with Hong Kong regulations regarding employee continuous status. New warnings are now triggered when employees approach key milestones (3 or 4 qualifying weeks) to ensure accurate reporting to eMPF and avoid legal issues. The warning color has also been updated for increased visibility.
Original PR description
Improve the 'Validated Payslip Not Reported To eMPF' by fixing the deadline to the 10th of the month, allowing a more accurate warning. Also change the color class of the warning to 'warning', as it is quite an important deadline to meet for legal compliancy. --- Under HK law, an employee earns continuous status if they maintain an unbroken streak of 4 "qualifying weeks". A week legally qualifies if the employee worked: - 17+ hours in that specific week, OR - 68+ hours in total across that week and the 3 preceding weeks. We are adding two new warnings to notify users about non-continuous employees that are approaching the continuous status: - One when the streak of "qualifying weeks" reach 3 - One when the streak reached 4 or more
This update enhances the accuracy of salary calculations for Belgian employees, specifically addressing potential negative net pay issues. It includes a new input for salary adjustments and ensures that salary rules correctly consider maximum seizable amounts, providing a more reliable payroll process.
Original PR description
- added a new input for salary adjustment of type Assignment of Salary (Prior) - reordered the rules for salary adjustments and changed the calculation to ensure that it doesn't result in a negative net - for Attachment and Assignment of salary, the amount now follows the Seizable Amount Percentages salary rule parameter (the max seizable amount is considered in the salary rules instead of showing a warning) - added a link to the payslip in the salary attachment chatter when a payment is recorded task-id: 5478677
This update now automatically logs the reasons why orders aren't synchronized with Lazada. Previously, determining the cause required manual investigation of order details. This enhanced logging provides clearer insights into synchronization issues, streamlining troubleshooting and improving overall order processing efficiency.
Original PR description
Before this commit, the only way to know why an order was not synchronized was to inspect the order details and infer the reason from the code. This commit now logs those reasons. Forward-Port-Of: odoo/enterprise#120511 Forward-Port-Of: odoo/enterprise#120212
This update centralizes geolocation logic across Odoo, making it easier to use in various views like Gantt charts. It now dynamically updates maps with partner locations and routes, enhancing functionality and data accuracy. This change improves the overall user experience by streamlining location-based features.
Original PR description
Currently, geolocation is tied to the Map view. However, this may be used by other views later on (e.g., in Gantt to display travel times between field service interventions). Hence, this commit…
Currently, geolocation is tied to the Map view. However, this may be used by other views later on (e.g., in Gantt to display travel times between field service interventions). Hence, this commit moves all geolocation-related logic (address/coordinate lookups, partner geocoding, and routing) out of the `MapModel` and into a new `Geolocation` util in `web_enterprise`, allowing any view to take advantage of it. The `Geolocation` class exposes methods for (1) searching coordinates from an address, (2) reverse-geocoding coordinates to an address, (3) geolocating partners (and updating the records server-side), and (4) fetching routes. It dynamically switches between MapBox and OSM APIs based on token availability and/or returned errors. When using OSM, it internally throttles requests through an async queue to comply with the one-request-per-second limit imposed by the nominatim API. On the contrary, MapBox allows us to perform all requests in parallel. Further, this commit turns the map view totally asynchronous, meaning that it is directly rendered, and as partners become geolocated, the view is updated with pins/routes, and record groups are created in the side panel. task-6200247
This update allows businesses in Belgium to generate separate monthly payruns for employees, streamlining payroll processing. The new 'Multi Pay' button generates payruns for specific date ranges, creating detailed records for each month. This improves reporting and compliance for Belgian companies.
Original PR description
[IMP] test_l10n_be: separated months for payslips in payrun empty for now... task - 6253506