Daily updates from Odoo
Thursday, May 28, 2026
23 changes
6 changes
Enhancements to existing features
This update enhances the Balance Sheet report to accurately reflect accounting standards (GAAP) by ensuring that all equity accounts are displayed individually, rather than grouped. This change improves the clarity and accuracy of financial reporting, aligning with best practices.
Original PR description
*=l10n_us_reports In the Balance Sheet, according to the GAAP rules, all equity accounts should be individually visible. task-6240500 Forward-Port-Of: odoo/enterprise#118149
This update simplifies the way Odoo interacts with Swedish blackboxes, ensuring compatibility with both the new Skattedosan devices and older CleanCash models. By supporting both protocols at different baud rates, this change eliminates a potential compatibility issue and provides a more reliable connection for all blackbox types.
Original PR description
In odoo/odoo#260587, support was added for the modern Skattedosan brand Swedish blackboxes, using their own unique protocol. However, it turns out they also support the previous CleanCash protocol, just at a higher baud rate of 57600. This commit simplifies the SE blackbox driver by only supporting one protocol, but attempting to use it at both 9600 and 57600 baud. This results in both blackbox types being compatible. --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#266643
This update introduces a new EC Sales list report specifically for Hungary, providing more detailed sales data. Instead of grouping solely by partner, it now analyzes transactions based on transaction type (B, C, etc.) and transaction state (new or corrected), offering a more granular view of sales activity. This improves reporting accuracy for Hungarian businesses.
Original PR description
This commit implement the EC Sales list for Hungary This report is a bit different from the main EC Sales list, instead of just grouping the lines on partner_id, we need to group on specifics fields on account.move: - l10n_hu_transaction_type: B, C, K, R or V This field represente the type of Intra Community Transaction, it's a selection field with all the legal possible values. We leave the field blank for normal transactions. - l10n_hu_transaction_state: U or T Represent if the transaction is a new one (U) or a correction (T) The grouping of the report works like this: groupby partner_id, l10n_hu_transaction_type, l10n_hu_transaction_state This mean for a single partner, we can have up to 12 different lines. [task-4950959](https://www.odoo.com/odoo/project/967/tasks/4950959) Linked:https://github.com/odoo/enterprise/pull/110448 Forward-Port-Of: odoo/odoo#253556
This update introduces a new report for Hungary, specifically designed to generate the EC Sales list. Unlike the standard report, this version groups data by specific tax codes (B, C, K, R & V) instead of partner ID, ensuring accurate Hungarian tax reporting. It also includes the necessary tax return data for this report.
Original PR description
This report is a bit different from the main EC Sales list, instead of just grouping the lines on partner_id, we need to group on specifics tax.tags [B, C, K, R & V]. It also adds the tax returns for this same report. [task-4950959](https://www.odoo.com/odoo/project/967/tasks/4950959) Linked:https://github.com/odoo/odoo/pull/253556 Forward-Port-Of: odoo/enterprise#110448
This update allows the IoT box to broadcast its IP address via Bluetooth for 5 minutes after startup. This simplifies troubleshooting for clients and support teams by providing a quick way to identify the device's network connection status. If no network is available, it will advertise 'No network connection' instead.
Original PR description
This PR allows the iot box to advertise its ip address over Bluetooth for 5 minutes after boot. The format is `IoT Box [S/N] - [ip]` If no network is available it would advertise "No network connection" instead of the ip This can help clients and support to troubleshoot IoT Box issues. Forward-Port-Of: odoo/odoo#265878 Forward-Port-Of: odoo/odoo#265738
This update clarifies the documentation for how API keys are generated and revoked within Odoo. The changes standardize documentation and add descriptions for key parameters, ensuring developers have clear guidance and improving the overall quality of the codebase.
Original PR description
Clarify and complete the docstrings of `res.users.apikeys` methods: - document accepted union types for `scope` and `expiration_date` parameters of method `_generate`, and standardize its `:returns:` and `:rtype:` annotations - add missing parameter descriptions for `generate` and `revoke` Forward-Port-Of: odoo/odoo#265488
5 changes
Enhancements to existing features
This pull request includes performance optimizations across several Odoo modules, primarily focused on improving the speed and responsiveness of key business processes. These changes address identified bottlenecks and enhance the overall user experience. The update is part of the Odoo 19.2 release, ensuring a smoother and more efficient Odoo environment.
Original PR description
Description of the issue/feature this PR addresses: Current behavior before PR: Desired behavior after PR is merged: --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
This update enhances the Balance Sheet report to accurately reflect accounting standards (GAAP) by ensuring that all equity accounts are displayed individually, rather than grouped. This change improves the clarity and accuracy of financial reporting for users.
Original PR description
*=l10n_us_reports In the Balance Sheet, according to the GAAP rules, all equity accounts should be individually visible. task-6240500 Forward-Port-Of: odoo/enterprise#118149
This update introduces a new EC Sales list report specifically for Hungary, providing more detailed sales data. Instead of grouping solely by customer, it now analyzes transactions based on transaction type (e.g., B, C) and transaction state (U or T), ensuring accurate reporting according to Hungarian regulations. This allows for a more granular view of sales activity.
Original PR description
This commit implement the EC Sales list for Hungary This report is a bit different from the main EC Sales list, instead of just grouping the lines on partner_id, we need to group on specifics fields on account.move: - l10n_hu_transaction_type: B, C, K, R or V This field represente the type of Intra Community Transaction, it's a selection field with all the legal possible values. We leave the field blank for normal transactions. - l10n_hu_transaction_state: U or T Represent if the transaction is a new one (U) or a correction (T) The grouping of the report works like this: groupby partner_id, l10n_hu_transaction_type, l10n_hu_transaction_state This mean for a single partner, we can have up to 12 different lines. [task-4950959](https://www.odoo.com/odoo/project/967/tasks/4950959) Linked:https://github.com/odoo/enterprise/pull/110448 Forward-Port-Of: odoo/odoo#253556
This update introduces a new EC Sales list report specifically for Hungarian businesses. The report now groups sales data by tax codes (B, C, K, R & V) instead of just customer ID, aligning with Hungarian tax regulations. It also includes the necessary tax return data for this report.
Original PR description
This report is a bit different from the main EC Sales list, instead of just grouping the lines on partner_id, we need to group on specifics tax.tags [B, C, K, R & V]. It also adds the tax returns for this same report. [task-4950959](https://www.odoo.com/odoo/project/967/tasks/4950959) Linked:https://github.com/odoo/odoo/pull/253556 Forward-Port-Of: odoo/enterprise#110448
This update enhances the documentation for Odoo's API key management system. Specifically, the documentation for the `res.users.apikeys` methods has been clarified and expanded to provide clearer instructions for developers. This improves the overall usability and maintainability of the system.
Original PR description
Clarify and complete the docstrings of `res.users.apikeys` methods: - document accepted union types for `scope` and `expiration_date` parameters of method `_generate`, and standardize its `:returns:` and `:rtype:` annotations - add missing parameter descriptions for `generate` and `revoke` Forward-Port-Of: odoo/odoo#265488
7 changes
Enhancements to existing features
This update introduces a new EC Sales list report specifically for Hungary, providing more detailed sales data. Instead of grouping solely by partner, it now analyzes transactions based on transaction type (B, C, K, R, V) and transaction state (U or T), offering a more accurate view of intra-community sales. This improves reporting capabilities for Hungarian businesses.
Original PR description
This commit implement the EC Sales list for Hungary This report is a bit different from the main EC Sales list, instead of just grouping the lines on partner_id, we need to group on specifics fields on account.move: - l10n_hu_transaction_type: B, C, K, R or V This field represente the type of Intra Community Transaction, it's a selection field with all the legal possible values. We leave the field blank for normal transactions. - l10n_hu_transaction_state: U or T Represent if the transaction is a new one (U) or a correction (T) The grouping of the report works like this: groupby partner_id, l10n_hu_transaction_type, l10n_hu_transaction_state This mean for a single partner, we can have up to 12 different lines. [task-4950959](https://www.odoo.com/odoo/project/967/tasks/4950959) Linked:https://github.com/odoo/enterprise/pull/110448
This update enhances the Balance Sheet report to accurately reflect Generally Accepted Accounting Principles (GAAP) by ensuring individual equity accounts are clearly visible. Previously, equity accounts were grouped, which is now corrected to provide a more precise and compliant financial view. This change improves the accuracy of financial reporting.
Original PR description
*=l10n_us_reports In the Balance Sheet, according to the GAAP rules, all equity accounts should be individually visible. task-6240500 Forward-Port-Of: odoo/enterprise#118149
This update enhances the OBOX order process within Self Order and Point of Sale systems. It now includes a timeout feature, allowing orders to be tracked even when devices aren't on the same network as the OBOX. This improves reliability and order fulfillment for users with disconnected devices.
Original PR description
Is now possible to await OBOX jobs with a specific timeout in PoS ans Self Order. This is usefull when the user device isn't connected on the same network as the OBOX and others hardware. taskId: 6248159
This update enhances the way Odoo handles communication with OBOX devices in Self and Point of Sale environments. It now includes a timeout feature, allowing for reliable operation even when devices aren't on the same network, improving overall system stability and usability.
Original PR description
Is now possible to await OBOX jobs with a specific timeout in PoS ans Self Order. This is usefull when the user device isn't connected on the same network as the OBOX and others hardware. taskId: 6248159
This update clarifies the documentation for how API keys are generated and revoked within Odoo. The changes standardize the documentation for improved clarity and accuracy, ensuring developers can effectively use and manage API keys. This supports better security and maintainability.
Original PR description
Clarify and complete the docstrings of `res.users.apikeys` methods: - document accepted union types for `scope` and `expiration_date` parameters of method `_generate`, and standardize its `:returns:` and `:rtype:` annotations - add missing parameter descriptions for `generate` and `revoke` Forward-Port-Of: odoo/odoo#265488
This update adds logging to the IoT drivers to help our support team quickly diagnose issues related to IoT boxes, specifically when they're stuck using a particular IP address or version. These logs will provide valuable insights for troubleshooting and resolving problems more efficiently. This is an internal improvement to enhance support processes.
Original PR description
This PR adds some minor logs to help identify issues around iot box hanging ip address and version See https://github.com/odoo/enterprise/pull/118377 Forward-Port-Of: odoo/odoo#266410
This update improves support for our IoT devices by adding more detailed logs regarding IP address and version changes, as well as websocket messages sent to the box. A small optimization was also implemented to prevent unnecessary searches, streamlining the process and providing better visibility for troubleshooting.
Original PR description
This PR adds some minor logs around ip/version change and websocket messages sent to the iot box. It also inverts a condition to avoid doing a useless search when sending websocket messages See https://github.com/odoo/odoo/pull/266410 Forward-Port-Of: odoo/enterprise#118377
3 changes
Enhancements to existing features
This update enhances the quality control process within purchase orders by clearly identifying product variants when checking items, resolving a previous ambiguity. Additionally, the quality point search functionality now uses the title instead of the internal reference, providing a more intuitive and user-friendly experience.
Original PR description
1) Product Attributes in QC Wizard The quality check wizard within purchase orders does not display sufficient information when dealing with product variants. For example, if a company purchases tables in two colors -white and black- and needs to perform a quality check upon receipt, the wizard currently does not indicate which variant is being checked, as both products share the same name. This commit resolves this ambiguity by displaying the product's 'display_name' insted of just its name. 2) Quality Points: Search By Title Previously, when searching for a QP by title in the search view, the system relied on the 'reference' column internally. For improved clarity, this has been changed to a title filter. task: 4277084
This update simplifies the way employees access their payslips. A new smartbutton now automatically groups payslips by year, making it easier to find and view past payments. This enhancement improves the user experience and streamlines payroll access.
Original PR description
This will add default filter when accessing payslip view from employee using smartbutton, the filter will group the payslip by date_from year and set the expand = True task:6237600
This update streamlines Australian payroll by consolidating penalty rates into a single, global rate field. This eliminates confusion and ensures consistent overtime calculations in payslips. The change also simplifies the system by removing redundant fields and updating calculations for various work entry types.
Original PR description
Purpose: - The new global Rate field now provides a unified way to define pay rates for work entry types across all countries, making the AU-specific Penalty Rate redundant. - Remove duplicate rate…
Purpose:
- The new global Rate field now provides a unified way to define pay rates for work entry types across all countries, making the AU-specific Penalty Rate redundant.
- Remove duplicate rate definitions in AU payroll by merging Penalty Rate into the global Rate field, avoiding user confusion and ensuring consistent overtime computation in payslips.
- Ensure AU logic fully relies on the global Rate while preserving existing behavior for STP Code, casual loading, and leave loading.
This PR includes:
- Removed Penalty Rate field from model and views.
- Updated computation logic to rely on global Rate while preserving AU-specific behavior based on STP Code.
- Preserved STP-based logic and loading behaviors.
- Hidden the 'Add on Monthly Wage' checkbox for AU because its behavior is
already fully handled via STP code logic, making the field redundant/confusing.
- Added upgrade script to migrate existing Penalty Rate values into Rate to maintain backward compatibility.
- Converted Penalty Rate into Rate format during upgrade: Penalty Rate stores only the extra percentage (e.g., +50%), while Rate represents the full multiplier (100% base(Default) + extra), so where penalty rate is 50%, it becomes 150% (1.5) in Rate.
-------------------------------------------------------------------------------------------------------------------------------------------------------------
Note: Brief overview of AU payslip computation behavior.
Example: hourly wage = 10, Rate = 1.5, leave loading = 17.5%, casual loading = 0.25
1) For normal work entries, the global Rate value is combined with the employee
casual loading. In AU payroll, casual loading is additive and must be added
directly on top of the Rate multiplier instead of being multiplied separately.
- Example:
final calculation = 1.5 + 0.25 = 1.75
amount = 10 * hours * 1.75
2) For AU paid time off entries (AU.PT), the leave loading percentage must be applied
separately and the computation must stop after applying leave loading, meaning
casual loading must not be added on top of it.
- Example:
final calculation = 1.175
amount = 10 * hours * 1.175
3) For overtime work entries using STP code 'T', casual loading must also be
ignored. These entries should only use the Rate multiplier configured on the
work entry type.
- Example:
final calculation = 1.5
amount = 10 * hours * 1.5
- Related Upgrade PR: https://github.com/odoo/upgrade/pull/9557
task-54066602 changes
Enhancements to existing features
This update enables Odoo to fully receive Peppol invoices, including optional fields created in Studio. Previously, Odoo only supported sending these extra fields, preventing users from receiving fully compliant invoices. This enhancement ensures invoices meet industry standards and improves data accuracy.
Original PR description
Currently, Odoo allows sending invoices with additional Peppol fields, but didn't support the receiving. This limitation prevents users from receiving fully compliant invoices. After this commit, users will be able to receive these extra fields if they already created them using Studio. task-6033667 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
This update enhances the Point of Sale experience by ensuring that when a product is scanned with a barcode, the product configuration automatically preselects the variant details (like color) that match the scan. This mirrors the behavior of searching for a product by barcode, creating a more consistent and user-friendly experience for sales staff.
Original PR description
When a barcode scan matches a specific product variant, the product configurator now behaves the same as when the user searches by barcode: - The `always`-mode attribute (e.g. Color) is preselected from the matched variant instead of being hidden or left blank. - The `no_variant`-mode attributes (e.g. Size) are shown for user input. opw-6220883 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr