Daily updates from Odoo
Navigate
Branch
Thursday, December 25, 2025
20 changes
3 changes
Resolved issues and error corrections
This update resolves an issue preventing invoices from correctly scanning with ZATCA. The QR code previously included timezone information, which ZATCA requires to be omitted. This change ensures the invoice time data is formatted as expected by the Saudi Arabian tax authority, facilitating accurate scanning and compliance.
Original PR description
In ZATCA phase 1, after converting the time to Asia/Riyadh timezone, the time information is added to the qr code in iso format which concatenates the timezone ("+03:00"). However, ZATCA expects the time to simply be sent as is in Asia/Riyadh timezone.
Task: 5319097
Description of the issue/feature this PR addresses:
Current behavior before PR:
Desired behavior after PR is merged:
---
I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
Forward-Port-Of: odoo/odoo#241075This update fixes a critical issue where sending invoices via Peppol would cause the system to crash if an invoice line lacked a product name. Now, the system validates this information and displays a clear error message to the user, ensuring invoices are sent correctly and preventing data loss. This improves the reliability of our Peppol invoice processing.
Original PR description
Before this commit: When sending an invoice via Peppol with an invoice line that has no product name, the system crashes with a TypeError instead of showing a error message. Steps to reproduce: 1. Go to Accounting 2. Navigate to Customers > Invoices 3. Create a new invoice 4. Add an invoice line without entering a product name 5. Click 'Send' 6. Select 'by Peppol (Demo)' 7. Click 'Send' -> TypeError: 'NoneType' object is not subscriptable After this commit: System validates that the product name exists before accessing its text content. Users see a clear, error message: `Each invoice line should have a product or a label.` task-5432061 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#241135 Forward-Port-Of: odoo/odoo#240908
This update fixes inaccuracies in the Danish module description for the Odoo accounting software. The changes ensure the module's details are accurate and consistent, improving clarity for users. This is a routine maintenance update.
Original PR description
There were some mistakes in the Danish part of the module description. This commit corrects those mistakes. Forward-Port-Of: odoo/odoo#239180
2 changes
Resolved issues and error corrections
This update resolves an issue preventing invoices from correctly scanning with ZATCA. The previous system incorrectly included timezone information in the QR code, which ZATCA requires to be sent without timezone data. This change ensures invoices meet ZATCA's requirements, facilitating accurate processing.
Original PR description
In ZATCA phase 1, after converting the time to Asia/Riyadh timezone, the time information is added to the qr code in iso format which concatenates the timezone ("+03:00"). However, ZATCA expects the time to simply be sent as is in Asia/Riyadh timezone.
Task: 5319097
Description of the issue/feature this PR addresses:
Current behavior before PR:
Desired behavior after PR is merged:
---
I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
Forward-Port-Of: odoo/odoo#241075This update fixes inaccuracies in the module description for the Danish localization (l10n_dk) within Odoo. The changes ensure accurate and consistent information for users and stakeholders. This is a routine maintenance update.
Original PR description
There were some mistakes in the Danish part of the module description. This commit corrects those mistakes. Forward-Port-Of: odoo/odoo#239180
2 changes
Resolved issues and error corrections
This update resolves an issue preventing invoices from correctly scanning with ZATCA. The QR code previously included timezone information, which ZATCA requires to be omitted. This change ensures the invoice time data is sent in the correct Asia/Riyadh format, facilitating proper ZATCA processing.
Original PR description
In ZATCA phase 1, after converting the time to Asia/Riyadh timezone, the time information is added to the qr code in iso format which concatenates the timezone ("+03:00"). However, ZATCA expects the time to simply be sent as is in Asia/Riyadh timezone.
Task: 5319097
Description of the issue/feature this PR addresses:
Current behavior before PR:
Desired behavior after PR is merged:
---
I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
Forward-Port-Of: odoo/odoo#241075This update fixes inaccuracies in the module description for the Danish localization (l10n_dk) within Odoo. The changes ensure accurate and clear information for users, improving the overall quality of the module. This is a routine maintenance fix.
Original PR description
There were some mistakes in the Danish part of the module description. This commit corrects those mistakes. Forward-Port-Of: odoo/odoo#239180
9 changes
New functionality added to Odoo
This update adds crucial financial reports – Balance Sheet and Profit & Loss – to the Odoo Enterprise system for Mauritania. This expansion allows Mauritanian businesses using Odoo to generate accurate financial statements in the local currency and reporting format, improving compliance and financial insights.
Original PR description
Add the Balance Sheet and Profit & Loss to the Mauritanian localization. task-4236158 Forward-Port-Of: odoo/enterprise#102826 Forward-Port-Of: odoo/enterprise#86530
This update introduces pre-defined asset models specifically tailored for German accounting requirements (l10n_de). It adds new accounts to the company's chart of accounts (SKR03 and SKR04) to accurately track depreciation, ensuring compliance with German tax regulations.
Original PR description
For the l10n of Germany, creating pre-defined asset models and adding new accounts in the CoA (SKR03 and SKR04) corresponding to the depreciation accounts task-5236587
Enhancements to existing features
This update enhances our stock management capabilities by adding the ability to scan RFID devices directly, eliminating the need for a dedicated mobile app. The change utilizes existing barcode scanning technology, streamlining the process and improving efficiency. A related naming refactoring is also being implemented.
Original PR description
Now, we have an EPC decoder, we can add support for reading values from an RFID device without requiring a specific mobile app. To achieve this, we use the same entry point as the one used for barcode scanning. As a result, a refactoring of the naming is planned on the master branch. Forward-Port-Of: odoo/enterprise#102854
Resolved issues and error corrections
This update refines the chat window's closing behavior, specifically addressing adjustments to AI overrides. The change ensures compatibility with the latest AI API, enhancing the overall chat experience. This improves the reliability and performance of the chat feature.
Original PR description
The community counterpart of this PR cleans the chat window close override. This commit adapt the ai overrides to the new API. community: https://github.com/odoo/odoo/pull/240553
This update resolves a recurring issue where a tour within the MRP barcode process was failing intermittently. The fix adds a check to ensure all necessary data is loaded before proceeding, preventing errors caused by timing conflicts. Simplifying the tour and adding extra steps ensures a smoother and more reliable user experience.
Original PR description
Test `test_no_split_uncompleted_done_move` is failing non-deterministically after https://github.com/odoo/enterprise/pull/98184 Because it was going too fast and sometimes the lines wouldn't have been loaded by the time its the step's turn. A check was added in order to make sure the lines are loaded before moving onto the next steps This commit also simplifies the tour and adds extra steps to avoid failure. Runbot: 234351 Forward-Port-Of: odoo/enterprise#100329
A recent test tour failed due to an unexpected disappearance of a newly created barcode line. This fix ensures a consistent and predictable process for scanning GS1 barcodes during package receipt, improving the reliability of our test procedures. The update also refines the tour triggers and uses helper methods for better control.
Original PR description
Runbot build error: [232683](https://runbot.odoo.com/odoo/runbot.build.error/232683) Forward-Port-Of: odoo/enterprise#101495
This update expands the functionality of the 'itsme' system to include countries beyond Belgium and the Netherlands, aligning with official coverage. This ensures that Odoo Enterprise users in more locations can utilize this secure authentication method, improving access and compliance. The change addresses a previous limitation and enhances the system's global reach.
Original PR description
Extend itsme availability beyond BE and NL to match the official itsme coverage: https://www.itsme-id.com/en-BE/business/coverage task-5424818 Forward-Port-Of: odoo/enterprise#102823 Forward-Port-Of: odoo/enterprise#102423
This update fixes a technical error that prevented some users from opening the timesheet application. The issue stemmed from incorrect menu ordering and access permissions, which caused a system traceback. The fix ensures all users can correctly access and utilize the timesheet functionality.
Original PR description
Steps to reproduce: - Login through user who has user:own timesheets only access or group_hr_timesheet_user only (basically `user demo` when demo data is installed). - Open timesheets apps. Issue: -…
Steps to reproduce: - Login through user who has user:own timesheets only access or group_hr_timesheet_user only (basically `user demo` when demo data is installed). - Open timesheets apps. Issue: - Traceback appears. Reason: - Here due to manually pushing `Timesheet Assistant Menu` having lower sequence(7) than `My Timesheets` (default sequence 10), so action is called which tries to search for which a base user will never have access to. Thus a traceback. - Also own timesheets user doesnt have access to `aw.rule` model which is need to open `Timesheet Assistant Menu`. Fixes: - Added sudo to search through action windows which is needed. - Reorder menu items sequence so we have `My Timesheets` in the starting and then `Timesheet Assistant Menu` is loaded. - Added a entry in model access CSV to give read access to aw.rule model records. Another small issue was when we generate fake data using `AwFakeEventsService` we source out all type of projects and tasks, which might cause some errors as they dont have account_id needed to make timesheets thus throwing validation on save. Fixed that by adding domain in fetch non-template data. task-5438048 Forward-Port-Of: odoo/enterprise#102779
This update resolves an issue where the 'Select All' button in the documents control panel only processed the first 40 files. Now, all selected files (regardless of the number) are correctly included when performing actions like duplication or moving to the trash. This ensures consistent and reliable functionality for managing large document sets.
Original PR description
Steps to Reproduce =================== 1. Upload more than 40+ files in a folder. (One page displays upto 40 docs) 2. Use the checkbox to select all files on the page (this selects only 40 files) 3.…
Steps to Reproduce =================== 1. Upload more than 40+ files in a folder. (One page displays upto 40 docs) 2. Use the checkbox to select all files on the page (this selects only 40 files) 3. Click the 'Select All' button in the control panel to select all 40+ files. 4. Now, try duplicating or moving them to the trash. => Only the first 40 selected files (on the single page) are considered for action, not all the selected files. Technical ========== For documents control panel action we have custom handling for selecting records and executing action. We use `model.root.selection` which only consider records in current page, case of select all records from other pages is missed here. After this PR ================== - All selected records are considered for the actions - Added custom `getResIds` method to get filtered `resIds` as per domain. Note: `getResIds` in DynamicList doesn't have custom domain feature so create our own as per use case Task-4700841 Forward-Port-Of: odoo/enterprise#101996 Forward-Port-Of: odoo/enterprise#87634
2 changes
Resolved issues and error corrections
This update resolves an issue preventing invoices from correctly scanning with ZATCA. The QR code previously included timezone information, which ZATCA requires to be omitted. This change ensures the invoice time data is sent in the correct Asia/Riyadh format, facilitating proper ZATCA processing.
Original PR description
In ZATCA phase 1, after converting the time to Asia/Riyadh timezone, the time information is added to the qr code in iso format which concatenates the timezone ("+03:00"). However, ZATCA expects the time to simply be sent as is in Asia/Riyadh timezone.
Task: 5319097
Description of the issue/feature this PR addresses:
Current behavior before PR:
Desired behavior after PR is merged:
---
I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
Forward-Port-Of: odoo/odoo#241075This update enhances the automated checks performed on Odoo's software dependencies. Previously, these checks were somewhat inconsistent, and this change streamlines the process for identifying and resolving potential issues. The updated `requirements-check.py` ensures more reliable and consistent validation of Odoo's software components, contributing to a more stable and secure environment.
Original PR description
Description of the issue/feature this PR addresses: Current behavior before PR: Desired behavior after PR is merged: --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
2 changes
Resolved issues and error corrections
This update resolves an issue where accountants without HR security group access couldn't view batch payment orders. The fix prevents access errors related to the employee_ids field, ensuring all accountants can manage these orders correctly. This improves the efficiency of accounting workflows.
Original PR description
**Description of the issue/feature this PR addresses:** It is not possible to access batch payment orders if you are an accountant and are not at the same time in any HR security group. **Current behavior before PR:** Access Error for field `employee_ids` **Desired behavior after PR is merged:** Accessing is as expected. Info: @wt-io-it --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
This update resolves an issue where public holidays without specific work entries caused a system error. The fix ensures correct payroll calculations for all public holidays, regardless of whether a dedicated entry exists. This improves payroll accuracy and reliability for all users.
Original PR description
odoo/enterprise#95178 was fixing a localized issue and introduced an international issue when public holidays do not have dedicated work entries.