Daily updates from Odoo
Monday, April 20, 2026
13 changes · master
Enhancements to existing features
The Belgian salary configurator and employee offer view now present company car options in a simpler, clearer way. This makes it easier for employees and HR teams to understand and choose fleet-related salary benefits.
Original PR description
-Introducing some UX changes in salary configurator and employee's offer view to simplify car options.
Manufacturing teams get clearer and more flexible work order planning screens, including a kanban option, richer Gantt popovers, and a cleaner form header. These updates make it easier to review work orders and related manufacturing orders during production planning.
Original PR description
- add kanban to work orders views list - add infos in gantt view popover - adapt form view header - fix test task: 5990446 See odoo/odoo#257900
Quality checks can now target the exact bill of materials line or by-product line instead of only the product, preventing duplicate or incorrect checks when the same component appears multiple times. BoM revision reviews also better reflect by-product unit changes and Studio-edited forms keep component and by-product change tracking consistent.
Original PR description
_* = quality_mrp_workorders - When the same component is used multiple times in a BoM, it is not possible to specify exactly which one to use in Product to Register, and quality checks are created for each occurrence of that component unnecessarily. - This change replaces product selection with BoM lines and by-product lines with the Product to Register field of the Quality Point, ensuring that quality checks are created for the specific BoM line during operations and preventing duplicate or unnecessary checks. - Solve the issue where changing the UoM of a by-product in a BoM revision was not reflected in the By-Product Changes, ensuring a consistent and reliable revision review. - Adds missing dependencies so that when the form view is made editable via Studio, changes are still correctly reflected in Component Changes and By-Product Changes. Com PR https://github.com/odoo/odoo/pull/239243 task-5365739
This update improves how company cars are handled in Belgian salary package offers, including related configuration, employee views, and offer presentation. It helps HR teams present and manage fleet-related benefits more clearly during contract and salary negotiations.
The Discuss command palette has been improved for AI App and WhatsApp-related conversations, making actions easier to find and use. This should create a smoother messaging experience for users who rely on these channels in Odoo.
Original PR description
part of task-5867464 community: https://github.com/odoo/odoo/pull/258588
Belgian payroll DMFA reporting now uses the ONSS social security amounts already calculated on payslips, reducing the risk of differences between payroll and reporting. The report also flags mismatches when payslip amounts do not align with expected DMFA calculations, helping payroll teams spot issues before submission.
Original PR description
For the DMFA, directly use the ONSS amounts from the payslips. This commit also adds a list of alert on the DMFA report and adds an alert if the amount from payslips does not match the expected amount computed in the DMFA. task-5976407
Progress bars in Gantt-style planning, project, manufacturing, and scheduling views have been redesigned to be easier to read and less cluttered. The update improves hover behavior, row spacing, and mobile layout so users can more clearly understand progress at a glance.
Original PR description
Before this PR, the progress bar was not easy to read due to overlapping text and colors. The hover also changed from the whole row to only the header. The height of each row increased to allow…
Before this PR, the progress bar was not easy to read due to overlapping text and colors. The hover also changed from the whole row to only the header. The height of each row increased to allow better visibility of the progress bar. In mobile view, the display from the progress bar goes below the avatar name to allow clearer view. Some tests selectors doesn't exist anymore so they got adjusted. Com PR: https://github.com/odoo/odoo/pull/252295 **Dense Mode** | | Before | After | |--------|--------|--------| | Normal state | <img width="313" height="744" alt="Screenshot 2026-04-07 at 16 18 13" src="https://github.com/user-attachments/assets/74f3c8ad-5462-424f-a0de-a085e4600005" /> | <img width="313" height="744" alt="Screenshot 2026-04-07 at 16 16 26" src="https://github.com/user-attachments/assets/e73a9f69-0dd8-40b5-a347-98f76d7dbf13" /> | | Hover Red | <img width="313" height="744" alt="Screenshot 2026-04-07 at 16 18 18" src="https://github.com/user-attachments/assets/08671dc1-efd7-4823-8439-02ed5d066685" /> | <img width="313" height="744" alt="Screenshot 2026-04-07 at 16 16 36" src="https://github.com/user-attachments/assets/fe0e058a-a208-4457-a6aa-9b92ecd41ee3" /> | | Hover Green | <img width="313" height="744" alt="Screenshot 2026-04-07 at 16 18 21" src="https://github.com/user-attachments/assets/d4d519d6-eefa-4a00-9ef5-998a7ba41045" /> | <img width="313" height="744" alt="Screenshot 2026-04-07 at 16 16 50" src="https://github.com/user-attachments/assets/55319df3-93d7-46db-beff-fd68f1b2cab1" /> | **Sparse Mode** | | Before | After | |--------|--------|--------| | Normal state | <img width="313" height="744" alt="Screenshot 2026-04-07 at 16 18 32" src="https://github.com/user-attachments/assets/844d3dcd-41fb-4a64-bfc2-df98656fbbb0" /> | <img width="313" height="744" alt="Screenshot 2026-04-07 at 16 17 06" src="https://github.com/user-attachments/assets/450e831f-d912-4a2c-b51a-00c00750dff4" /> | | Hover Red | <img width="313" height="744" alt="Screenshot 2026-04-07 at 16 18 37" src="https://github.com/user-attachments/assets/b54b63dc-8a50-4c1e-99fd-1d9145e03540" /> | <img width="313" height="744" alt="Screenshot 2026-04-07 at 16 17 12" src="https://github.com/user-attachments/assets/372c1311-d621-4b77-861f-83d676e1d14c" /> | | Hover Green | <img width="313" height="744" alt="Screenshot 2026-04-07 at 16 18 41" src="https://github.com/user-attachments/assets/313b22de-1c79-4fd5-babd-44bad66ed992" /> | <img width="313" height="744" alt="Screenshot 2026-04-07 at 16 17 19" src="https://github.com/user-attachments/assets/332b6c5a-9288-4762-bb3b-d07d88005e8f" /> | **Mobile View** | | Before | After | |--------|--------|--------| | Sparse Mode | <img width="405" height="705" alt="Screenshot 2026-04-07 at 16 22 01" src="https://github.com/user-attachments/assets/58209c32-d7ad-4e59-8226-15742cb7f46e" /> | <img width="405" height="705" alt="Screenshot 2026-04-07 at 16 22 22" src="https://github.com/user-attachments/assets/8bade56a-b48d-461e-8832-ac8b09fdd035" /> | | Dense Mode | <img width="405" height="705" alt="Screenshot 2026-04-07 at 16 22 06" src="https://github.com/user-attachments/assets/d9c461ac-f521-4a70-84f6-0d70d8240f97" /> | <img width="405" height="705" alt="Screenshot 2026-04-07 at 16 22 27" src="https://github.com/user-attachments/assets/1aba1990-b84f-46cf-aa8d-ea9ecc788162" /> | task-3630380
When companies trade with each other, vendor bills created automatically are now linked back to the original purchase order lines. This helps keep purchasing, billing, and reconciliation aligned without extra manual matching.
Original PR description
Conside the following flow: 1) Activate intercompany transactions between company A & company B for both SO and Bills 2) Create a PO in company A with vendor as company B 3) The SO is created in company B, Validate it 4) Create the invoice in company B, post it 5) The Vendor Bill is created in company A The flow is still missing one last step: the PO matching. This commit ensures that the lines of the vendor bill created in company A are matched with the lines of the original PO. task-6075588
Financial reports can now group aggregated results, enabling richer reporting views and supporting future reporting capabilities such as snapshots and tax closing improvements. Report line foldability was also standardized so reports behave more consistently when users expand or collapse sections.
Original PR description
### [IMP] account_reports: foldability as selection field * Adapt AccountReportLineData, _get_groupby, and tests to the new 'foldability' selection. * Apply upgrade_code script for removing the…
### [IMP] account_reports: foldability as selection field
* Adapt AccountReportLineData, _get_groupby, and tests to the new 'foldability' selection.
* Apply upgrade_code script for removing the unnecessary foldable field in reports data files if they
will be correctly computed.
* For inconsistencies reported by the script, manually set the foldable values on the reports and tests.
### [IMP] account_reports: Support groupby on aggregations
The aggregation engine didn't support groupby before due to limitations
existed from the beginning of Reportalypse.
With the removal of the 'load more'<sup>1</sup> feature, other engines don't run a SQL LIMIT anymore.
Resulting on the aggregation engine can obtain the full result, and
'groupby' calculation be done.
That support will help with incoming improvements: Snapshot feature<sup>2</sup> and
Tax closing computation refactoring
<sup>1</sup> : https://github.com/odoo/enterprise/commit/ff2895144ecfc66d2b23bb872b39f5b446ae0da6
<sup>2</sup> : https://github.com/odoo/enterprise/pull/113677
task-5891053The Barcode app now matches the standard inventory flow when validating incomplete transfers, letting users decide whether to create a backorder when the setting asks for confirmation. It also gives clearer warnings and quantity details for incomplete transfers, with a cleaner mobile popup to reduce mistakes and extra follow-up work.
Original PR description
- Currently, when the operation type was configured to `Ask` for creating backorders, the Barcode app always treated it as backorder would always be created, since it only showed `Validate` and `Stay…
- Currently, when the operation type was configured to `Ask` for creating backorders, the Barcode app always treated it as backorder would always be created, since it only showed `Validate` and `Stay on Transfer` options. This behavior was inconsistent with the backend flow and forced users who did not wish to create a backorder. Users had to manually cancel the backorder afterwards, adding unnecessary steps and extra effort. - Also, when the operation type is configured to `Always` or `Never` for creating backorders, users are not clearly warned that the transfer is incomplete and receive no visible indication of how many products have been processed or how many remain, leaving users without a clear indication that some products remain unprocessed during validation. - Additionally, the backorder popup on `mobile screens` appeared cluttered, as product rows and quantities were not clearly aligned on small screens, leading to a `poor user experience`. These changes ensure that when the operation type is set to `Ask`, users can choose whether to create a backorder or not during validation, avoiding unwanted backorders and manual cancellation. They also ensure that when set to `Always` or `Never`, users are clearly warned if the transfer is incomplete and shown how many products have been processed and how many remain. The mobile layout is improved to provide a cleaner and more `organized view`, and when set to Never, missing items are highlighted in red with a clear label, helping them to make more informed validation decisions. TaskID-4797752
The work order form has been reorganized to make key information and actions easier to find. Users now get a cleaner status selection, more accessible action buttons, larger work order names, visible quality checks, and a communication area for follow-up discussions.
Original PR description
This commit rearange the blocks of the workorder form view: - change the statusbar widget by the dropdown widget - move the buttons from the header to stat button - increase name size Task: 5936292
Planning materials can now be linked to a specific employee. When that employee is added to a planning slot, their assigned material is automatically added as a resource and scheduled with the shift, reducing manual setup and improving resource accuracy.
Original PR description
In this commit, we add a field "Assigned To" to materials. This allow users to assign one employee to the material. With that, when adding an employee to a planning slot, its assigned material will automatically added to the resources, and a shift will be assigned to it. task-5259038
Warehouse barcode scanning now better handles packages that include non-stored products during deliveries and receipts. This helps operators complete prepared package transfers without unnecessary backorder prompts or manual quantity updates.
Original PR description
When dealing with multi-step deliveries, it can happen to pack a non-stored good in an earlier step (e.g. PICK). This means that the package will be set as source & destination for the following transfers. However when scanning the package in those transfers, since we're only checking the quants of the package (i.e. so the effective stored content), the non-stored goods are never picked, and at transfer validation it would ask for backorders, which makes little sense. Now also selects all non-stored goods that have the scanned package as source. --- For receptions, if packages are already set through the back-end on the move lines, when processing the receipt in barcode, we can now simply scan the prepared package to automatically fill its content. Task-5266021