Monday, April 14, 2025
19 changes
13 changes
New functionality added to Odoo
Spreadsheet users can now create funnel charts from Odoo data, making it easier to visualize staged business flows such as pipelines or conversion steps. This improves reporting options directly in Documents Spreadsheet and Spreadsheet Edition without requiring external tools.
Original PR description
This commit adds the funnel chart type for odoo data. Task: [4629660](https://www.odoo.com/web#id=4629660&cids=1&menu_id=4720&action=333&active_id=2328&model=project.task&view_type=form)
Enhancements to existing features
Journal entries and accruals from purchase and sales orders now include start and end dates, making deferral periods easier to review. Deferred reports also show a new recognized amount that combines prior and current recognized values, helping teams audit deferred revenue and expenses more clearly.
Original PR description
1. Added 'Start Date' and 'End Date' fields on journal entry views. 2. Included 'Start Date' and 'End Date' on accrual entries generated from Purchase/Sales Orders. 3. Introduced a new computed 'Recognized' column in Deferred Reports, representing the sum of 'Before' and 'Current' columns to help audit recognized portions of deferred amounts. task-4636850
Resolved issues and error corrections
Sales-related spreadsheets no longer require users to load access to all spreadsheets unnecessarily. This reduces avoidable data reads and helps improve performance for affected users.
Original PR description
Users don't need to be able to read all spreadsheet. It hurts performance. Task: 4656165
6 changes
Resolved issues and error corrections
Point of Sale now excludes cash payments from cancelled orders when calculating the final bank statement balance. This prevents inaccurate ending balances after a session is closed and keeps cash reporting aligned with the closing cash control.
Original PR description
Before this commit, cash payments from cancelled orders were included in the total cash payments, leading to inaccurate bank statements and an incorrect ending balance after closing the session. This issue was not visible during the session closing process, as cancelled orders are correctly excluded from the closing cash control computation. opw-4654848 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
Starting a self-order point of sale no longer shows a popup with a kiosk link. Instead, the kiosk opens through the IoT Box automatically, making setup and daily operation simpler for users.
Original PR description
When clicking on "Start" on a self order PoS, a popup opened with the link to the self order page. We removed this modal, and requested kiosk opening on the iot box via websocket for simplicity reasons. In addition, a Kiosk PoS is automatically set to work with the IoT Box if selected in the autoconfigure modal when pairing a new IoT Box. Community PR: [https://github.com/odoo/odoo/pull/179767](https://github.com/odoo/odoo/pull/179767) Task: 4166305
Installing FedEx, UPS, or USPS shipping connectors from settings now selects the newer REST API versions instead of the older legacy connectors. This helps businesses use the current carrier integrations consistently across Sales, Inventory, and eCommerce delivery settings.
Original PR description
The new REST API versions of the shipping connectors (FedEx, UPS, USPS) have been released. However, when installing one from the settings, the system still installs the legacy modules. This commits enables the new REST API versions instead of the legacy ones. It applies to FedEx, UPS, and USPS connectors in the following settings: * Sales -> Shipping * Inventory -> Shipping Connectors * eCommerce -> Delivery task: 4613485
Brazilian localization now allows different tax operation types to be set on individual sales order and invoice lines, while keeping the parent document value as the default. This helps businesses invoice mixed scenarios, such as regular goods and free samples, correctly in one document instead of creating separate orders or invoices.
Original PR description
Before, the operation types were could only be set on the Sale Order or on the Invoice level. This works for most cases but if a customer needs to invoice products by different operation types they…
Before, the operation types were could only be set on the Sale Order or on the Invoice level. This works for most cases but if a customer needs to invoice products by different operation types they can't. This commit makes it possible to pick from the same list of values as on the parent orders/invoices as an "override" value for an specific lines that need a different operation type. This means that for any line that does not have an override set, the field of the parent model is used instead. In addition the l10n_br_test_avatax_sale module was kept after the refactor of external_tax modules because the code of the module was no longer necessary but the test cases still had use. Later down the line, the l10n_br_avatax_sale module was created to account for CNAE, operation types, and other new features. As this module expands it makes sense to move the test code back to it instead of keeping a separate test module. Upgrade PR: odoo/upgrade#7390 Task [link](https://www.odoo.com/odoo/project/967/tasks/4569548) task-4569548
Users with read-only access can now mark documents as favorites without needing edit permissions. This makes document organization easier while keeping existing access restrictions intact.
Original PR description
Change the favorite button on documents to use the `toggle_favorite` function instead of writing on the field fo it in sudo for user who don't have write access on the record. task-3805968
Product editing rights are being moved out of various app manager roles and into a dedicated product administrator role. This gives businesses finer control over who can create, change, or delete product information across affected apps.
Original PR description
Remove all write/create/delete permission on product related models from the different 'manager' roles in different modules. Instead, we use a new product administrator group for giving these permissions. task-4321341
When users turn off settings that require removing related modules, Odoo now opens the uninstallation wizard automatically instead of relying on a less clear warning. Users can also disable several such settings and remove the related modules together in one wizard, making cleanup simpler and less repetitive.
Original PR description
* = [pos_self_order_preparation_display] Specifications: - When a user unchecks a boolean field that triggers the uninstallation of a module, the module uninstallation wizard should open automatically. - If the user unchecks multiple boolean fields, they should be able to uninstall multiple modules at once through a single wizard. Purpose: - The current warning is not sufficiently clear or informative. - The existing wizard does not support the uninstallation of multiple modules at once, making it inconvenient for users to uninstall several modules simultaneously. Community: https://github.com/odoo/odoo/pull/205736 task-4513796
Odoo now keeps frequently used actions and views in a browser-based cache that survives normal reloads and can be shared across tabs. This helps previously visited pages render faster, improving day-to-day responsiveness without changing business workflows.
Original PR description
Before this commit, actions, and views were cached in RAM in their respective services. This enhanced the system's performance when loading the same actions/views. However, the RAM cache was flushed…
Before this commit, actions, and views were cached in RAM in their respective
services. This enhanced the system's performance when loading the same
actions/views. However, the RAM cache was flushed on reload (or when the tab
was closed). Additionally, it was not shared between tabs.
This commit introduces a new caching system, which will have two caches: a RAM
cache as before, and a new disk cache (using the IndexedDB API [1]). To utilise
the new caching system, you can add a `cached: true` setting on the rpc, or a
`cached` property on the orm:
```js
this.orm.cached.call(....
```
```js
rpc(url, params, { cached: true });
```
The caching system will behave as follows:
- If a value is found in the RAM cache, it will be used (as it was before).
- Otherwise: If a value is found in the disk cache, is that value that will be
used. The key difference is that, the RPC will also be performed, and the
caches will be updated.
This disk cache will be shared between tabs, and it will not be flushed during
a reload (or when closing of the browser). Please note that a hard reload
(Ctrl + F5) will flush all the caches. Another advantage of this new cached
system is that it is developed on a central place, and the developers will not
need to re-develop their own cache system as it's the case now.
This new caching system will not lower the quantities of RPC performed, but it
will not wait until the return of the RPC to continue the rendering, which will
speed up the rendering of already visited pages.
task-id 4251018
[1]: https://developer.mozilla.org/en-US/docs/Web/API/IndexedDB_APIDocument sharing now uses a guided wizard with a fuller partner selection experience, making it easier to invite the right people. The document list is also more useful by showing recently updated items first in All and allowing searches across both document names and tags.
Original PR description
We replace the component "DocumentsMemberInvite" by a wizard to simplify the code and get a standard full-featured partner selection. [IMP] documents: improve search and ordering We change the order for "All" to "last updated on" (write_date) in descending order, and we add a combined search on name and tag name. Task-4545482
Employees can now create to-dos by sending an email to the company's to-do alias, provided their employee record is linked to a user with to-do access. People copied on the email are automatically added as followers when they match existing contacts, making email-based task creation easier to track.
Original PR description
After this commit we can send mail to to-do@company_alias and to do is created if the mail is from a employee and user linked to the employee is linked to todo and all the partners matching cc of the mail will be added as followers. task- 4509976
This update changes how employee schedule changes, part-time work, and credit-time arrangements are handled in payroll. It moves Belgium-specific credit-time logic into Belgian payroll flows, improving payslip and contract accuracy for affected employees.
This fix stops self-ordering orders from being shared across devices unless a table is selected. It prevents customers or staff from seeing or affecting unrelated orders when table-based ordering is not in use.
Original PR description
Before this commit orders were synchronized between devices even when no table were used. This commit add a check to ensure that orders are only synchronized when a table is set. The behavior will be test after the backport of 205293
Payments now keep the bank journal chosen by the user instead of replacing it with a default payment method journal. This prevents accidental posting to the wrong journal and better reflects the user's intended accounting setup.
Original PR description
Steps to reproduce: - Create a vendor or customer payment from accounting dashboard. - Manually select a specific bank journal for the payment. - Save the record. Current behavior: - Odoo may override the selected journal with the one linked to the default payment method line, even if a specific journal was already chosen. Expected behavior: - Odoo should retain the manually selected journal and only use the default if no journal is explicitly set. This fix ensures that the payment's `journal_id` is only updated from the default method line if it is not already set, preserving user intent. opw: 4654830
Product option price add-ons now show the currency symbol from the selected website pricelist. This prevents shoppers from seeing mismatched symbols, such as dollars on a euro pricelist, improving pricing clarity during checkout.
Original PR description
Steps to reproduce : 1) Install Ecommerce 2) Open a product that has an extra price (take the customizable desk) 3) Change the pricelist to Euro (€) <b>Issue</b>:- The extra price keeps being…
Steps to reproduce : 1) Install Ecommerce 2) Open a product that has an extra price (take the customizable desk) 3) Change the pricelist to Euro (€) <b>Issue</b>:- The extra price keeps being displayed in $ even if the price is in €. <b>Cause</b>:- We displayed the monetary symbol of the extra price based on the pricelist or company currency. https://github.com/odoo/odoo/blob/99d00987aa0fba0e52a8c416e1a6a3b514b9e99a/addons/website_sale/views/variant_templates.xml#L154-L156 We don't get any pricelist value because in the below-mentioned commit, we removed the pricelist from the values that are used in the template. So it keeps displaying the company currency. https://github.com/odoo/odoo/pull/159746/files#diff-83686977d1607bdb0a3e755e9d22ec4496c1dc4caebfff4bee3902ddd1b3e866L641 <b>Solution</b>:- Since the value of the pricelist is provided from the website previously, So take the value of the pricelist from the website directly in the template. opw-4712968
This update fixes several usability issues in marketing cards and mass mailing previews. Users now see centered fullscreen previews, clearer thank-you message wording, simpler tag creation, and fewer irrelevant template actions.
Original PR description
**Before this PR:** - In a fullscreen mode, mail preview was visible only on the top half of the screen. - Traceback when changing name of the image. - 'Create and edit' option when creating a new tag. **After this PR:** - String of `reward_message` will be changed to 'Thank You Message'. - Only 'Create' option will displayed while creating a new tag. - Mail preview will be visible in the center of the screen. - 'Add to Templates' in mass_mailing preview will no longer be visible. Task-4387904
This fixes incorrect handling of discounts when calculating unit prices and subtotals for Argentine localization invoices. Businesses using Argentine accounting get more accurate invoice totals and tax-related amounts.
Original PR description
Fix a bug introduced by: https://github.com/odoo/odoo/pull/200117 ... making a bad handling of the discount during the computation of 'price_unit' / 'price_subtotal'. opw-4679139 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr