Friday, February 6, 2026
14 changes · 19.0
Enhancements to existing features
The Spain Point of Sale module name now clearly shows it is deprecated. This helps users avoid starting new work with the old module while a replacement with SII compatibility is pending in a future release.
Original PR description
- We are waiting for the `saas-19.2` version to be released with the new Spain POS module with SII compatibility. - Until then, we are just adding `[Deprecated]` tag to the `Spain - Point of Sale` module name. - TODO: remove this `l10n_es_pos` module in the master, after `saas-19.2` version release. Task-5354717
Resolved issues and error corrections
This fix prevents the Mail composer from saving empty draft content in the browser's local storage. It keeps draft recovery focused on real messages and avoids unnecessary stale or blank entries for users.
Original PR description
Task-5905834
The Website editor now applies the correct menu positioning for the Vertical and Menu Sale 3 header templates. This keeps storefront navigation visually aligned as intended, improving page polish without changing functionality.
Original PR description
Steps to produce: --- - Install website module. - Go to Website > Edit. - Select the header and choose Vertical or Menu Sale 3 template. Issue: --- - In both Vertical and Menu Sale 3 templates, the…
Steps to produce: --- - Install website module. - Go to Website > Edit. - Select the header and choose Vertical or Menu Sale 3 template. Issue: --- - In both Vertical and Menu Sale 3 templates, the navbar is aligned to the `start`. - This happens because `justify-content-start` is applied to the navbar container. Solution: --- - For **Vertical** template, it should be `justify-content-center`. - For **Menu sale** 3 template, it should be `justify-content-end`. Before: --- - `Vertical` <img width="1349" height="114" alt="image" src="https://github.com/user-attachments/assets/d82a4393-a7d2-4eca-9d57-3a779465cab1" /> - `Menu sale - 3` <img width="1416" height="115" alt="image" src="https://github.com/user-attachments/assets/133a07ea-85a9-4843-92b2-bf639782983f" /> After: --- - `Vertical` <img width="1389" height="116" alt="image" src="https://github.com/user-attachments/assets/08116ac3-8a85-44ae-89c2-78b2d0623cbc" /> - `Menu sale - 3` <img width="1386" height="124" alt="image" src="https://github.com/user-attachments/assets/4c939b6d-35fd-4ea6-be80-ba2b7e11aa9d" /> Note: --- - As this is a small and simple case, the tour has not been added to avoid unnecessary overhead. opw-5908224 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
This change re-enables automated checks for sales inventory accounting scenarios. It helps maintain confidence that stock valuation and related accounting behavior continue to work correctly as the product evolves.
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
The Cyprus tax return now calculates VAT payable or refundable as output VAT minus input VAT. This prevents the report from showing the amount with the wrong sign, helping businesses review VAT obligations more accurately.
Original PR description
**Steps to produce:** - Install the l10n_cy and accountant modules - Switch to `CY Company`. - Go to accounting > reports > Tax return. **Issue:** - The formula for VAT payable or refundable (difference between box 4 and 3) is incorrect. - box 3 refers to `Total output VAT` and box 4 refers to `Input VAT`. - Current formula: `cy_4.balance - cy_3.balance` **Fix:** - Formula for VAT payable or refundable should be output VAT - input VAT. - Update the formula to: `cy_3.balance - cy_4.balance` <img width="769" height="86" alt="image" src="https://github.com/user-attachments/assets/923a92f9-fc57-465a-9592-771730ee6870" /> opw-5751369 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#247309 Forward-Port-Of: odoo/odoo#246273
Romanian vendor bills received through ANAF can now be reset to draft even when they already have an electronic invoicing status. This fixes a workflow blocker so accounting teams can correct or reprocess those bills when needed.
Original PR description
Adjusting the visibility check for "Reset to draft" button to allow Vendor Bills received from ANAF to be reset even when they have a EDI state. Will require to be shifted to `l10n_ro_edi` in 18.0+ as the efactura module is merged into it. task-5892651 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#247266 Forward-Port-Of: odoo/odoo#246697
The website editor will no longer show an unsupported image shape option for dynamic SVG images. This prevents users from hitting errors while editing these images and keeps the editing experience smoother.
Original PR description
The image shape option was added for dynamic SVG with the new builder in saas-18.4. However, this seems to be an error since shapes are not supported with dynamic SVG. The image shape option will not appear anymore in such cases to avoid tracebacks for the user. task-5451405 Forward-Port-Of: odoo/odoo#242506
This update resolves an issue where uploading PDF files with duplicate metadata caused errors in the sign module. The fix prevents these errors, ensuring users can successfully upload PDFs with multiple form field definitions, improving the reliability of the sign process.
Original PR description
Currently, an error occurs when uploading a PDF file that contains `duplicate metadata` definitions. **Steps to produce:** - Install the `sign` module. - Open `sign` app and upload duplicate metadata pdf file [1]. **Error:** `PyPDF2.errors.PdfReadError: Multiple definitions in dictionary at byte 0x5f for key /PageMode` **Root cause:** At [2], the code tries to read form fields using `pdf_reader.getFormTextFields()`, when the uploaded PDF contains `duplicate metadata`, Python raises an `error`. **Fix:** This commit prevents errors and ensures that users can successfully upload PDF files containing `duplicate metadata`. [1]: https://drive.google.com/file/d/1wtyEt3lLqUrSkhvZC9t-A1AQ2eHozu-g/view?usp=sharing [2]: https://github.com/odoo/enterprise/blob/0c42f35727097d4a301bed855b782baa26274667/sign/utils/pdf_handling.py#L31 sentry-6941428081
This update fixes an issue in the French P&L report where accounts 65 were incorrectly categorized. The accounts have been moved to the 'Other Expenses' line, ensuring accurate financial reporting. This improves the clarity and reliability of the French financial statements.
Original PR description
On the french P&L, accounts 65 are refferenced in the line 'Other purchases and external charges' but this is not where those accounts need to be, they need to be part of the line 'Other Expenses' task-5446018 Forward-Port-Of: odoo/enterprise#106465 Forward-Port-Of: odoo/enterprise#103357
This update resolves an issue where subscription cancellations for internal users (like 'Mitchel Admin') would trigger access errors. The fix uses 'sudo' to allow necessary data updates on the partner record during cancellation, ensuring the process runs smoothly. This prevents disruptions to subscription management.
Original PR description
*: sale_subscription_partnership To reproduce: ============= 1/ be sure Marc Demo has only sales admin righ 2/ as admin create a subscription with customer = Mitchel Admin (or other internal user) and confirm it (only confirm, do not invoice) 3/ as demo, cancel the SO => Acccess error on res.user Problem: ======== When cancelling a subscription we want to write some fields on the partner related to the SO. If the partner is an internal user, and the current user has no access to write on res.users, we get an access error. Solution: ========= Use sudo when writing on the partner when cancelling a subscription. opw-5857627 Forward-Port-Of: odoo/enterprise#106393 Forward-Port-Of: odoo/enterprise#105901
This update ensures that the 'Pay Now' link in subscription payment flows only appears when the advanced payment section is visible. This prevents confusing links from showing up when products associated with the subscription have been archived, leading to a cleaner and more user-friendly experience for customers.
Original PR description
When the subscription is expired and has to be paid, only use an anchor for `Pay Now` if the advance payment section is displayed (it could be hidden for ex. if any of the product has been archived) Forward-Port-Of: odoo/enterprise#105802 Forward-Port-Of: odoo/enterprise#105480
This update resolves an issue where closed tickets with high priority were incorrectly displayed in the Odoo Mail Plugin. The fix filters out tickets in 'folded' stages, ensuring users only see active tickets related to their contacts. This improves the plugin's usability and accuracy.
Original PR description
**Steps to reproduce:** - Install Mail_plugin - Setup the outlook mail plugin in Outlook - Once connected, click on a mail from a contact on the database - Click on the Odoo Inbox Addin. action - Under the contact 5 related tickets are showed - Create 5 tickets with priority and put them in folded stage (closed) - Create new normal tickets - User can't see new tickets in the plugin **Issue:** The search is done on priority and then id ordering, this means that tickets in folded stages (closed) which have a high priority are always showed first. Tickets in a folded stage are considered as closed, so they should not appear anymore in the contact data to avoid displaying them indefintely. **Fix:** Adapted search domain and removed fold attribute in the answer. opw-5075477 Forward-Port-Of: odoo/enterprise#100883
This update fixes a test within the l10n_mx_edi module to accurately reflect recent changes to how CFDI export ZIP files are generated. Previously, the test only checked for the CFDI XML, but now it includes all attachments from the mail thread (like PDFs) ensuring the export is fully compliant. This ensures accurate reporting and compliance for Mexican tax filings.
Original PR description
Before this commit: The test assumed that extra_print_items only included the CFDI XML, as the ZIP export previously contained only PDF documents. After this commit: The test now reflects the updated ZIP export behavior introduced by task-5232551, where all attachments from the mail thread are included (PDF, XML, etc.). task-5232551 --- I confirm I have signed the CLA and read the PR guidelines at [www.odoo.com/submit-pr](http://www.odoo.com/submit-pr)
This update fixes a minor issue where the system wasn't correctly processing weight readings from the scale, particularly when using the 'read_once' action. Now, the system reliably handles all weight readings, ensuring accurate inventory tracking and preventing potential data discrepancies. This backports a fix from a previous enterprise release.
Original PR description
This commit adjusts the callback when a new weight is received from the scale to also handle the case where it is the response to the `read_once` action. In this case, the `status` key is `success`. backport of: odoo/enterprise#105324