Daily updates from Odoo
Saturday, June 6, 2026
18 changes
4 changes
Enhancements to existing features
This update introduces a new button to streamline the process for French users switching between Peppol and PDP accounts. Previously, reregistration was complex, particularly when transitioning between these systems. This change simplifies the process, improving usability and supporting key business workflows related to PEPPOL compliance.
Original PR description
#### [IMP] l10n_fr_pdp: fix visibility for peppol (non-PDP) #### [IMP] account_peppol,l10n_fr_pdp: reregister This commit adds a button so that users can reregister more easily. This is i.e. useful to switch from Peppol to PDP for French users. #### meta task-6265603 Forward-Port-Of: odoo/odoo#268699 Forward-Port-Of: odoo/odoo#267948
This update implements webhooks for exchanging Peppol documents in the French (l10n_fr_pdp) module. This was previously missing in the 18.0 release and is now essential for compliant data exchange with Peppol, ensuring accurate financial reporting. The change was implemented to address a gap identified during the recent system migration.
Original PR description
We did not have webhooks in 18.0 for Peppol and we did not have time to implement / test it during the FW-porting. This commit adds the route on community side that is called from IAP. task-None IAP PR: https://github.com/odoo/iap-apps/pull/1639 Forward-Port-Of: odoo/odoo#268674 Forward-Port-Of: odoo/odoo#268472
Resolved issues and error corrections
This update fixes a previous issue where the system incorrectly identified SIREN numbers by simply using the first 9 digits of the company ID. Now, a validation helper method is used to ensure accurate SIREN identification, particularly for users on IAP who may not have provided a SIREN. This improves the accuracy of KYC processes.
Original PR description
Currently we just take the first 9 numbers of the `company_id` and say it is the SIREN. On IAP we have some people who just seem to have put their company name. After this commit we use a helper method that does some simple validation at least. task-None Forward-Port-Of: odoo/odoo#268621 Forward-Port-Of: odoo/odoo#268202
This update resolves a bug where shift allocations incorrectly showed 0% when created on weekends, preventing accurate time calculations. Additionally, a test was adjusted to avoid running during demo data installations, ensuring a smoother user experience. These changes improve the reliability and usability of the planning module.
Original PR description
## [FIX] planning_field_service: avoid division by 0 Before this commit, when the shift is created during the weekend, the allocated_percentage will be 0 percent because the resource assigned is not…
## [FIX] planning_field_service: avoid division by 0 Before this commit, when the shift is created during the weekend, the allocated_percentage will be 0 percent because the resource assigned is not supposed to work at that day and so a division by zero occured in the onchange of break_time field in planning.slot model. This commit checks if allocated_percentage is not equal to 0 before computing the new allocated hours when the user alters break_time field on a planning.slot. ## [FIX] planning_field_service: don't start test with onboarding tour with demo Before this commit, the planning_field_service_tour tour does not work when there is demo data because the tour will select the first slot in the gantt view which will be an open shift instead of a shift assigned to the current user because of that, the sign in button is not displayed as expected. This commit makes sure the test running the planning_field_service_tour tour is skipped when demo data are installed. runbot-error-242483 Forward-Port-Of: odoo/enterprise#119032
5 changes
New functionality added to Odoo
This update implements webhooks for exchanging Peppol documents in the French (l10n_fr_pdp) module. This was previously missing in the 18.0 release and is now necessary to comply with European regulations. The change is triggered through the IAP system.
Original PR description
We did not have webhooks in 18.0 for Peppol and we did not have time to implement / test it during the FW-porting. This commit adds the route on community side that is called from IAP. task-None IAP PR: https://github.com/odoo/iap-apps/pull/1639 Forward-Port-Of: odoo/odoo#268674 Forward-Port-Of: odoo/odoo#268472
Enhancements to existing features
This update introduces a new button to streamline the process for French users switching between Peppol and PDP registration. Previously, this transition was complex and prone to issues, particularly during testing. This change improves usability and ensures a smoother experience for users managing their Peppol and PDP connections.
Original PR description
#### [IMP] l10n_fr_pdp: fix visibility for peppol (non-PDP) #### [IMP] account_peppol,l10n_fr_pdp: reregister This commit adds a button so that users can reregister more easily. This is i.e. useful to switch from Peppol to PDP for French users. #### meta task-6265603 Forward-Port-Of: odoo/odoo#268699 Forward-Port-Of: odoo/odoo#267948
Resolved issues and error corrections
This update fixes a discrepancy in the Swiss Balance Sheet by restructuring the equity section. Specifically, it adds a 'Profit / Loss brought forward' line to accurately separate legal reserves from retained earnings, improving the accuracy of financial reporting. The 'Annual profit or annual loss' field is now used solely for informational purposes.
Original PR description
Fix the Equity section in the Swiss Balance Sheet. Adding a new line 'Profit / Loss brought forward' for the result brought forward, that allows to separate the legal reserve and the results. The new structure for the equity section is: - Share, corporate or foundation capital - Legal reserve - Retained earnings - Profit / Loss brought forward - Previous years' unallocated profit or loss - Treasury shares The 'Annual profit or annual loss' is now purely indicative and is not taken into account in the equity computation, as the amounts in this section are considered in the new Retained Earnings section. task-6220525 Forward-Port-Of: odoo/enterprise#117601
This pull request updates the core spreadsheet component (o_spreadsheet) with several bug fixes and performance improvements. These changes address issues related to pivot tables, chart exports, and overall spreadsheet stability, ensuring a smoother user experience. The update includes optimizations for performance and reliability.
Original PR description
### Contains the following commits: https://github.com/odoo/o-spreadsheet/commit/d29528ea9f [REL] 19.2.15 [Task: 0](https://www.odoo.com/odoo/2328/tasks/0)…
### Contains the following commits: https://github.com/odoo/o-spreadsheet/commit/d29528ea9f [REL] 19.2.15 [Task: 0](https://www.odoo.com/odoo/2328/tasks/0) https://github.com/odoo/o-spreadsheet/commit/9e4e0e870a [FIX] pivot: adding a pivot definition marks it as unused [Task: 6267596](https://www.odoo.com/odoo/2328/tasks/6267596) https://github.com/odoo/o-spreadsheet/commit/1f15b4fac7 [FIX] Pivot: runtime definition might not be loaded [Task: 6267596](https://www.odoo.com/odoo/2328/tasks/6267596) https://github.com/odoo/o-spreadsheet/commit/d444583613 [FIX] Formats: support non-standard space characters [Task: 6259325](https://www.odoo.com/odoo/2328/tasks/6259325) https://github.com/odoo/o-spreadsheet/commit/1cd1517c91 [FIX] xlsx: preserve chart title font size on xlsx export [Task: 6000071](https://www.odoo.com/odoo/2328/tasks/6000071) https://github.com/odoo/o-spreadsheet/commit/37a6f1b4f5 [FIX] Tables: invalidate computed style on `DELETE_CONTENT` [Task: 6253199](https://www.odoo.com/odoo/2328/tasks/6253199) https://github.com/odoo/o-spreadsheet/commit/b2c5cb95dc [FIX] table: "delete table" menu item does not always work [Task: 6247743](https://www.odoo.com/odoo/2328/tasks/6247743) https://github.com/odoo/o-spreadsheet/commit/543f6b9ebb [FIX] Registry: remove duplicate Registry class [Task: 6259131](https://www.odoo.com/odoo/2328/tasks/6259131) https://github.com/odoo/o-spreadsheet/commit/4c2f12e096 [FIX] LockedSheet: missing commands in the whitelist [Task: 6240417](https://www.odoo.com/odoo/2328/tasks/6240417) https://github.com/odoo/o-spreadsheet/commit/09d35f48e8 [PERF] menu: avoid quadratic complexity with proxies [Task: 6250318](https://www.odoo.com/odoo/2328/tasks/6250318) Co-authored-by: Florian Damhaut (flda) <flda@odoo.com> Co-authored-by: Anthony Hendrickx (anhe) <anhe@odoo.com> Co-authored-by: Alexis Lacroix (laa) <laa@odoo.com> Co-authored-by: Lucas Lefèvre (lul) <lul@odoo.com> Co-authored-by: Adrien Minne (adrm) <adrm@odoo.com> Co-authored-by: Ronak Mukeshbhai Bharadiya (rmbh) <rmbh@odoo.com> Co-authored-by: Dhrutik Patel (dhrp) <dhrp@odoo.com> Co-authored-by: Rémi Rahir (rar) <rar@odoo.com> Co-authored-by: Pierre Rousseau (pro) <pro@odoo.com> Co-authored-by: Vincent Schippefilt (vsc) <vsc@odoo.com> Co-authored-by: Marceline Thomas (matho) <matho@odoo.com>
This update prevents users with limited access from modifying timesheet entries automatically generated for public holidays. Previously, these entries were editable, leading to potential inaccuracies in reporting and payroll. This change ensures data integrity and consistency across all time-off calculations.
Original PR description
Timesheet entries generated from public holidays are currently editable by users with minimal rights. Although these entries appear greyed out, they can still be modified, which can lead to inconsistencies in reporting and payroll calculations. This behavior is inconsistent with other time-off–related entries, which are non-editable by default. Hence, this commit makes global time off timesheet entries non-editable in all views, except the grid, which instead displays a user error if they try to edit the timesheet amount. Backport of odoo/odoo#248282 Forward-Port-Of: odoo/odoo#268314
6 changes
Enhancements to existing features
This update introduces a new button to streamline the process for French users switching between Peppol and PDP registration. Specifically, it addresses an issue encountered during testing where resetting the Peppol EAS setting in the demo company caused problems with reregistration flows. This enhancement improves usability and simplifies a key business operation.
Original PR description
#### [IMP] l10n_fr_pdp: fix visibility for peppol (non-PDP) #### [IMP] account_peppol,l10n_fr_pdp: reregister This commit adds a button so that users can reregister more easily. This is i.e. useful to switch from Peppol to PDP for French users. #### meta task-6265603 Forward-Port-Of: odoo/odoo#267948
This update implements webhooks for exchanging Peppol documents in the French (l10n_fr_pdp) module. Previously missing due to porting delays, these webhooks ensure compliance with French tax regulations and improve data exchange efficiency. This change is driven by a business need for accurate and timely reporting.
Original PR description
We did not have webhooks in 18.0 for Peppol and we did not have time to implement / test it during the FW-porting. This commit adds the route on community side that is called from IAP. task-None IAP PR: https://github.com/odoo/iap-apps/pull/1639 Forward-Port-Of: odoo/odoo#268674 Forward-Port-Of: odoo/odoo#268472
Resolved issues and error corrections
This update corrects a calculation error in the Swiss Balance Sheet's equity reporting. A new 'Profit / Loss brought forward' line has been added to accurately separate legal reserves and retained earnings. The previous 'Annual profit or annual loss' field is now purely indicative, streamlining the reporting process for Swiss financial statements.
Original PR description
Fix the Equity section in the Swiss Balance Sheet. Adding a new line 'Profit / Loss brought forward' for the result brought forward, that allows to separate the legal reserve and the results. The new structure for the equity section is: - Share, corporate or foundation capital - Legal reserve - Retained earnings - Profit / Loss brought forward - Previous years' unallocated profit or loss - Treasury shares The 'Annual profit or annual loss' is now purely indicative and is not taken into account in the equity computation, as the amounts in this section are considered in the new Retained Earnings section. task-6220525 Forward-Port-Of: odoo/enterprise#117601
This update corrects how tax data is processed for split payments in Italy, specifically addressing issues with 'SP' taxes. By removing unnecessary tax entries and adopting accurate tax data, the system now generates more reliable and accurate tax closing entries, ensuring compliance with Italian tax regulations.
Original PR description
with this commit:- - Removing unnecessary 'SP Pos.' taxes. - Adopted correct tax data for 'SP' taxes so that it works correctly in Split Payment case. - By these changes, tax closing entries will become hermetic. task-6116304 Forward-Port-Of: odoo/odoo#264336
This pull request updates the core spreadsheet component with several bug fixes and performance improvements. It addresses issues related to pivot tables, chart exports, dark mode display, and overall stability, ensuring a smoother user experience. These changes contribute to the reliability and functionality of the spreadsheet feature.
Original PR description
### Contains the following commits: https://github.com/odoo/o-spreadsheet/commit/97a02db105 [REL] 19.1.22 [Task: 0](https://www.odoo.com/odoo/2328/tasks/0)…
### Contains the following commits: https://github.com/odoo/o-spreadsheet/commit/97a02db105 [REL] 19.1.22 [Task: 0](https://www.odoo.com/odoo/2328/tasks/0) https://github.com/odoo/o-spreadsheet/commit/abf1bf683c [FIX] pivot: adding a pivot definition marks it as unused [Task: 6267596](https://www.odoo.com/odoo/2328/tasks/6267596) https://github.com/odoo/o-spreadsheet/commit/8105e121d6 [FIX] Pivot: runtime definition might not be loaded [Task: 6267596](https://www.odoo.com/odoo/2328/tasks/6267596) https://github.com/odoo/o-spreadsheet/commit/3a66c2c76e [FIX] Formats: support non-standard space characters [Task: 6259325](https://www.odoo.com/odoo/2328/tasks/6259325) https://github.com/odoo/o-spreadsheet/commit/eb6439fae2 [FIX] xlsx: preserve chart title font size on xlsx export [Task: 6000071](https://www.odoo.com/odoo/2328/tasks/6000071) https://github.com/odoo/o-spreadsheet/commit/5049a578d4 [FIX] Headers overlay: unhide headers in dark mode [Task: 6233467](https://www.odoo.com/odoo/2328/tasks/6233467) https://github.com/odoo/o-spreadsheet/commit/c768f856d4 [FIX] Tables: invalidate computed style on `DELETE_CONTENT` [Task: 6253199](https://www.odoo.com/odoo/2328/tasks/6253199) https://github.com/odoo/o-spreadsheet/commit/19a3832efb [FIX] table: "delete table" menu item does not always work [Task: 6247743](https://www.odoo.com/odoo/2328/tasks/6247743) https://github.com/odoo/o-spreadsheet/commit/2b308f91f0 [FIX] Registry: remove duplicate Registry class [Task: 6259131](https://www.odoo.com/odoo/2328/tasks/6259131) https://github.com/odoo/o-spreadsheet/commit/aeb8b17440 [PERF] menu: avoid quadratic complexity with proxies [Task: 6250318](https://www.odoo.com/odoo/2328/tasks/6250318) Co-authored-by: Florian Damhaut (flda) <flda@odoo.com> Co-authored-by: Anthony Hendrickx (anhe) <anhe@odoo.com> Co-authored-by: Alexis Lacroix (laa) <laa@odoo.com> Co-authored-by: Lucas Lefèvre (lul) <lul@odoo.com> Co-authored-by: Adrien Minne (adrm) <adrm@odoo.com> Co-authored-by: Ronak Mukeshbhai Bharadiya (rmbh) <rmbh@odoo.com> Co-authored-by: Dhrutik Patel (dhrp) <dhrp@odoo.com> Co-authored-by: Rémi Rahir (rar) <rar@odoo.com> Co-authored-by: Pierre Rousseau (pro) <pro@odoo.com> Co-authored-by: Vincent Schippefilt (vsc) <vsc@odoo.com> Co-authored-by: Marceline Thomas (matho) <matho@odoo.com>
This update fixes a previous issue where the system incorrectly identified SIREN numbers by simply taking the first 9 digits of the company ID. Now, a validation helper method is used to ensure accurate SIREN capture, particularly for IAP users who may have only provided their company name. This improves KYC compliance and data accuracy.
Original PR description
Currently we just take the first 9 numbers of the `company_id` and say it is the SIREN. On IAP we have some people who just seem to have put their company name. After this commit we use a helper method that does some simple validation at least. task-None Forward-Port-Of: odoo/odoo#268621 Forward-Port-Of: odoo/odoo#268202
1 change
Resolved issues and error corrections
This update corrects a bug where the 'Cancel Reason' wasn't being properly transmitted when reversing invoices in Peruvian companies. Now, the credit note generated after reversing includes the user-specified cancellation reason, ensuring accurate reporting to the SUNAT and fulfilling regulatory requirements. This improves data integrity for Peruvian accounting processes.
Original PR description
### Issue before this commit: When reversing an invoice in a Peruvian company, the "Cancel Reason" entered in the credit note window is not propagated to the Peruvian EDI tab of the resulting Credit…
### Issue before this commit: When reversing an invoice in a Peruvian company, the "Cancel Reason" entered in the credit note window is not propagated to the Peruvian EDI tab of the resulting Credit Note. Only the Credit Reason is successfully reported. ### Steps to reproduce the issue: 1. Download Accounting and l10n_pe 2. Switch to PE company 3. Create an invoice and confirm it 4. Create a credit note for the invoice with a cancel reason and a credit reason and click the reverse button 5. See that in the Peruvian EDI tab only the Credit Reason is reported but not the Cancel Reason ### Cause of the issue: In the l10n_pe_edi module, the override of the _prepare_default_reversal method maps the l10n_pe_edi_refund_reason to the new move's values, but completely omits the mapping of the wizard's textual reason field to the l10n_pe_edi_cancel_reason field of the resulting credit note. ### Reason to introduce the fix: To ensure the generated credit notes contain all required information for the Peruvian EDI (SUNAT). Mapping the cancel reason guarantees that the electronic document accurately reflects both the refund code and the descriptive cancellation text provided by the user. opw-6238525 Forward-Port-Of: odoo/enterprise#118479
1 change
Enhancements to existing features
This update optimizes Odoo's database performance by implementing a layered caching system within transactions. This change reduces the load on the database, leading to faster response times and improved overall system efficiency. The update impacts several core Odoo modules to enhance performance.
Original PR description
https://github.com/odoo/odoo/pull/261736
1 change
Resolved issues and error corrections
This update corrects a bug where the 'Cancel Reason' wasn't properly transmitted when reversing invoices in Peruvian companies. Now, the credit note generated after reversing includes the user-specified cancellation reason, ensuring accurate reporting to the Peruvian tax authority (SUNAT) and compliance with regulations.
Original PR description
### Issue before this commit: When reversing an invoice in a Peruvian company, the "Cancel Reason" entered in the credit note window is not propagated to the Peruvian EDI tab of the resulting Credit…
### Issue before this commit: When reversing an invoice in a Peruvian company, the "Cancel Reason" entered in the credit note window is not propagated to the Peruvian EDI tab of the resulting Credit Note. Only the Credit Reason is successfully reported. ### Steps to reproduce the issue: 1. Download Accounting and l10n_pe 2. Switch to PE company 3. Create an invoice and confirm it 4. Create a credit note for the invoice with a cancel reason and a credit reason and click the reverse button 5. See that in the Peruvian EDI tab only the Credit Reason is reported but not the Cancel Reason ### Cause of the issue: In the l10n_pe_edi module, the override of the _prepare_default_reversal method maps the l10n_pe_edi_refund_reason to the new move's values, but completely omits the mapping of the wizard's textual reason field to the l10n_pe_edi_cancel_reason field of the resulting credit note. ### Reason to introduce the fix: To ensure the generated credit notes contain all required information for the Peruvian EDI (SUNAT). Mapping the cancel reason guarantees that the electronic document accurately reflects both the refund code and the descriptive cancellation text provided by the user. opw-6238525 Forward-Port-Of: odoo/enterprise#118479