Saturday, November 29, 2025
4 changes · 19.0
Enhancements to existing features
This update brings Odoo's Swissdec ELM Certification in line with version 19.0, enhancing compliance with Swiss regulations. Key improvements include support for French-crossborder worker telework, adjustments to retirement regulations, and automated calculations for child and education allowances, ensuring accurate reporting.
Original PR description
This Pull request extends the Odoo Swissdec ELM Certification to the minor version 5.3. By doing so we add the following features : - Telework Percentage declaration for French-crossborder comuters - Adapting to AVS21 regulation, where retired employees can refuse their right to retirement - Adding automatic Child and education allowance calculation - Add the calculation of LPP in % - Allowing the specification of custom employer parts for LAAC and IJM Forward-Port-Of: odoo/enterprise#95518
Resolved issues and error corrections
This update resolves an issue where Italian e-invoicing rejections weren't being properly recorded in Odoo. Now, when an invoice is rejected by the Italian system, the error message is correctly stored and displayed, ensuring accurate tracking and reporting for users. This improves the reliability of the Italian e-invoicing integration.
Original PR description
If an invoice sent through the Italian EDI gets rejected, a traceback appears:
```
`errors = '\n- '.join(error.get('errors', ''))
^^^^^^^^^
AttributeError: 'str' object has no attribute 'get'`
```
`moves_data[move]['error']` shouldn't be a string, as `_hook_if_errors()` expects a dictionary from this PR odoo/odoo#224267 on.
We restore the functionality by changing the error type.
Ticket [link](https://www.odoo.com/odoo/project.task/5271525)
opw-5271525This update resolves an issue where the DIOT report export failed when journal entries lacked a linked partner. The fix ensures the report generation process continues smoothly by explicitly handling entries without a partner, preventing errors and improving data accuracy. This ensures consistent reporting for all financial data.
Original PR description
**Steps to reproduce:** 1. Install `Accounting` and `l10n_mx_reports` modules. 2. Create two journal entries using DIOT tax grid: one with partner, one without 3. Confirm the entries. 4. Go to `Accounting → Reporting → Tax Report → DIOT (MX)`. 5. Try to print the DIOT report in TXT format from the top-right dropdown. **Observed behavior:** * Export fails with a traceback if any entry has no partner. **Root cause:** The method `_get_diot_values_per_partner` does not handle entries without partners. **Solution:** raise `Usererror` if entries without partners when sorting and exporting. note: The second commit addresses a traceback caused by a missing operation_type_code. This occurs when all entries lack a partner or when a partner’s operation_type_code field is not set. opw-5060825 Forward-Port-Of: odoo/enterprise#100843 Forward-Port-Of: odoo/enterprise#96529
This update optimizes the way the Point of Sale system handles attribute exclusions. Previously, the system checked every attribute for exclusion, which was slow. Now, the exclusion process is performed only once when the POS is loaded, resulting in a noticeable performance improvement. This change enhances the speed and responsiveness of the Point of Sale experience.
Original PR description
Before this commit, the computation of the exclusion of some attributes based on other selected was going through every attribute to determine if it was excluded or not. This is now done once at the loading of the pos. --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#216392 Forward-Port-Of: odoo/odoo#213789