Daily updates from Odoo
Monday, July 28, 2025
11 changes
Enhancements to existing features
A Web Studio automated test was updated to reflect a recent platform change in how field information is handled. This helps keep quality checks aligned with the product and reduces the risk of false test failures during development.
Original PR description
This commit adapts a test to the addition of the copy attribute in fields_get made in https://github.com/odoo/odoo/pull/219253 task-4920305
Added a button in the website settings that redirects to the website generator configurator. The goal is to have a standard way to import a website without necessarily it being part of the onboarding flow. closes odoo/enterprise#88334 Forward-Port-Of: odoo/enterprise#90071
Original PR description
Added a button in the website settings that redirects to the website generator configurator. The goal is to have a standard way to import a website without necessarily it being part of the onboarding flow. closes odoo/enterprise#88334 Forward-Port-Of: odoo/enterprise#90071
Helpdesk ticket updates made from the customer portal now show the customer as the author in the chatter instead of OdooBot. This makes ticket history clearer for support teams, while still using OdooBot when no customer is linked.
Original PR description
- When closing the ticket form portal, the customer's name appears in the chatter instead of OdooBot. - When the ticket is closed by a public user, the customer appears in the chatter. - When no customer is specified, the OdooBot will appear in the chatter. task-4809115
Resolved issues and error corrections
The WhatsApp module’s automated checks were updated to match a related change that now includes timezone information for contacts. This keeps internal validation aligned with the latest contact data and helps prevent false test failures during releases.
Original PR description
Purpose of this commit: The fields which are passed in res.partner have been added a new field tz, adapt the conflicting testcases accordingly. community: https://github.com/odoo/odoo/pull/210094 task-4613148
Commission plans can now be saved safely when an end date is cleared or missing. This prevents an error that interrupted users while editing existing commission plans, improving reliability for sales compensation setup.
Original PR description
Currently, an error occurs when clear the date_to field from an already created record. Steps to Reproduce: - Install the `sale_commission` module. - Go to `Commission Plans` and create a record. -…
Currently, an error occurs when clear the date_to field from an already created record. Steps to Reproduce: - Install the `sale_commission` module. - Go to `Commission Plans` and create a record. - Now, clear the `date_from` field and save. `TypeError: '>' not supported between instances of 'bool' and 'datetime.date'` This error occurs when we clear the date_to field from an already created record. The error started occurring after https://github.com/odoo/enterprise/commit/926c8f041b51a04f0153be27cfcc8658a07be5b0 this commit that introduced the daterange widget for the date_from field. And when we clear the date_to field and try to save, it triggers the constraint [1] and raises the error. [1] https://github.com/odoo/enterprise/blob/377321fd7e7b1b2026734b75c79c74c8947e2e6c/sale_commission/model/commission_plan.py#L64 This commit ensures that the record is saved only if the date_to field is also present in the record. sentry-6710699656 Forward-Port-Of: odoo/enterprise#88769
Customer statement emails and reports now handle selected contacts that do not have a name. This prevents scheduled sending from failing, so businesses can continue sending statements even when some customer records are incomplete.
Original PR description
**PROBLEM** In the accounting app, when selecting multiples customers, if one of them doesn't have a name, the cron sending the report will traceback. **STEP TO REPRODUCE** - On a clean db, install…
**PROBLEM** In the accounting app, when selecting multiples customers, if one of them doesn't have a name, the cron sending the report will traceback. **STEP TO REPRODUCE** - On a clean db, install the account_reports module - From the accounting app, create a new company customer (Customers/Customers) - From that new company customer form view, add a new contact of type "other" and don't specify a name for it. - Create an invoice for the company - From the customer list view, select all, and trigger the action "Open Customer Statements" - Send -> Print and Send - Check the console, the cron task should traceback on the template **CAUSE** In accout_report.py, we get the name of each selected partners, and we don't check if the name doesn't exist. In the template `pdf_export_filters`, we try to join all the name in a string, it fails because one of the name isn't a string (its value is False because it doesn't exist on the partner record). **FIX** When getting the partners names, filter out the partners without names. opw-4916660 Forward-Port-Of: odoo/enterprise#90154
Uploading an attachment from the chatter in Documents no longer creates a temporary progress card or row in the main kanban or list view. This keeps folder and document views cleaner and avoids confusing users with upload status items that should not be shown there.
Original PR description
Step to reproduce: - In Documents, open the chatter either on a folder or a document. - Upload an attachment through the chatter. - You will see the upload kanban card / list row showing the progression. There should be no visual in kanban/list views showing the progression. Task-4863051 Forward-Port-Of: odoo/enterprise#90836 Forward-Port-Of: odoo/enterprise#87410
Belgian point of sale configurations using a blackbox now load the required fiscal data category automatically without adding it to the user-managed list of limited categories. This keeps category settings cleaner while preserving the required fiscal compliance behavior.
Original PR description
Before this commit, we added automatically the fiscal data module category to the list of limited categories for config with blackbox in order to be sure to load it. Now we load it automatically without the need of adding it to the list of limited categories. Forward-Port-Of: odoo/enterprise#91048
This fixes a small data naming mismatch in the Belgian point-of-sale fiscal device integration. It helps ensure the blackbox device driver reads fiscal responses consistently, reducing the risk of processing errors during POS operations.
Original PR description
We missed a 'value' key in the driver.data dictionnary when we updated to 'result' key. Forward-Port-Of: odoo/enterprise#91057
This update fixes how formatted text is handled for Twitter and YouTube social posts. It helps ensure posts display correctly and consistently when users prepare social media content in Odoo.
Original PR description
Follow up of https://github.com/odoo/enterprise/pull/88683
The point of sale configuration now correctly shows only compatible Belgian blackbox devices when settings are displayed through related configuration screens. This prevents users from seeing or selecting unrelated IoT devices, reducing setup confusion.
Original PR description
The domain to display only blackboxes in the IoT devices configuration on pos.config was a string, so not correctly passed to res.config.settings in the related field. This commit fixes this issue by computing the domain with a lambda method. Forward-Port-Of: odoo/enterprise#90613