Daily updates from Odoo
Monday, December 15, 2025
11 changes · master
Enhancements to existing features
This update enhances the Odoo Enterprise system by making all relevant benefits fields visible for hourly wage contracts. This change ensures that all necessary information is easily accessible, improving clarity and streamlining the management of hourly employee benefits. The update corrects a previous limitation in the system.
Original PR description
The purpose of this update is to ensure that all relevant fields are visible for hourly wage contracts, improving clarity and ensuring all necessary information is easily accessible. This PR includes the following changes: - Made all relevant benefits fields visible for hourly wage contracts, similar to fixed wage contracts. - Removed ir.ui.view from hr_contract_salary_payroll to make some fields visible for hourly wage. - Updated the visibility logic for contract fields to ensure they are displayed appropriately for hourly wage contracts. Task - 4421240
This update corrects a calculation error in employee EPF contributions. As of October 2025, a new flat rate schedule is being implemented. This change ensures accurate EPF calculations based on the correct flat rate, preventing discrepancies in payroll processing.
Original PR description
Previous behavior applies a dynamic rate on employee's salary rather than using the flat rate schedule. As of Oct 2025 there is a flat rate schedule to follow for computing the EPF contributions. For example for a wage of 6250, a 12% rate would be 750 (which is now incorrect) and according to the flat rate schedule is 756. task-5286179
This update enables users to export multiple BR invoices as XML files in a single batch, streamlining the process for generating required reports. Previously, users could only export invoices individually. Additionally, the system now intelligently handles errors during export, excluding problematic invoices from the batch without disrupting the entire process.
Original PR description
Add a new button in account.move list view for BR companies, allowing the user to export xml files of multiple moves in batch. If any selected moves is not valid, raise a RedirectError to open a list view with all problematics moves. Linked:https://github.com/odoo/odoo/pull/235532 task-5105859
Resolved issues and error corrections
This update fixes an issue where global discounts on online orders weren't correctly calculating taxes. Now, discounts accurately reflect tax amounts based on the order line, aligning with standard Point of Sale and Sales tax calculations. This ensures accurate tax reporting and pricing for global discount orders.
Original PR description
Before this commit: --- - When an online order with an order-level (global) discount was placed, the discount line did not properly include tax calculations. After this commit: --- - Global discounts now compute taxes based on the order line taxes. - The discount line includes accurate tax details. - Uses the same standard tax computation flow as in Point of Sale and Sales. task-5047965 Forward-Port-Of: odoo/enterprise#96981
This update corrects misleading tooltip text on product forms related to subscription invoices and ensures that product cards display only the recurring price for subscription products. This improves clarity and accuracy for users managing subscription orders, aligning with the expected presentation of recurring charges.
Original PR description
Steps to Reproduce: Issue 1: Incorrect tooltip text 1. Go to Products -> Products in subscription app. 2. Open a product page and select goods product type 3. observe product_tooltip show incorrect…
Steps to Reproduce:
Issue 1: Incorrect tooltip text
1. Go to Products -> Products in subscription app.
2. Open a product page and select goods product type
3. observe product_tooltip show incorrect wording:
- "Based on order" showed "end of the period."
- "Based on delivered" showed "beginning of the period."
Issue 2: Product card shows both recurring and sales price
1. Go to Products -> Products in subscription app.
2. Observe that the product card displays both recurring price and list price
Solution:
- Remove `product_template_form_view` from `sale_subscription_stock` and move
it to `sale_subscription`, as the tooltip logic now applies to both goods and
service-type products.
- In subscription product display only recurring price
task-5156390
---
<img width="1002" height="436" alt="image" src="https://github.com/user-attachments/assets/487fa076-264d-4565-a048-343c7317db42" />
<img width="968" height="262" alt="image" src="https://github.com/user-attachments/assets/d4fc4543-c7f4-4a98-be8f-b898057de896" />This commit corrects a recent pricing error affecting products with multiple plans and variants. The previous changes removed crucial logic, leading to incorrect price calculations. Reverting the changes restores the accurate price computation for these products, ensuring correct sales pricing.
Original PR description
This commit reverts the modifications introduced in the one-time sale [PR](https://github.com/odoo/enterprise/pull/77981). Those changes caused incorrect pricing behavior for products with variants, as the necessary logic for handling multiple plans and variants was removed. By reverting, we restore the correct price computation for products that have both multiple plans and variants. opw-5224319 Forward-Port-Of: odoo/enterprise#100654 Forward-Port-Of: odoo/enterprise#93463
This update fixes an issue where scanning a lot in a batch transfer incorrectly updated line quantities. Specifically, when a subline without a lot was scanned after a related line was completed, the quantity was miscalculated. This change ensures that lotless lines are correctly updated during barcode scanning, improving inventory accuracy.
Original PR description
…f related line is complete ### Steps to reproduce: - In the settings enable Lots & Serials and Batch transfers - On the delivery operation types enable show reserved lots in the barcode tab - Create…
…f related line is complete ### Steps to reproduce: - In the settings enable Lots & Serials and Batch transfers - On the delivery operation types enable show reserved lots in the barcode tab - Create a storable product tracked by lots and put 10 x lot1 in stock - Create and confirm a delivery for 10 units - Create a batch transfer with your delivery - Process your transfer from the barcode app - Scan one unit of LOT1 and put in pack - Toggle sublines select the 0/9 subline without lots nor package - Scan LOT1 #### > The 1/1 LOT1 line with a pack is updated to 2/1 rather than the 0/9 ### Cause of the issue: Since e45249c2f6883d743a4e7d19e736c622e26a3d58 and 27bfb985a29e9f0abe94dec8a76bf6d08560fbc9 an override of the `_findLine` method has been introduced in `BarcodePickingBatchModel` to ensure that scanning a lot referenced by an already existing line of the batch transfer triggers an update of that line rather than an override of the lot of an other line. However, these lines should not priorities a completed line when there is line without a set lot. opw-5340865 Forward-Port-Of: odoo/enterprise#101908 Forward-Port-Of: odoo/enterprise#101611
This update resolves an issue where the OCR process incorrectly assigned foreign currencies (like Convertible Marks) to expense items linked to products with standard prices. Now, users can correct the currency and total amount after the OCR, ensuring accurate reimbursements and preventing disruptions to the expense workflow. This fix improves the reliability of expense data.
Original PR description
Fixes a bug where the OCR would sometimes put a foreign currency on an expense with a product having a cost. Making it impossible to switch back to the company currency (because the currency cannot be changed). This also allows the user to change the total amount after the OCR pass, so it can be corrected if needed task-4873236 Forward-Port-Of: odoo/enterprise#101822 Forward-Port-Of: odoo/enterprise#89093
A recent update introduced errors in the XML format for exporting batch payments with mixed IBAN and Swedish payment methods. This fix reverts the problematic changes and simplifies the process by only generating the necessary zip file, ensuring accurate XML formatting for these payments. This resolves an issue impacting payment processing.
Original PR description
Here https://github.com/odoo/enterprise/pull/95463, we add the possibility to export
batch payments with mixed IBAN and Bankgiro/Plusgiro/BBAN payments, but this introduced
few bug in the xml format.
The reason is, we were using new custom logics and not the main one. The problem is
the custom logics is wrong, not the main one.
This commit remove most of the custom logics we added and use all the main one.
This has been done by:
1 - Reverting the original commit
2 - Adding only the zip file generation, passing a context key to know if we are
with bban or iban payments.
opw-5181340
Forward-Port-Of: odoo/enterprise#102050
Forward-Port-Of: odoo/enterprise#100014This update fixes a calculation error in the MRR evolution dashboard that was causing 'Contraction' figures to be double-counted. The change ensures that MRR projections accurately reflect the true changes in recurring revenue by properly accounting for contraction and expansion trends. This improves the dashboard's reliability for financial reporting.
Original PR description
…traction **Issue** The formula defined for the "Net new" in the MRR evolution dashboard double counted the "Contraction", as it is already included in the "Up/Downgrade" (cell B6, equal to B4+B5, "Contraction" + "Expansion"). <img width="360" height="354" alt="image" src="https://github.com/user-attachments/assets/0a19a86a-f1b9-462f-812c-71a283f6fe89" /> opw-4925930 Forward-Port-Of: odoo/enterprise#101598 Forward-Port-Of: odoo/enterprise#96878
This update fixes a bug where credit notes weren't being properly accounted for when settling invoices through the POS system. The change ensures credit notes are now correctly processed, allowing them to reduce the total amount settled, improving accuracy in financial reporting. This resolves a previous issue where credit notes were incorrectly interpreted as payments.
Original PR description
We had a bug when settling invoices and credit notes of a customer. The credit notes where not correctly computed. Steps to reproduce: ------------------- In accounting: * Create and confirm a customer invoice for a total of 10$. * Create and confirm for the same customer a credit note for a total of 2$. In POS: * In a seesion, open the customer selection menu. * In the burger menu at the right of our customer, select Settle invioces. * Select our invoice and credit note. > Observation: The credit note was previously seen as an amount to pay. Why the fix: ------------ Recomputing updates existing credit notes to use the signed residual logic. The domain change allows credit notes with negative pos_amount_unsettled to appear. After these changes, credit notes should appear in the "Settle invoices" dialog with negative amounts, and selecting them will create negative lines that reduce the total. opw-5257884 Forward-Port-Of: odoo/enterprise#101186