Daily updates from Odoo
Friday, October 3, 2025
22 changes
2 changes
Enhancements to existing features
The spacing around the state selection search field has been adjusted to match similar dropdown fields across Odoo. This creates a more consistent form layout and a smoother user experience when selecting country states.
Original PR description
There is a 2% margin added when searching for country states Remove this margin to have the field look like the majority of `many2one` fields task-5123126 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#229290
IoT box information is now kept locally so Odoo can continue sending requests to connected devices when internet access is unavailable. This reduces unnecessary server checks and improves reliability for IoT-powered flows such as self-ordering kiosks.
Original PR description
In order to make the `iot_http` service work offline, we cache the iot box records until there is a full action failure. This avoids useless orm calls and in the meantime, allow making requests to the iot box without internet connection. Community PR: odoo/odoo#226839
1 change
Enhancements to existing features
The bank matching edit line wizard now shows only the line name, preventing long references from disrupting the layout. References remain available in the kanban view, so users keep access to that information where it fits better.
Original PR description
Problem: - The reference field was displayed together with the bill name, causing misalignment when the reference is quite long in the edit line wizard. Solution: - Updated the edit line wizard to display only the line's name. - The reference remains visible in the kanban view, it is only removed in the edit line wizard. task-5113489
11 changes
Enhancements to existing features
Equity notice and UBO request emails now use a more consistent Odoo-style layout and keep important action buttons fixed so links are not accidentally changed. Users can also send equity transaction emails to both subscribers and sellers at the same time, reducing manual work.
Original PR description
This commit improves the emails sent for equity notice and UBO form request. The following improvements are applied: 1. Make the equity/UBO button fixed at the top of the email without being editable for the user (to not mess up the token) 2. Make the rendered email look more odooish (used mail_notification_light) 3. Allow for sending to subscriber and seller at the same time in an equity transaction task-5123366
Updates the Uruguay electronic invoicing flow to provide clearer notifications when sending invoices. This helps users better understand the status of their electronic documents and any follow-up actions needed.
Original PR description
see https://github.com/odoo/odoo/pull/224267 Forward-Port-Of: odoo/enterprise#95366
Odoo now skips creating a return when an existing return already covers the full reporting period. This reduces duplicate filings and unnecessary work across accounting and localization reports.
Original PR description
Now, we dont generate returns if they already cover the entire period task-5066017
The signing app's automated checks were updated to match a refreshed error dialog design. This helps ensure the signing flow continues to be reliably tested after the interface change, with no direct change for end users.
Original PR description
The look and feel inspired by commit [1]. Task-5049469 [1]: https://github.com/odoo/odoo/commit/3916020e131008f3d529df61ad88f603874fd7d0
Product categories generated for the website can now include their available cover images. This helps create richer, more visually appealing online shop pages with better category presentation.
Original PR description
Also add the cover_image for the product category if available Forward-Port-Of: odoo/enterprise#96135
The trial balance audit PDF now uses its own dedicated layout instead of modifying a shared reporting template. This keeps standard reports stable while ensuring audit exports include the required account status and last comment details.
Original PR description
Refactor trial balance audit export to use a custom PDF template. Previously, this [commit](https://github.com/odoo/enterprise/commit/7a240345088942773b5b81937dca8275ee0a2d07) introduced audit export in PDF by writing directly into the generic report template. This approach is problematic, as the generic template should remain untouched. This change introduces a dedicated PDF template for the trial balance audit, overriding the generic one and adding the audit-specific requirements (account statuses and a “last comment” column). task-5114211
This update improves the generic chart of accounts by clarifying account names, correcting small wording issues, and making key financial report sections easier to understand. It also improves reporting accuracy by adding credit card liabilities to the balance sheet and ensuring other expenses are properly included in profit and loss reporting.
Original PR description
Improvements:
- Add a space before parentheses in the "Accounting Import" block in settings.
- Change the domain of the Accounting Setting "Deferred expense" to accept not only
type = Current Assets but also type = asset_prepayment.
- Fix typos in 101300, 121000, and 211000 Accounts Receivable and Payable
(add missing "s").
- Rename accounts for clarity:
- "101701 Liquidity Transfer" → "101701 Funds in Transit"
- "110100 Stock Valuation" → "110100 Inventory Valuation"
- "151000 Fixed Asset" → "151000 Fixed Assets"
- Remove "Plus" and "Less" from the P&L and Balance Sheet section titles.
- Add a "Credit Card" section (type = liability_credit_card) inside the
"Current Liabilities" section in the Balance Sheet.
- In the Generic Profit and Loss report, ensure the "Other Expenses" section
includes accounts of type "Other Expenses" and "Depreciation"
(currently only includes "Depreciation").
task: 5048333This update improves Belgian Dimona payroll declarations by adding better status handling, automation support, and compatibility with updated government API requirements. It reduces manual follow-up and helps HR teams submit more accurate employee declarations based on contract dates and required employee data.
Original PR description
Forward-Port-Of: odoo/enterprise#95533
Messaging features in AI, WhatsApp, live chat, and helpdesk now rely on the channel information already provided by the conversation model. This makes behavior more consistent across chat windows, message actions, thread controls, and composer tools, reducing the risk of mismatched chat behavior for users.
When bills are created from multiple employee expenses, every related receipt is now synchronized with Documents. This makes expense records more complete and avoids missing receipts that could make the workflow appear unreliable.
Original PR description
When several expenses are posted, one bill is created per employee. Previously, only the main bill attachment was synchronized with Documents, leaving many expense receipts unsynced and making the feature look buggy. With this change, all relevant expense attachments are now synchronized when the bill is created from expenses, ensuring that receipts appear properly in Documents. task-4954622
This update makes service-related documentation text compatible with the new documentation page, so it can be shown clearly and consistently. It also removes an unused internal method, reducing maintenance overhead without changing day-to-day user workflows.
Original PR description
With the introduction of the /doc endpoint, we should ensure that our docstrings are ReST (ReStructuredText) compliant, so that they can be displayed properly in the documentation. Task-5139767
6 changes
Enhancements to existing features
Point of Sale now blocks keyboard-based order line changes while a popup is open, such as customer selection, notes, or coupon dialogs. This reduces accidental order changes and makes checkout interactions safer and more predictable for staff.
Original PR description
Before this commit: - Even when a popup (e.g., customer selection, note, coupon) was open, unfocused keyboard inputs could still update orderline values. After this commit: - Orderline editing via keyboard is disabled whenever a popup is active. - Prevents unintended changes and ensures a safer user flow in POS. Task-5033716 Forward-Port-Of: odoo/odoo#229479 Forward-Port-Of: odoo/odoo#226300
VoIP call handling has been improved so each active call keeps its own state instead of sharing one global state. This matters because attended transfers can involve multiple simultaneous call sessions, and the change reduces the risk of calls being mixed up or affected by timing issues.
Original PR description
The original VoIP code was written under the assumption that there would only ever be one session at a time. Consequently, much of the session state was stored in a global object called the UserAgent. However, Odoo 19 implemented an attended transfer in VoIP, creating situations in which two sessions occur simultaneously. For this reason, the asynchronous code should no longer update session properties stored on the global UserAgent, as the session may have changed in the meantime, which could lead to race conditions. This commit moves some logic from the UserAgent to the Session, and ensures all callbacks are properly mapped to the relevant session.
The spacing in the country state search field has been adjusted so it aligns visually with similar selection fields. This creates a more consistent form experience for users without changing functionality.
Original PR description
There is a 2% margin added when searching for country states Remove this margin to have the field look like the majority of `many2one` fields task-5123126 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#229290
The IoT device screens no longer show the last sent value widget or an unused hidden IP field. The device connection type is repositioned to improve form layout and readability, especially for devices such as receipt printers.
Original PR description
This PR removes the "last sent value" widget from the iot device views + also removes the always invisible "iot ip" field + also moves the connection type to the 1st column of the view to avoid 2nd column being bigger than the 1st for devices like receipt printers. Odoo PR: https://github.com/odoo/odoo/pull/229918
The IoT Box homepage and device views no longer show the “last sent value” widget, removing a utility that was not needed in this view. The device details layout is also tidied up by removing an unused IP field and repositioning the connection type, making device information easier to scan.
Original PR description
This PR removes the "last sent value" utility from the iot box homepage Enterprise PR: https://github.com/odoo/enterprise/pull/96276
This update adds automated test coverage for the Redsys payment integration, helping ensure payment transactions and processing flows behave as expected. It reduces the risk of future changes breaking payment handling, without changing the visible customer experience.
Original PR description
task-5033596
2 changes
Enhancements to existing features
The Brazilian Avatax setup now shows the correct LC116 Code label when configuring services, instead of the product-focused Mercosul NCM Code label. This reduces confusion for users entering fiscal information for services while keeping product setup unchanged.
Original PR description
Purpose:- - In Brazil, NCM is a code that has an acronym to specify the Mercosul Common Name for products, and for services, the right name is LC116 (Complementary Law 116), which specifies the federal code for a service. - But we have the same field `l10n_br_ncm_code_id` to configure both NCM for goods and LC116 for services and the same table can be used for both the cases. - So while configuring fiscal information for a service, user don't understand why it still shows the NCM label instead of LC116. Before this commit:- - Label `Mercosul NCM Code` was displayed for services confusing users. After this commit:- - Label `Mercosul NCM Code` is replaced with `LC116 Code` only for services. - Tooltip is also improved for better understanding. task-5096435 Forward-Port-Of: odoo/enterprise#95404
This update adds automated checks for the Turkish Nilvera e-invoice integration, helping ensure the service behaves correctly when exchanging invoice data. It reduces the risk of future changes breaking invoice retrieval or processing workflows.
Original PR description
Currently we're lacking tests for the Nilvera API integration. This commit adds a test suite that primarily focuses on testing that. Task ID: 4655864 Forward-Port-Of: odoo/odoo#216179