Daily updates from Odoo
Friday, January 16, 2026
8 changes · 17.0
Resolved issues and error corrections
This update fixes an issue where the company tolerance time wasn't being calculated accurately when employees had multiple attendance entries for the same day. Previously, overtime was incorrectly computed, leading to inaccurate extra time calculations. This change ensures that the tolerance time is applied correctly, preventing unnecessary overtime charges.
Original PR description
_ ## Short functional explanation of the error When an employee enters multiple attendances for a single day, the company tolerance time isn't computed correctly. ## Reproduction Steps 1. Go to…
_ ## Short functional explanation of the error When an employee enters multiple attendances for a single day, the company tolerance time isn't computed correctly. ## Reproduction Steps 1. Go to attendances. 2. Click on configuration and scroll down to the Extra Hours section. Set a Tolerance Time in Favor of Company of 15 minutes. 3. Create 2 attendances for the same employee: one attendance from 8 to 15 for example, and a second one from 16 to 18:12. ### Expected behavior As the overtime entered is 12 minutes, which is inferior to the company tolerance time of 15 minutes, no extra time should be computed. ### Unexpected behavior 12 minutes of overtime are computed. ## Origin of the issue Let's say we enter 2 different shifts for the same day. Our work day should be 8 hours, and the sum of both shifts reaches 8 hours or more. We shouldn't have any overtime. However, in the code, the overtime is negative. This is compensated by, in our case, the post-work time: in our case, our overtime duration will be equal to -1, but our post-work time will be equal to 1.2. Both cancel each other, and in the end we obtain 0.2 of overtime, which corresponds to our 10 minutes overtime. However, in this code: https://github.com/odoo/odoo/blob/afcbd98594c9f7007f03a343ea40ea122b955459/addons/hr_attendance/models/hr_attendance.py#L374-L380 it isn't computed that way: because post-work time is 1.2, which is above our company tolerance time of 15 minutes (0.25 in the code), we will always be in the case where we exceed the tolerance time. Hence, we have to "flatten" the overtime duration and the post-work time before reaching that piece of code. note: the same bug exists for the employee tolerance time, which is corrected in this commit. __ opw-5136861 ---
This update fixes an issue where tooltips on the Contact Us page weren't displaying translated text. The fix ensures that saved website snippets, including their translations, are correctly applied when dropped on the Contact Us page, resolving a previous display problem.
Original PR description
Issue: Tooltip not retaining translations Steps to Reproduce : - Have a website with English as main lang and French as second lang. - Drop an image block and set a tooltip on it - Save and translate…
Issue: Tooltip not retaining translations Steps to Reproduce : - Have a website with English as main lang and French as second lang. - Drop an image block and set a tooltip on it - Save and translate the tooltip in French - In english, save the block with the image (to be able to reuse it elsewhere) - When you drop the block in a website pages or event pages, the tooltip keeps its translation, but if you drop it in the /contactus page, the tooltip has no translation. Before this PR: - A saved custom snippet would not retain its translations when dropped for the first time on the "Contact Us" page. - This occurred because the `ir.ui.view` model had only one record for `website.contactus` with `website_id=NULL`. When the snippet was dropped, a new `ir.ui.view` record was created for `website_id=1` (or the current website). During this process, only the English `jsonb` content of the snippet was added to the `arch_db` field of `ir.ui.view`. After this PR: - The saved custom snippet now retains its translations when dropped for the first time on the "Contact Us" page. Task-4543654 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
This update resolves an issue where predictions were incorrectly enabled during the Peppol retrieve (BIS3) process, potentially leading to data changes. By correctly passing the necessary context and adding preventative tests, this fix ensures the stability and reliability of this critical functionality within version 17.0.
Original PR description
Before this commit, the Peppol retrieve (BIS3) had the possibility of being changed because predictions were not disabled correctly due to the context not being passed properly. To avoid this issue, we now pass the context correctly and added tests to prevent future errors. This commit is specific to version 17.0, as this version requires different changes compared to upper versions. Ticket [link](https://www.odoo.com/odoo/project.task/5441710) opw-5441710
This update corrects a problem where predictions were incorrectly enabled during the Peppol retrieve (BIS3) process, potentially leading to data changes. By ensuring the correct context is passed and adding preventative tests, this fix enhances the stability and reliability of this critical business function. This change is specific to version 17.0.
Original PR description
Before this commit, the Peppol retrieve (BIS3) had the possibility of being changed because predictions were not disabled correctly due to the context not being passed properly. To avoid this issue, we now pass the context correctly and added tests to prevent future errors. This commit is specific to version 17.0, as this version requires different changes compared to upper versions. Ticket [link](https://www.odoo.com/odoo/project.task/5441710) opw-5441710
This update resolves a crash that occurred when users attempted to confirm invoices with a specific journal configuration. The fix prevents an error when Electronic Invoicing is enabled without associated documents, ensuring smoother invoice processing.
Original PR description
Currently, an error occurs when the user tries to confirm an invoice using a misconfigured journal. **Steps to produce:-** - Install the **Accounting** module and switch to the "EC company" with demo…
Currently, an error occurs when the user tries to confirm an invoice using a misconfigured journal. **Steps to produce:-** - Install the **Accounting** module and switch to the "EC company" with demo data. - Navigate to `Accounting > Journals, open the journal named "001-001 Facturas de cliente", and duplicate it`. - In the duplicated journal: - `Uncheck` the `Use Documents` option. - Under Advanced Settings, `enable` the `Electronic Invoicing` option and save. - Create a new invoice using the `001-001 Facturas de cliente (Copy)` journal. - Change the invoice name to `test`. - Attempt to `confirm` the invoice. **Error:-** `IndexError: list index out of range` **Cause:-** - When the user disables "Use Documents" and enables EDI, the journal saves with EDI active but without showing the related configuration. **Solution:-** - Updated the `invisible` attribute for the EDI config group in the journal form view to prevent evaluation errors when "Use Documents" is not enabled. **sentry-6785644675**
This update corrects a display issue in the Follow-up Levels list view. Previously, an activity was always shown even when 'Schedule Activity' was disabled. Now, the activity column only appears when 'Schedule Activity' is enabled, ensuring a cleaner and more accurate view of follow-up levels.
Original PR description
Currently, follow-up levels display an `activity` in the list view even when the `Schedule Activity` option is not enabled on the record. **Steps to reproduce:** - Install the `account_followup`…
Currently, follow-up levels display an `activity` in the list view even when the `Schedule Activity` option is not enabled on the record. **Steps to reproduce:** - Install the `account_followup` module. - Navigate to Accounting > Configuration > Invoicing > Follow-up Levels. - Click `New` and enter a `description`. - Open the `Activity tab`, `enable` Schedule Activity, set an Activity Type and Summary, then `save`. - `Disable` Schedule Activity, `save` the record again, and return to the `list view`. - Observe the `Activity` for the newly created follow-up level. **Observation:** The Activity column still shows a value in the list view, even though Schedule Activity is unchecked. **Root Cause:** At [1], `activity_type_id` is always shown in the list view without considering `create_activity`, causing the `activity` to remain visible even when `Schedule Activity` is `disabled`. **Fix:** This commit ensures that the `Activity` is displayed in the list view only when `Schedule Activity` (`create_activity`) is enabled for the record. [1]: https://github.com/odoo/enterprise/blob/d7882a8f97802d7302d81c1fa375a81bb4ca4717/account_followup/views/account_followup_line_views.xml#L13 opw-5476176
This update fixes a usability issue where the barcode on customer receipts was too narrow, making it difficult for staff to scan. The barcode width has been increased to ensure reliable scanning and streamline the order fulfillment process. This change enhances the overall customer experience.
Original PR description
Step to reproduce; - install pos_loyalty - create a loyalty program of type "next order coupon" with minimum spend of 1$. - open pos and settle a order, see receipt. Issue: - currently bar-code is too narrow, making it difficult for to be scanned Fix: - increase the width of barcode, so it can be easily scanned. <table> <tr> <td> <b>Before</b> </td> <td> <b>After</b> </td> </tr> <tr> <td> <img width="451" height="508" alt="image" src="https://github.com/user-attachments/assets/a0d1e95e-0a9d-4552-977a-0ad9686867b8" /> </td> <td> <img width="456" height="517" alt="image" src="https://github.com/user-attachments/assets/40d04ac4-9ffc-4f81-a063-31b3ea26b4e1" /> </td> </tr> </table> opw-5363916 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
This update resolves an issue where the payer company was incorrectly identified in the 1099 report CSV file when multiple companies were involved. The fix ensures that each 1099 vendor is accurately assigned to the correct company, improving the accuracy of tax reporting. This resolves a previous error impacting multi-company reporting.
Original PR description
When generating 1099 report with multicompany setup, the payer company is wrongly assigned in the csv file. Steps: - Have 2 companies - Make one bill per company with one different 1099 vendor for each one - With both companies selected, generate the 1099 report - open the csv file -> Payer name is the same for both line opw-5442190