Tuesday, February 11, 2025
21 changes
9 changes
Enhancements to existing features
Payslips will now automatically recalculate whenever they are saved, reducing the risk of payroll errors after changes to pay structure, period, or other calculation-related fields. This is especially helpful for batch payroll processing, where manually recomputing each payslip can be easy to miss.
Original PR description
There is a very high chance of committing mistake when the payslip is confirmed without re-computing (manually) after changing the Structure/Period or any other field which has impact on computation. This happens especially when dealing with batch payments, where payslips have to be re-computed and confirmed when sent back to the draft stage to change any of the above mentioned fields (like Structure, Period etc.) To address this, auto recomputation is required. This change makes the payslip recompute automatically whenever it is saved. task-4058455
Signed documents can now display a unique certificate reference on every page. This makes it easier to match a downloaded signed PDF with its certificate of completion and verify that they refer to the same final document.
Original PR description
## Before this commit: The final signed PDF documents did not include any reference to the certificate. The certificates' main Signature field is assigned to the creation hash which doesn't represent the final version of the assigned document. ## After this commit: The final signed PDF documents now include the log_hash of the final signature shown on the top of each page. The log_hash serves as a unique identifier for the signed document and links it to the certificate of completion. The certificate's main signature field is also showing the log_hash of the final signature which is now more accurate representing the downloaded signed document. __________________________________________________________________________________________________________ I confirm I have signed the CLA and read the PR guidelines at [www.odoo.com/submit-pr](http://www.odoo.com/submit-pr) task-id: 4423449
Point of Sale now supports dark mode, making the interface more comfortable to use in low-light environments. Related POS screens and integrations, including restaurant appointments, barcode lookup, and WhatsApp receipts, were updated for a consistent experience.
Original PR description
*: pos_restaurant_appointment, product_barcode, whatsapp_pos This commit adds dark mode support to the POS (Point of Sale) module requires: https://github.com/odoo/odoo/pull/196219 Task-4488031
The preparation display no longer uses the “skip change” order-line status to delay kitchen preparation. This simplifies the restaurant POS flow and prepares it for the newer courses feature, which handles staged preparation in a more standard way.
Original PR description
The “skip_change” status was introduced to ensure that the kitchen prepares order lines only when requested by the waiter. This commit removes that status, as it will be replaced by the courses feature, which manages it more effectively, aligning with standard POS software practices. task-4526151
Thai sales and tax Excel reports now handle credit notes more accurately and include point-of-sale related entries. This gives businesses a more complete and reliable view of sales and tax reporting activity.
Original PR description
Improve these two xlsx export by properly handling credit notes. The report is also no longer build based on the tax total, meaning that it can now display pos-related entries. Task ID: 4113553
Resolved issues and error corrections
Shiprocket delivery methods can only be published when required credentials and sender company details are complete. If credentials change after publication, the method is automatically unpublished and users are warned when related company information is edited, reducing failed Shiprocket integrations.
Original PR description
With this commit : ----------------------------------- - Implemented validation to check all required credentials and company information (street, country, zip code, mobile number, email) before publishing the Shiprocket method. - Added functionality to set the Shiprocket method to automatically 'unpublished' if credentials are updated after publication. - Introduced a warning message for users when shippers' company information is edited. - These changes ensure that all necessary information remains accurate and up-to-date, preventing potential issues with the Shiprocket integration. Task-id: 4042891
12 changes
Enhancements to existing features
The invoice document setup now asks for the company's VAT and bank account details earlier in the process. This helps users avoid extra back-and-forth when sending and printing their first invoice.
Original PR description
[IMP] account: add vat to base document layout view When users try to "send and print" their very first invoice without having set their company first, the wizard will tell them to go fill some of that information first. That behaviour can be annoying (the back and forth before being able to "send and print"). We improve that behaviour by leveraging the fact that before the users can "send and print" their first invoice, there is already the base document layout wizard that asked them to fill up some information. We simply add the company information that we need to be filled there (`vat` and `account_number`). That way if the users correctly filled what is suggested they avoid the back and forth. In practice, we want to change this on the base document layout: - Add the vat field - Remove the invisible from account_number if qr_code is not selected task-4486167 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
Accounting journal names have been updated to better reflect the range of documents they can contain, including invoices, bills, refunds, and credit notes. This makes the labels clearer for users and reduces confusion in accounting workflows and related reports.
Original PR description
The journal have a name that implies that you should only have Customer Invoices or Vendor Bills but you can also get refunds and credit notes. task-4427096
Pivot dimensions in spreadsheets can now be dragged reliably even when the side panel contains many items. The update ensures the full side panel scrolls during drag-and-drop, making pivot configuration smoother for users.
This fixes an issue in barcode delivery operations where increasing the quantity on an existing line could wrongly change its source location after scanning another location. Warehouse teams can now adjust quantities without accidentally moving stock from the wrong location, improving inventory accuracy.
Original PR description
Before this commit, When scanning a source location different from the move line's current location, followed by an increment in the quantity, would incorrectly update the move line’s location. Steps To Reproduce =================== - Enable storage location settings. - Create a delivery order (by default, the source location is Stock). Add a product from Shelf1 (or any child location of the source location). - Go to Barcode Delivery Operation type and select the newly created delivery order. - Scan `WHSTOCK` as the source location. - For an existing line from `WH/Stock/Shelf1`, press `+1`. The line’s location should remain as `Shelf1`, but it incorrectly updates to `Stock`. With this fix, scanning a location different from the move line’s current location and then updating the quantity will no longer change the move line’s location. task: [4551137](https://www.odoo.com/odoo/my-tasks/4551137)
Barcode screens now better respect the operation setting for showing reserved serial and lot numbers. When that setting is off, users will no longer see misleading red highlights on unreserved lines, and extra quantity demand details are hidden to reduce confusion.
Original PR description
*: barcode, barcode_mrp This commit includes updates to and serial/lot number display features: - When the 'show sn/lot' feature is disabled for an operation type, unreserved serial/lot lines will no longer be highlighted with a red background. - The '/qty' demand field for sn/lot sublines is hidden when `Show Reserved SN/Lot` is disabled. Task: [3926998](https://www.odoo.com/odoo/my-tasks/3926998)
Colombian electronic invoicing now uses the correct DIAN UBL unit-of-measure codes in generated documents. This helps reduce compliance issues and improves consistency of invoices, credit notes, and debit notes sent to Colombian tax authorities.
Original PR description
- Adding DIAN UBL codes for the existing UoM provided in the task description. Code '94' is returned if the UoM for some reason doesn't have a defined code. - Adjusting the relevant method in the DIAN module to match. - Adjusting test XMLs to use correct UBL codes. task: 4396119
Mexican payroll now calculates the employment subsidy using the daily UMA value and a configurable percentage parameter. This helps keep payroll calculations aligned with current subsidy rules and easier to adjust when rates change.
Original PR description
The subsidy is now computed based on the daily UMA and a new rule parameter, a percentage. Task: 4465315
The Documents sharing panel now shows the owner more clearly, avoids listing the owner twice, and prevents limited-access users from changing their own access expiration dates. Permission panel data is also restricted to internal users, improving control over document access information.
Original PR description
Clarify owner on share panel: ============================ The panel must still indicate the owner (except for Odoobot) of the folder/document, when the partner list with access is empty. In addition, we don't want the owner to appear twice in this list, and there's no point in displaying his role. It may happen because someone sets the document's owner permission using the invitation member component of the panel. To avoid this, the owner can no longer be found from this component. Access to permission panel data: =============================== As portals users can't use the share panel, access to the permission panel data is restricted to internal users. Editing permission expiration date: ================================== We don't want users with limited read access to a document/folder to be able to edit/remove their expiration date. task-4527397
Resolved issues and error corrections
This fixes Malaysian e-invoicing file generation so tax exemption details are included correctly. Businesses using Malaysian EDI get more accurate compliance documents and avoid wrongly generated files after the version 18 forward port.
Original PR description
Fixes an issue that appeared during the forward port in 18. The way tax exemption was handled had to be changed, but it was not correctly handled and the info is missing at one place, causing the file to be wrongly generated. --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
Time off requests now calculate durations correctly for employees using flexible work calendars. This prevents hidden calendar settings from causing incorrect leave balances or request lengths.
Original PR description
Issue: we you have a flex calendar the time off duration will depend on the attendance_ids even if they are hidden from the calendar view reporduce: create a new calendar and change the attendance before turing it into flex and then change the `hours_per_day`. then use this calendar on one of the employees and try to givce him a time off. the duration will be calculated based on the attendance you set before marking the calendar flex Solve: - update the `_get_durations` method to check if the calendar is flex and then use the `hours_per_day` Notes: this flex calendars does not have a weekdays and weekends so all the days that is selected in the leave would be counted Task: 4535351 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
This update brings the spreadsheet component up to its latest version, including a performance improvement and a fix for dragging and dropping dimensions in the pivot side panel. Users should see smoother spreadsheet behavior and more reliable pivot table configuration.
Original PR description
### Contains the following commits: https://github.com/odoo/o-spreadsheet/commit/5b19f883f [REL] 18.0.15 Task: 0 https://github.com/odoo/o-spreadsheet/commit/13cc17201 [IMP] perfs: improve performance of `includesAll` Task: 4548168 https://github.com/odoo/o-spreadsheet/commit/54c533353 [FIX] pivot_side_panel: drag and drop of dimensions Task: 3817565 Co-authored-by: Anthony Hendrickx (anhe) <anhe@odoo.com> Co-authored-by: Alexis Lacroix (laa) <laa@odoo.com> Co-authored-by: Lucas Lefèvre (lul) <lul@odoo.com> Co-authored-by: Dhrutik Patel (dhrp) <dhrp@odoo.com> Co-authored-by: Adrien Minne (adrm) <adrm@odoo.com> Co-authored-by: Mehdi Rachico (mera) <mera@odoo.com> Co-authored-by: Florian Damhaut (flda) <flda@odoo.com> Co-authored-by: Rémi Rahir (rar) <rar@odoo.com> Co-authored-by: Pierre Rousseau (pro) <pro@odoo.com> Co-authored-by: Vincent Schippefilt (vsc) <vsc@odoo.com>
Saving a vendor payment no longer replaces the user's chosen payment journal with the partner's default payment method. This prevents accidental payment method changes and helps accounting users keep payment records aligned with their intended selection.
Original PR description
Steps to Reproduce: - Assign a partner a default payment method (e.g., Cash). - In the vendor payment, select that partner and then change the journal to another payment method (e.g., Bank). Then…
Steps to Reproduce:
- Assign a partner a default payment method (e.g., Cash).
- In the vendor payment, select that partner and then change the journal to another payment method (e.g., Bank). Then save.
The Issue:
After saving, the journal field chosen by the user is overridden by the partner's default payment method.
Cause:
In `account_payment`, the method `_inverse_partner_id` controls the logic to display the default payment method (`journal_id`) for a partner. It also had `@api.onchange('partner_id')` to adjust the `journal_id` in case the user changes the partner ID in the view. However, the inverse method is triggered on a save because `partner_id` is in `vals_list` of `write`, which sets the default `journal_id` instead of the user input.
Solution:
The behavior of the inverse method can be handled instead by the compute of `journal_id` if it depends on `partner_id`.
opw-4478282
---
I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-prThe Belgian HR payroll rules now include the latest employment bonus thresholds following the February 2025 indexation. This helps ensure payroll calculations remain aligned with official social security guidance and reduces the risk of incorrect employee pay or employer reporting.
Original PR description
Source: https://www.socialsecurity.be/employer/instructions/dmfa/fr/latest/intermediates#bonus-a-lemploi-plafonds-apres-indexation-05-02-2025 TaskID: 4558145
Fixed an issue where the pivot dimensions panel did not scroll properly while users dragged items in spreadsheets with many dimensions. This makes organizing pivot data smoother and prevents the side panel from blocking drag-and-drop workflows.
Document owners can now delete their own documents even when they are not editors of the folder. When a document’s owner is changed, the previous owner keeps editor access, preventing accidental loss of access while keeping deletion rules consistent.
Original PR description
See commit messages. Task-4510838