Daily updates from Odoo
Monday, June 8, 2026
17 changes · master
New functionality added to Odoo
This update introduces a new system for employees to request approvals linked to specific templates. By adding request categories, employees can now more accurately specify the type of approval they need, streamlining the sign-off process. This improves the efficiency and clarity of approval workflows within the system.
Original PR description
adding a request category that make employee able to request a sign to a template Task: 5095647
This update adds a new option to display appointment reminders as pop-up notifications for all appointments. Previously, these notifications were only sent via email. This change enhances user convenience and ensures clients receive timely appointment reminders regardless of their preferred communication method.
This update adds visually engaging, themed banners to the Odoo Enterprise dashboard warning list. These banners change monthly to provide a more user-friendly and informative experience for employees. The change improves the overall look and feel of the dashboard.
Original PR description
This commit adds a playful thematic banner for each month in the dashboard warning list. task-6074778 <img width="1216" height="931" alt="Screenshot 2026-04-24 at 17 52 38" src="https://github.com/user-attachments/assets/1203cd33-b400-4e40-8cca-941bcce7341c" />
This update introduces two new demo branches – a Belgian office and a restaurant – within the Odoo Enterprise Belgian payroll module. It includes sample employee data (Bernice Jensen, Ramona Franklin, Eduardo Kelly, Max Durand) to demonstrate payroll processing for different business types. This enhances the demo's realism and usability for testing and training.
Original PR description
Add two branches to the Belgian demo company with their employees: - My Belgian Office (JC 200, cat. 010): Bernice Jensen, Ramona Franklin - My Belgian Restaurant (JC 302, cat. 017): Eduardo Kelly, Max Durand task-6197243
Enhancements to existing features
This update aligns the default VAT reporting frequency for Norwegian businesses in Odoo Enterprise to bi-monthly (every two months). This change reflects the most common reporting practice in Norway, simplifying the process for our Norwegian customers and ensuring accurate financial reporting.
Original PR description
Set the default VAT periodicity for Norwegian companies to every 2 months, aligning with the most commonly used reporting frequency in Norway. task-6209940 Forward-Port-Of: odoo/enterprise#119524 Forward-Port-Of: odoo/enterprise#117054
This update simplifies the selection of employee types within the Belgian payroll system. The 'Worker' employee type is now the second option after 'Employee' in the employee type list, making it easier for users to find and select. This change improves usability and streamlines the payroll process for Belgian businesses.
Original PR description
Update sequence order for employee type in Belgium, move worker as the second options after employee in Employee Type, makes users easier to find it task:6280177
This update enhances the user experience when creating new folders within the Documents module. Now, users can directly enter a custom folder name instead of accepting the default 'New Folder' name, making the process more intuitive and flexible. This change improves usability and streamlines folder creation.
Original PR description
**Specifications:** When clicking the '+' icon to create a new folder, open a dialog box, that allow the user to enter a folder name instead of using the default name: 'New Folder'. Task-6147707
This update improves the My Planning feature by automatically assigning the current user to a shift when a resource is selected during creation. This simplifies the scheduling process for users, aligning with their typical workflow of self-scheduling. It reduces manual effort and ensures users are immediately associated with the shifts they create.
Original PR description
When creating a shift from My Planning, users are usually scheduling their own work. So it makes sense that they should be automatically assigned to the shift when their resource is selected. task-6178388
Resolved issues and error corrections
This update introduces a new wizard that allows administrators to revert previously generated payslips. This provides greater flexibility in correcting payroll errors and ensures accurate record-keeping for Belgian companies using the Odoo Enterprise HR Payroll module. The change improves data accuracy and compliance.
Original PR description
Task: 6117478
This update prevents Odoo from crashing when the Barcode Lookup API returns a broken image URL. Previously, an invalid URL would cause an error. Now, the system safely ignores these errors, ensuring the 'Get Pictures from Barcode Lookup' action continues to function without interruption.
Original PR description
[FIX] product_barcodelookup: avoid crash on invalid image URLs **Steps to Reproduce:** - Install Sales module. - Configure a valid Barcode Lookup API key. - Create a product without an image. - Set a…
[FIX] product_barcodelookup: avoid crash on invalid image URLs
**Steps to Reproduce:**
- Install Sales module.
- Configure a valid Barcode Lookup API key.
- Create a product without an image.
- Set a barcode whose returned image URL is broken or returns HTTP 404
(e.g. `8426904171073`).
- Select the product and trigger the server action:
`Action -> Get Pictures from Barcode Lookup`
Issue:
**During image fetching:**
- Barcode Lookup API successfully returns product data and image URLs.
- `_get_image_from_url()` attempts to download the image.
- The image URL responds with HTTP 404.
- `barcode_lookup_request()` returns a dict for non-200 responses.
- `_get_image_from_url()` assumes the response is always a `requests.Response`
object and directly accesses: `response.status_code`
- This causes: `AttributeError: 'dict' object has no attribute 'status_code'`
**Root Cause:**
- `barcode_lookup_request()` returns inconsistent response types:
- `requests.Response` for successful requests
- `dict` for failed requests
- _get_image_from_url() does not handle the dict response before accessing
response attributes.
**Solution:**
- Make barcode_lookup_request() always return a One Response
object.
- Move the response validation to the callers instead of returning custom
dict objects.
**Result:**
- No RPC crash when image URLs are invalid or return 404.
- Broken image URLs are safely ignored.
**OPW-6200749**
Forward-Port-Of: odoo/enterprise#116925This update resolves an issue that occurred when duplicating Odoo databases used for testing the German POS certification module. Specifically, the system now correctly handles the removal of identifying information (client_id and tss_id) during database duplication, preventing errors and ensuring proper functionality in test environments. This ensures consistent and reliable testing of the module.
Original PR description
In this commit: -------------------- - On a duplicate database `client_id` and `tss_id` are removed so it works as test in neutralized dbs without throwing errors. task- 5457231 Forward-Port-Of: odoo/enterprise#104119
This update simplifies the tour selector within Web Studio. The previous logic was no longer needed due to a change in how the Kanban dropdown toggle is displayed. This adjustment ensures the tour selector functions correctly and efficiently, streamlining the user experience.
Original PR description
Since the visibility of the kanban dropdown toggle is now always visible when the media query 'pointer: fine' isn't met, in the case of this tour, it is no longer useful to check for the non visibility of the element in the selector. task-6259816
This update ensures consistent behavior across Odoo by adapting how live chat and VoIP features are initialized. The change aligns with recent community updates, streamlining the process and improving the reliability of these core services.
Original PR description
The community counterpart of this PR removed the `onStarted` method as overrides should all use `initialize`. This commit adapts the enterprise modules. community: https://github.com/odoo/odoo/pull/267160
This update fixes an issue where portal users were redirected to the wrong folder when accessing documents. The fix ensures that links from the Documents section correctly navigate users to the intended folder, improving the user experience. This was caused by a technical oversight in updating folder references.
Original PR description
# How to reproduce - As admin, give access to folder X & folder Y to a portal user - As that portal user, go to Documents, click on folder X and copy the page url - Click on folder Y - Paste the URL in the browser's search bar # The problem You are still in folder Y, even though the link should be to folder X. # Cause We forgot to keep `documents_init`' s `folder_id` (refactored into `user_folder_id`) in https://github.com/odoo/odoo/commit/6bdcc357b195faa0aad8c05eac23aa0a762dd76b opw-6132231 Forward-Port-Of: odoo/enterprise#116928
This update enhances the accuracy of vendor credit note reporting within the Odoo Enterprise system. Specifically, the system now prioritizes using the 'bill reference' when generating reports for vendor credit notes, ensuring more reliable data. This change maintains the previous fallback behavior for compatibility.
Original PR description
With this commit, we update the report to prioritise the bill reference for vendor credit notes while keeping the previous fallback behaviour task-6235022
This update fixes a problem where payruns were incorrectly marked as cancelled after removing individual payslips. The change ensures payruns remain valid even after edits, preventing disruptions in payroll processing. This improves the reliability of payrun management.
Original PR description
Fixes the following bugs in payruns: BUG 1: - create a payrun, leave it in draft - create a single payslip, add it to the previously created payrun. The payslip employee will appear in the payrun employee list - for the previously created payslip, remove it from the payrun - go back to payruns kanban view, the payrun will results as cancelled even if there still were other employee entries in it (the one defined at start) BUG 2: - create a payrun, leave it in draft - create a single payslip, add it to the previously created payrun. The payslip employee will appear in the payrun employee list - go on the payrun and clicking on the button "Off-Cycle" for the separately-created payslip This adds other employees not originally on the payrun task: 6237460
Features or functions removed from Odoo
This update removes outdated VAT and WHT tax return types from the Odoo Enterprise Pakistan localization. This change aligns the system with current Sales Tax Act requirements, streamlining reporting processes and ensuring compliance. The update was coordinated with related community and upgrade PRs.
Original PR description
As part of the broader restructuring of the Pakistan localization's tax engine to align with the Sales Tax Act, 1990, the percentage-based VAT and WHT tax return types have been removed. Related Community PR: https://github.com/odoo/odoo/pull/264703 Related Upgrade PR: https://github.com/odoo/upgrade/pull/10241 task-6044680