Thursday, July 3, 2025
14 changes · master
Resolved issues and error corrections
The point of sale preparation display no longer shows an error when an order is marked done quickly in debug mode. This improves reliability for teams using preparation screens by avoiding a disruptive crash in a specific timing case.
Original PR description
Steps to reproduce: - Open a preparation display in debug mode - Make an order that will appear on the preparation display - Click on the done button before 5 seconds - Traceback will appear 5 seconds after the order was received Issue: When receiving an order useDelayedValueChange is called in the setup of the Orderline component. This method will try to access the props after a timeout. When the preparation orders are deleted in debug mode, the states are deleted from the front end. Since the props of orderline are the preparation state linked to it a traceback arises. Fix: A check is added to check if the state record exists. Forward-Port-Of: odoo/enterprise#88136
This fixes an issue where the journal entry shortcut could disappear when creating a draft entry for one payslip inside a batch. Payroll users can now reliably access related journal entries even when other payslips in the batch are not yet completed.
Original PR description
**Steps:** - Install the hr_payroll_account module - Navigate to the payroll menu and open a batch payslip. - Select a batch containing two or more payslips and create a draft entry for any single…
**Steps:** - Install the hr_payroll_account module - Navigate to the payroll menu and open a batch payslip. - Select a batch containing two or more payslips and create a draft entry for any single payslip in the batch. --- **Description of the issue/feature this PR addresses:** When a draft entry is created for a single payslip within a batch, the journal smart button becomes invisible. --- **Cause:** The issue occurs during the account move creation process. When generating an account move for a batch payslip, the process checks the status of all payslips in the batch. If any payslip is not in the done state, the account move is not created, resulting in the journal smart button not appearing. --- **Fix:** This PR adjusts the account move creation logic to allow account moves to be created for batch payslips, ensuring the journal smart button remains visible even if some payslips are not in the done state. task-4440533 Forward-Port-Of: odoo/enterprise#76681
The scheduled payroll data update has been adjusted to run once per week instead of more frequently. This reduces unnecessary background processing while keeping payroll-related data refreshed on a regular cadence.
Original PR description
Forward-Port-Of: odoo/enterprise#88564 Forward-Port-Of: odoo/enterprise#88492
The salary configurator will now show Belgium-specific minimum wage warnings only for employees in Belgian companies. This prevents irrelevant wage alerts from appearing for employees in other countries when the Belgian localization is installed.
Original PR description
The warning for a basic wage below minimum level appears for non Belgian employees, such as L10N_US, because the L10N_BE was installed. The logic for the warning has been limited to be applied only on Belgian companies. Task #4907771 Forward-Port-Of: odoo/enterprise#88939
The Kenyan payroll SHIF/NHIF report now selects payslips for the exact month chosen, preventing payslips from one month appearing in another month's report. The wizard text was also simplified by removing a confusing line about the selection period.
Original PR description
- load payslip according to the Month value, currently, may payslip appears on june selection - remove the line 'the selection will cover ...' task-4775801 Forward-Port-Of: odoo/enterprise#89128 Forward-Port-Of: odoo/enterprise#85609
Helpdesk email conversations now handle external recipients more reliably in automated checks. This helps ensure customer and external-contact replies include the right people while avoiding unnecessary alias recipients.
Original PR description
See community PR for more details. Task- Forward-Port-Of: odoo/enterprise#88900
A small typo in the Avalara tax integration was corrected so the system no longer calls a non-existent shared process during tax commitment. This is an internal reliability fix with no expected change to normal user workflows, but it helps avoid future errors in tax handling logic.
Original PR description
This is a typo from the most recent refactor [1]. The commit hook is specific to US avatax, there is no corresponding super().commit_external_taxes so this can be removed all together. This didn't break any tests because (at least with the standard code), super()._uncommit_external_taxes is an empty method that does nothing. [1] https://github.com/odoo/enterprise/pull/82623 Forward-Port-Of: odoo/enterprise#89216
Corrects how UK Bacs direct debit instruction data is returned so the system receives the expected values. This helps prevent processing errors introduced by a previous change and keeps direct debit workflows reliable.
Original PR description
Fix for b0083240ed6e0688f3ab2fe46916d71a6e08c06a where we returned a list of dicts instead of a dict of values.
Point of Sale users connected to UrbanPiper will no longer see the same online or offline status notification again after reloading the POS. This removes a duplicate alert and makes the checkout session experience smoother for staff.
Original PR description
Steps: ==== - Configured UrbanPiper credentials in `pos.config` and selected platform providers (e.g., Ubereats, Justeat). - On session start, a pop-up confirms the store is online on enabled platforms. - Reload the pos Issue : ==== - The same pop-up appeared again on POS reload, leading to a poor user experience. Fix: ==== - Removed duplicate call from `pos.store` that triggered provider status notifications unnecessarily. - Enhances user experience by preventing repeated popups on session reload. task-4879125 Forward-Port-Of: odoo/enterprise#88027
This fixes an internal reference so payroll expense records are handled as expenses rather than payslips. It helps avoid incorrect payroll-expense processing and supports more reliable payslip calculations.
Original PR description
this commit fixes wrong reference to `hr.payslip`. `payslip_expenses` should be a recordset of `hr.expense` and not `hr.payslip`. Forward-Port-Of: odoo/enterprise#89068 Forward-Port-Of: odoo/enterprise#88994
The Swedish SIE4 import now ignores extra object details that are not needed when importing transactions. This prevents those details from being mistaken for transaction balances, reducing the risk of incorrect accounting data during import.
Original PR description
The aim of this commit is ignoring the whole object list when we import transactions. The object list is represented by the elements between `{}` [[1]]. As we don't need these elements, we do ignore them to avoid a potential issue where we identify an element from this object list as the transaction's balance.
opw-4868415
[1]: https://sie.se/wp-content/uploads/2020/05/SIE_filformat_ver_4B_ENGLISH.pdf
Forward-Port-Of: odoo/enterprise#88892
Forward-Port-Of: odoo/enterprise#88784The Help menu now shows only the helpdesk teams assigned to the website a visitor is using. This prevents teams from other websites appearing in the wrong place, reducing confusion for visitors and staff managing support requests.
Original PR description
**Steps to Reproduce:** 1. Install the website_helpdesk module. 2. Create a Helpdesk Team A with 'Website Form' enabled, and set the website to 'My website' 3. Create another Helpdesk Team B with 'Website Form' enabled, and Set website to 'My website2' 4. Navigate to Website → Help menu on "My Website". **Observation:** - Both Helpdesk teams appear on "My Website", even though Team B is linked to "My Website 2". **Issue:** - The current domain filter only checks if the Website Form is enabled. - It doesn't restrict teams to the current website, so all teams are visible. https://github.com/odoo/enterprise/blob/b191f16abb5913893a228ccc4eedb8a2242a0298/website_helpdesk/controllers/main.py#L22 **Solution:** - Update the domain to filter on the website ID, to ensure only helpdesk teams related to the current website are shown. OPW-4673939 Forward-Port-Of: odoo/enterprise#88169
This fixes a mobile VoIP keypad issue where typing the first digit could place it at the end instead of the cursor position. Users entering phone numbers on mobile should now see more predictable and accurate input behavior.
Original PR description
This commit fixes a bug that caused the cursor in the keypad input to be displaced when typing on mobile. So, the first entered number was always to the end. This happens because the `on-touchend` event was calling another event (click) which may involve some changes in the UI that caused this. Steps to produce the bug: 1. Open VoIP wizard from mobile. 2. try to add numbers to the keypad. 3. You will see that the first number is always at the end. Forward-Port-Of: odoo/enterprise#89151
Adds test coverage to ensure employee records are created using the correct company context. This helps prevent payroll-related employee data, such as US social security number validation, from being checked against the wrong company setup.
Original PR description
This commit contains the test for commit f36104c17e0ac3cde788d195aab9394a35545d43 The test is in l10n_us_hr_payroll and not in hr as we need the ssnid constraint task-4897733 Forward-Port-Of: odoo/enterprise#88733