Daily updates from Odoo
Tuesday, October 28, 2025
14 changes
2 changes
Enhancements to existing features
This update simplifies how accounting tax data is grouped behind the scenes. It reduces manual handling in the tax calculation flow, helping make the system easier to maintain with no expected day-to-day workflow impact for users.
Original PR description
--- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#232290 Forward-Port-Of: odoo/odoo#231947
Demo data for WhatsApp accounts has been added back. This helps teams test, demonstrate, and explore WhatsApp-related features more easily without setting up sample accounts manually.
Original PR description
Purpose of this commit, Adding back the demo data for whatsapp accounts. revert: https://github.com/odoo/enterprise/pull/97138 task-5172791
4 changes
Enhancements to existing features
The Documents search view has been simplified by removing extra filters that were not needed. This makes it easier for users to find the relevant filtering options when working with documents.
Original PR description
This commit removes the extra 'Documents' and 'Hide shortcut' filters from the documents search view to make the filter list simpler and keep only the relevant options. task-5170118
Property selection values now return their internal name rather than their display label by default. This improves consistency for payroll-related property data and reduces ambiguity when values are used across business processes or integrations.
Original PR description
Purpose ======= Followup of odoo/odoo/pull/232800 , when getting a property selection, we want to return the name by default instead of the label.
The customer ticket page now avoids repeating the same sales timesheet feature check several times. This reduces unnecessary processing and should make the page slightly more efficient without changing what users see.
Original PR description
helpdesk, helpdesk_sale_timesheet: reduce multiple calls ---------------------- In the `/my/tickets` route, the `_check_sale_timesheet_feature_enabled` method was called three times (for search input, search groupby, and value preparation). This commit passes the result of `_check_sale_timesheet_feature_enabled` in an argument, reducing the number of calls. the argument is now used in both search input and search groupby, improving performance. helpdesk: removed redundant method -------------- Removed the `_prepare_portal_layout_values` method as it only called the super method without any changes, making it unnecessary. task-4513671
Demo data for WhatsApp accounts has been added back. This helps teams and evaluators see example WhatsApp account setup when trying or demonstrating the app.
Original PR description
Purpose of this commit, Adding back the demo data for whatsapp accounts. revert: https://github.com/odoo/enterprise/pull/97138 task-5172791 Forward-Port-Of: odoo/enterprise#98135
7 changes
Enhancements to existing features
This update simplifies how website builder options are defined and shared across related tools, making it easier for teams to maintain and extend builder features. It affects website features such as live chat, appointments, and rental search, with no expected direct disruption for end users.
Original PR description
The commit: 1. use static property to configure a builder option 2. introduce the concept of dependencies to access the plugin's shared in builder option 3. make a plugin context the same for Plugin,…
The commit:
1. use static property to configure a builder option
2. introduce the concept of dependencies to access the plugin's shared
in builder option
3. make a plugin context the same for Plugin, BuilderOption and
BuilderAction to have the same API in each class.
Before this commit, to define an option, we had to define a javascript
object that would contain the information of the option within the
`builder_options` resource.
```js
class MyPlugin extends Plugin {
resources: {
builder_options: [
{
selector: "div.selector",
template: "my.owlTemplate",
cleanForSave() {}
// ... other option props
}
]
}
}
// For a custom component
class MyPlugin extends Plugin {
resources: {
builder_options: [
{
selector: "div.selector",
template: MyCustomComponent,
cleanForSave() {}
// ... other option props
}
]
}
}
class MyCustomComponent extends BaseOptionComponent {
// ...
}
```
When building anything for the builder, there is 3 classes that are
important: `Plugin`, `BaseOptionComponent`, `BuilderAction`.
In practice, the option object defined in builder_options feels
strange. On the other hand, making the configuration of the option as
a static property of the component somehow feels simpler as everything
related to that option is defined in the same class.
```js
class MyPlugin extends Plugin {
resources: {
builder_options: [MyCustomComponent]
}
}
class MyCustomComponent extends BaseOptionComponent {
static template = "my.owlTemplate";
static selector = "div.selector";
static cleanForSave(context) {}
// ...
}
```
To have the same mental context in the 3 important class, they all
share the same API (`dependencies`, `dispatchTo`, `getResource`, ...)
(see `Editor.getPluginContext`)
To access a plugin shared method, it's now the same for `Plugin`,
`BuliderAction` and `BaseOptionComponent`:
```js
class MyCustomComponent extends BaseOptionComponent {
static selector = "mySelector";
static dependency = "myPlugin";
myMethod() {
this.dependencies.myPlugin.pluginMethod();
}
}
```
To access a resource, dispatch, ...:
```js
class MyCustomComponent extends BaseOptionComponent {
static selector = "mySelector";
myMethod() {
const resource = this.getResource('myResource');
}
}
```
Forward-Port-Of: odoo/enterprise#94102This update simplifies how website builder options are defined and managed behind the scenes. It gives developers a more consistent way to build and maintain editing tools, helping future website editing features be delivered more reliably.
Original PR description
1. use static property to configure a builder option 2. introduce the concept of dependencies to access the plugin's shared in builder option 3. make a plugin context the same for Plugin, BuilderOption and BuilderAction to have the same API in each class. See https://github.com/odoo/odoo/pull/220746 Forward-Port-Of: odoo/odoo#220746
The Colombian reports module test coverage was updated to match new account grouping rules. This is an internal quality improvement that helps ensure trial balance reports continue to be validated correctly without changing day-to-day user workflows.
Original PR description
task-5165175
The Colombian localization now includes predefined account groups to make accounting reports easier to read and better organized. This improves report presentation for new configurations without changing existing customer-defined account groups.
Original PR description
For nicer reports. task-5165175 PR note: no explicit upgrade script, because it likely will cause a mess if users already have `account.group`s defined.
The product information popup in Point of Sale now appears after a shorter long press on a product card. This makes the interaction feel quicker and closer to common mobile behavior, improving usability for sales staff on touch devices.
Original PR description
Before this PR, in order to reach the product information on the frontend, the user had to longpress the product card for 2 secondes. This PR aims to reduce the time necessary to display the product info popup, getting closer to what is done by most mobile OS can provide. --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
This update makes the accounting tax calculation helper automatically extract records from the grouping key. It reduces the chance of manual handling errors and makes related tax grouping behavior easier to maintain.
Original PR description
--- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#233228 Forward-Port-Of: odoo/odoo#231947
Demo data for WhatsApp accounts has been added back. This helps teams evaluate and demonstrate WhatsApp-related features more easily in demo or test environments.
Original PR description
Purpose of this commit, Adding back the demo data for whatsapp accounts. revert: https://github.com/odoo/enterprise/pull/97138 task-5172791 Forward-Port-Of: odoo/enterprise#98135
1 change
Enhancements to existing features
The accounting accrual orders wizard now has a cleaner structure that makes it easier to adapt how reversal entries are created. This supports businesses that need accruals spread across multiple periods, helping future customizations better match invoices over time.
Original PR description
Add a dedicated hook method to facilitate customization of reversal entry generation in the accrued orders wizard. Reason: The current implementation creates a single reversal entry that is applied in the next period. For scenarios requiring accrual allocation across multiple periods, modules need the ability to generate multiple reversal entries (one per period) to properly net-off against actual invoices --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#233142