Daily updates from Odoo
Wednesday, September 10, 2025
14 changes · master
Enhancements to existing features
The AI live chat website snippet was renamed and simplified, making it easier to maintain and configure. It now automatically assigns an AI agent, fixes chat focus and access checks, and limits public users to accessible reference links, improving reliability and visitor experience.
Original PR description
- Rename support_ai component to ai_livechat component. - Remove s_ai_livechat_data div: The config data of the `s_ai_livechat` website snippet was being stored twice, one in the dataset of the…
- Rename support_ai component to ai_livechat component. - Remove s_ai_livechat_data div: The config data of the `s_ai_livechat` website snippet was being stored twice, one in the dataset of the `ai_livechat` snippet element and another time as data attributes on the `s_ai_livechat_data` div. To clean this redundency, the `s_ai_livechat_data` div was removed along with all the references to it. - Group the options `fallbackButtonText` and `fallbackButtonURL` under `fallbackButton` category in snippet options. - Simplify the template/logic of the component. - Add agent automatically to livechat snippet: It is easy to forget to configure an AI Agent on the AI Livechat Snippet. So, an AI Agent is now set automatically on the livechat snippet. - Fix a bug: The ai_livechat component has 2 chat styles namely fullscreen and popup. The focus should be set on the textarea of the component only if the chat style is fullscreen. Steps to reproduce: 1. Set the chatstyle to popup on the ai_livechat component. 2. Enter a prompt. 3. A chatwindow pops up, and the AI response is shown in that window. 4. The focus is moved from the chatwindow to the textarea of the ai_livechat component. - Fix a bug: The condition that checks the agent presence and the access rights to it when creating a new ai chat channel for the ai livechat website snippet was incorrect. It should use or instead of and. - Fix a bug: The snippet options plugin (AILivechatOptionPlugin) of the ai_livechat website snippet should be added as part of the `website.website_builder_assets` instead of `html_builder.assets` because it is only valid in website context. See https://github.com/odoo/odoo/pull/225089
The Equity app is enhanced with new ultimate beneficial owner (UBO) capabilities and broader updates to equity records, transactions, valuations, cap tables, and portal communications. This helps businesses manage ownership structures more clearly and keep equity stakeholders better informed.
Original PR description
This commit is an improvement to the equity app. task-5043345
Documents and trash views now use the original creation date as the default sorting order instead of the last updated date. This keeps document lists more stable, so small metadata changes like tags or name edits do not unexpectedly move files around.
Original PR description
As the write_date can be reset by very small changes like adding a tag, updating its name and also during some upgrade, we set the default ordering to create_date. We do similarly for the trash. Task-5025453 Forward-Port-Of: odoo/enterprise#93952 Forward-Port-Of: odoo/enterprise#92840
The AI chat opened from the systray now shows three rotating example prompts tailored to the apps installed in the database. AI responses are also guided to use the user’s timezone when discussing dates and times, making calendar and scheduling answers more relevant.
Original PR description
Purpose: -------- When opening the ai chat using the systray button, one wants to show 3 different examples of prompts buttons, based on the current modules that are installed. In order to not create a lot of bridge modules that would each contain a a few lines of data, these data are installed with the ai module and the search method of the ai prompt button model has been overridden to skip records from uninstalled modules. Task-5008938
Users with Invoicing & Banks access can now start online bank synchronization when a bank journal is configured for online feeds and not yet connected. This makes bank connection setup available to the right business users directly from the dashboard.
Original PR description
Before this commit: - Users with "Invoicing & Banks" access rights could not create a bank synchronization, and the "Connect Bank" button was not visible. After this commit: - Users with "Invoicing & Banks" access rights can now create a bank synchronization if the journal has "Bank Feeds = Online Synchronization" and the bank is not yet connected. - The "Connect Bank" button is now visible to them. task-4840544 Forward-Port-Of: odoo/enterprise#87408
The Sign app now makes signing requests easier to understand and manage with a new View option, clearer cryptographic signature messaging, and a company-specific indicator. It also prevents users from trying to resend expired requests and makes uploaded PDF names cleaner by removing the unnecessary template prefix.
Original PR description
Before this commit - No "View" button in the sign request list. - Cryptographic signature was company-specific but had no clear icon/indicator. - "Resend" button still appeared even when a request was expired. - Uploaded PDFs always showed the "template" prefix. After this commit - Added "View" button in the list view. - Updated cryptographic signature description. - Added icon to indicate company-specific cryptographic signature. - Hide "Resend" button for expired requests. - Removed "template" prefix when uploading PDFs. impact: - Easier to follow the cryptographic signature process. - Clearer that signatures are company-specific. - Users won’t mistakenly try to resend expired requests. - Cleaner, more user-friendly UI. task-5015648
Financial return names and related validation checks are now translated into all available languages when they are created. This makes reporting workflows clearer for multilingual teams and helps users understand return checks consistently in their preferred language.
Original PR description
With this commit, return names are now translated to all languages available during creation. Another improvement is that the checks are also translated to all available languages, this includes the name, the message and the record name if there is. This is also supported using the check templates. task-4818751
Users can now create a new dashboard group directly from the dialog used to add a pivot, graph, or similar item to a dashboard. This reduces setup friction and helps teams organize dashboards without leaving their current workflow.
Original PR description
In the dialog to insert a pivot/graph/etc. into a new dashboard, allow the creation of a new dashboard group task-5075916
Signed documents created from uploaded PDFs with fillable fields are now converted so those fields can no longer be edited after download. This helps ensure signed PDFs behave as final documents and reduces the risk of accidental post-signature changes.
Original PR description
## Before - When users uploaded PDFs with fillable form fields (AcroForms), those fields stayed editable even after the document was signed and downloaded. - This caused confusion, as users expected signed documents to be final and non-editable. ## After Introduced a flatten_pdf method to make form fields read-only by: - Extracting the field values and rendering them as static text at the same positions. - Removing all interactive form definitions (/Annots, /AcroForm) from the PDF. - Re-encoding the updated PDF in base64. ## Impact - Ensures signed PDF's no longer contain editable fields. - Prevents accidental edits after signing, improving document integrity. --- task-4730732
The Italian VAT tax report layout has been updated to more closely match the official format from the Italian revenue authorities. Key context fields are now shown directly in the report, making them visible in PDF and XLSX exports and easier for users to review.
Original PR description
*: account_reports, l10n_it_reports, l10n_it_xml_export Improvement on the tax report layout, to make it more like officially documented by the Italian revenue authorities. See page 12: https://www.agenziaentrate.gov.it/portale/documents/20143/8487117/IVA_Annuale_2025_mod.pdf/f080de03-01f0-c4d6-8c80-8b5573797b89?t=1736949831826 For example, in the official docs some context information fields (those in VP1: Subcontracting, Exceptional Events, Extraordinary Operations) are directly shown on the report. We moved them in Odoo from our export wizard to the report itself to match that layout. This way they are also exported to PDF and XLSX. community pr: https://github.com/odoo/odoo/pull/223592 upgrade pr: https://github.com/odoo/upgrade/pull/8253 Task [link](https://www.odoo.com/odoo/967/tasks/5000725) task-5000725
Users can now access AI writing help directly from the smaller HTML message composer. This reduces context switching and makes composing messages faster and more convenient.
Original PR description
This commit allows the use of the AI plugin in the HTML composer, enhancing its functionality and user experience and hence, the user does not have to switch between different tools to access AI features. task-4772129
Helpdesk users can now create a credit note even when no invoice is selected, and the resulting credit note is linked back to the related ticket. This improves traceability between customer support cases and refunds while adding safeguards to prevent empty refunds.
Original PR description
- create a new move when pressing the refund button if no moves are selected - Link the credit note with the helpdesk ticket - Create a ticket stat button in the credit note form --- task-4781360
Managers and cashiers can now clock employees in or out directly from the cashier selection screen in Belgian POS. The popup also shows how long the current cashier has been clocked in, making shift status easier to track during daily operations.
Original PR description
This commit improves the cashier selection popup by allowing direct Clock In/Out actions from the screen. It displays the time since the current cashier’s last clock-in, and also allows the manager to clock in or out all employees. task-4877282
This update adds tax return support for Irish and UK EC Sales List and Intrastat reporting. Businesses operating in these countries can prepare the required tax-related declarations more directly in Odoo, improving compliance workflows and reducing manual effort.
Original PR description
Add the tax return for the irish and british EC Sales List and Intrastat reports. task-id: 4784433