Thursday, June 26, 2025
19 changes · master
New functionality added to Odoo
Users can now resend or cancel failed WhatsApp messages directly from the failed message indicator. This helps teams recover from delivery issues without losing failure details, even after original WhatsApp message records are cleaned up.
Original PR description
PURPOSE This commit allows users to manage failed or bounced WhatsApp messages by resending or canceling them, similar to mail, sms notifications. SPECIFICATION A new WhatsApp Resend composer lets users resend or cancel failed messages. Users can access this option from the WhatsApp icon on failed messages. Task-4267356
Enhancements to existing features
Sales subscriptions now show a clear warning when an overdue subscription is at risk of being automatically closed if it is not billed soon. This helps teams act earlier to prevent unintended subscription closures and potential revenue loss.
Original PR description
This commit adds an alert-info warning that the subscription is overdue and will be automatically closed by the system if it is not billed soon. Technically speaking, when the subscription has the `next_invoice_date` older than its `end_date` AND it is currently with in-progress state, this alert will be shown. task-4243863
Miscellaneous changes
This commit solves the following bugs in Norwegian saft as per customer feedback: 1. Removed the StandardAccountID 2. Added the CreditAmount tag value to the XML file if the both debit and credit values is 0 for an entry The latter point in needed because the SAF-T XML validator expects CreditAmount/DebitAmount tag even if the entry is empty. This case may happen if, for example, we have an exchange rate entry = $0.000001. Since the journal entry is approximating to only 2 decimal places,
Original PR description
This commit solves the following bugs in Norwegian saft as per customer feedback: 1. Removed the StandardAccountID 2. Added the CreditAmount tag value to the XML file if the both debit and credit values is 0 for an entry The latter point in needed because the SAF-T XML validator expects CreditAmount/DebitAmount tag even if the entry is empty. This case may happen if, for example, we have an exchange rate entry = $0.000001. Since the journal entry is approximating to only 2 decimal places, the amounts on the entry end up being 0s. task-4714764 Forward-Port-Of: odoo/enterprise#88580 Forward-Port-Of: odoo/enterprise#83963
This change updates image display styling to use standard Bootstrap options already available in the platform. It keeps visual behavior consistent while removing older custom styling that is no longer needed.
Original PR description
*: appointment, documents, knowledge, planning, sale_timesheet_enterprise, website_appointment_sale This commit replaces all occurrences of o_object_fit_contain and o_object_fit_cover CSS classes with their Bootstrap (v5.3) equivalent : object-fit-contain and object-fit-cover. It also removes said classes from the repo since they are no longer of use. Requires: - https://github.com/odoo/odoo/pull/215202 [task-4703046](https://www.odoo.com/web#id=4703046&cids=1&menu_id=4720&action=333&active_id=1695&model=project.task&view_type=form)
This change adjusts behavior related to deleting stages in Helpdesk. It likely improves how teams manage or clean up helpdesk workflows, with limited visible impact for everyday users.
The spreadsheet interface has been reorganized to make common actions easier to find and the top bar clearer to use. Users now see collaboration presence more directly, while saving and sharing-related options are placed in more intuitive locations, improving day-to-day spreadsheet editing.
Original PR description
Task: 4812824
This update advances the Colombian electronic invoicing and DIAN integration setup based on the current specification work. It improves configuration, demo data, invoice screens, templates, and supporting validation logic so Colombian localization flows can be tested and prepared more reliably.
Original PR description
implemented points 1-3 in spec
The live chat helpdesk command message now uses clearer wording when prompting users to create a ticket. This small text improvement makes the action easier to understand and reduces ambiguity for customers or agents using live chat.
Original PR description
Updated command message title: - `Create a new helpdesk ticket by typing:` to `Create a helpdesk ticket with:` Community PR: [#odoo/odoo203644](https://github.com/odoo/odoo/pull/203644) task-4485642
In this commit: https://github.com/odoo/enterprise/commit/74306d39479f9cfb24bb749a520c533df3f7e404 change the computation of the remaining amount of the reconcile wizard. Since selectedLineSum compute the sum of the line selected when adding 2 lines the remaining amount would be changed and kept in the state. Then adding a line again, the selectedLineSum would be the sum of the 3 lines and not just the new line that we just added. no task id Forward-Port-Of: odoo/enterprise#88067
Original PR description
In this commit: https://github.com/odoo/enterprise/commit/74306d39479f9cfb24bb749a520c533df3f7e404 change the computation of the remaining amount of the reconcile wizard. Since selectedLineSum compute the sum of the line selected when adding 2 lines the remaining amount would be changed and kept in the state. Then adding a line again, the selectedLineSum would be the sum of the 3 lines and not just the new line that we just added. no task id Forward-Port-Of: odoo/enterprise#88067
This commit will change the condition of display of the coda_split_transactions allowing users to choose whether transactions are imported individually or in batch. opw-4873108 Forward-Port-Of: odoo/enterprise#88370
Original PR description
This commit will change the condition of display of the coda_split_transactions allowing users to choose whether transactions are imported individually or in batch. opw-4873108 Forward-Port-Of: odoo/enterprise#88370
- We authorize to make payments for orders coming from Urban Piper. - After updating the order as paid, we send it to the pos_blackbox_be. task-id: 4781945 community PR: https://github.com/odoo/odoo/pull/214861 Forward-Port-Of: odoo/enterprise#87989
Original PR description
- We authorize to make payments for orders coming from Urban Piper. - After updating the order as paid, we send it to the pos_blackbox_be. task-id: 4781945 community PR: https://github.com/odoo/odoo/pull/214861 Forward-Port-Of: odoo/enterprise#87989
## Pull Request HOOT (PRHOOT) 33 This pull requests brings various improvements and fixes to Hoot and the Odoo unit test ecosystem. See the different commit messages for more details. Note: these changes are made in stable to avoid having to support multiple versions of the HOOT API. As such, these changes are intended to be strictly limited to unit tests as to not put the rest of the code base at risk. Community: https://github.com/odoo/odoo/pull/213223 Forward-Port-Of: odoo/enterpris
Original PR description
## Pull Request HOOT (PRHOOT) 33 This pull requests brings various improvements and fixes to Hoot and the Odoo unit test ecosystem. See the different commit messages for more details. Note: these changes are made in stable to avoid having to support multiple versions of the HOOT API. As such, these changes are intended to be strictly limited to unit tests as to not put the rest of the code base at risk. Community: https://github.com/odoo/odoo/pull/213223 Forward-Port-Of: odoo/enterprise#88430 Forward-Port-Of: odoo/enterprise#87476
This commit automatically enables the 'Units of Measure' setting when the user auto-fixes their settings to make their POS scale certified. While this is not a strict requirement, it helps the users to then quickly set the correct units for their products (e.g. kg) task-4885681 Forward-Port-Of: odoo/enterprise#88451 Forward-Port-Of: odoo/enterprise#88134
Original PR description
This commit automatically enables the 'Units of Measure' setting when the user auto-fixes their settings to make their POS scale certified. While this is not a strict requirement, it helps the users to then quickly set the correct units for their products (e.g. kg) task-4885681 Forward-Port-Of: odoo/enterprise#88451 Forward-Port-Of: odoo/enterprise#88134
When `next_invoice_date_at_resume` is falsy (None), the template tried to call `format_date(None)`, which resulted in a `'NoneType' object is not callable` error. This commit adds a safe check both in the controller and the template to ensure the value exists before formatting. Forward-Port-Of: odoo/enterprise#88342
Original PR description
When `next_invoice_date_at_resume` is falsy (None), the template tried to call `format_date(None)`, which resulted in a `'NoneType' object is not callable` error. This commit adds a safe check both in the controller and the template to ensure the value exists before formatting. Forward-Port-Of: odoo/enterprise#88342
This commit resolves a UI bug in chart trendlines by ensuring AxisType is properly passed from the web client to Odoo charts. Task: [4743602](https://www.odoo.com/odoo/2328/tasks/4743602) Forward-Port-Of: odoo/enterprise#88476 Forward-Port-Of: odoo/enterprise#87936
Original PR description
This commit resolves a UI bug in chart trendlines by ensuring AxisType is properly passed from the web client to Odoo charts. Task: [4743602](https://www.odoo.com/odoo/2328/tasks/4743602) Forward-Port-Of: odoo/enterprise#88476 Forward-Port-Of: odoo/enterprise#87936
when clicking the next button in the pager of the tour, it was causing issues with the report editor not being ready yet with the updated page. so added a delay after clicking n next button in the pager of the tour to avoid issues with the report editor not being ready with the updated page. build_error-163405 Forward-Port-Of: odoo/enterprise#87302
Original PR description
when clicking the next button in the pager of the tour, it was causing issues with the report editor not being ready yet with the updated page. so added a delay after clicking n next button in the pager of the tour to avoid issues with the report editor not being ready with the updated page. build_error-163405 Forward-Port-Of: odoo/enterprise#87302
**Error:** `ValueError: Wrong value for whatsapp.template.lang_code: 'es_CO'` **Before:** Some language codes that are officially supported by WhatsApp were missing from the module's language list, leads to an error during template synchronization. **After:** This commit adds missing language codes, which are supported by WhatsApp to prevent errors during synchronization. Reference: https://developers.facebook.com/docs/whatsapp/business-management-api/message-templates/supported-la
Original PR description
**Error:** `ValueError: Wrong value for whatsapp.template.lang_code: 'es_CO'` **Before:** Some language codes that are officially supported by WhatsApp were missing from the module's language list, leads to an error during template synchronization. **After:** This commit adds missing language codes, which are supported by WhatsApp to prevent errors during synchronization. Reference: https://developers.facebook.com/docs/whatsapp/business-management-api/message-templates/supported-languages Sentry – 6704097351 Forward-Port-Of: odoo/enterprise#88329
This reverts commit 8788443673d3c58fb2e7cc2e6b4ca456e39f56ab. The tree editor will be developed in another direction where less operators are available (see task 4894524). Forward-Port-Of: odoo/enterprise#88490
Original PR description
This reverts commit 8788443673d3c58fb2e7cc2e6b4ca456e39f56ab. The tree editor will be developed in another direction where less operators are available (see task 4894524). Forward-Port-Of: odoo/enterprise#88490
Currently, an error occurs when all reconciliation models are deleted and the user attempts to create a Transactions(bank statement lines). **Steps to produce:** - Install the `accountant` module. - Navigate to `Accounting > Bank > Models (under Reconciliation)` and delete all reconciliation models. - Go to bank transactions, Create a new `bank statement line` and attempt to `save` it. **Error:** `SyntaxError: syntax error at or near ')' LINE 39: AND reco_model.id IN ()` **Root
Original PR description
Currently, an error occurs when all reconciliation models are deleted and the user attempts to create a Transactions(bank statement lines). **Steps to produce:** - Install the `accountant` module. - Navigate to `Accounting > Bank > Models (under Reconciliation)` and delete all reconciliation models. - Go to bank transactions, Create a new `bank statement line` and attempt to `save` it. **Error:** `SyntaxError: syntax error at or near ')' LINE 39: AND reco_model.id IN ()` **Root Cause:** At [1], an `SQL query` is executed that references `Reconciliation models(reco_models)`, as `reco_models` is empty, this is causing an error. [1] https://github.com/odoo/enterprise/blob/8289993c7d52a6cf71982aace87bcb11fde16967/account_accountant/models/account_bank_statement.py#L220 This commit ensures and prevent error when user add transactions without reconciliation model. sentry - 6650696331 Forward-Port-Of: odoo/enterprise#86861