Daily updates from Odoo
Thursday, March 5, 2026
17 changes
3 changes
Enhancements to existing features
This update refines how stock push rules are triggered within Odoo. Previously, rules were based on the move and destination location. Now, rules are determined by the individual move lines and their destination locations, leading to more accurate and efficient stock transfers. This change enhances the reliability of automated stock management.
Original PR description
This PR changes how push rules work. Instead of making push rules work on the move and the move destination location, they now work on the move_lines and the move_lines destination location. Task-5212472
This update ensures invoices sent to French, German, or Belgian customers comply with the latest regulations for Factur-X and ZUGFeRD formats. It also adapts invoice formats for B2B and B2G transactions in Germany, using ZUGFeRD for business-to-business and XRechnung for business-to-government invoices, improving clarity and accuracy.
Original PR description
Updating the FacturX format (France)/ ZUGFeRD format (Germany) to respect the new norms: Factur-X 1.07.3 EXTENDED and ZUGFeRD 2.3.3 EXTENDED. Add the differentiation between these two formats in the customer interface, even if they point to the same value in the code. It clarifies things for the customer, things are called by their name. Also, in Germany, for B2B invoices (peppol EAS = 9930), use ZUGFeRD, but for B2G invoices (peppol EAS = 0204), use XRechnung. Adaptation of the default values in the partner form according to this statement. For French and German companies that are sending invoices to French, German or Belgian customers, changed the default format of invoice sent to be compliant to PDF/A-3 norms. task-5266286 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#252018 Forward-Port-Of: odoo/odoo#237091
This update speeds up testing for the Stock Barcode module by optimizing the initial setup process. Specifically, the creation of a company, which was a significant bottleneck, has been moved to a setup class. While fully moving all setup to the setup class initially caused test failures, this change represents a key improvement in test execution time.
Original PR description
TestBarcodeClientAction [setup is quite slow](https://runbot229.odoo.com/runbot/static/build/102958171-master/tests/profile/profile_2.html#localProfilePath=1), especially because it creates a company. In addition in all classes extending this one, we spend at least 6 minutes on this line. (when testing sale_timesheet -> !stock_barcode_mrp_subcontracting) This commit proposes to move at least the company creation in a setupclass. It would be great to move all the setup in the setupclass but the tests are failling when doing so and could be achieved by a member of the stock_barcode owner team. Tests based on this setup should be a few minutes faster with this change. Forward-Port-Of: odoo/enterprise#109509
3 changes
Enhancements to existing features
This update speeds up testing for the Stock Barcode module by moving company creation steps to a setup class. This significantly reduces test execution time, particularly when running tests for related modules like Sale Timesheet. The change addresses a performance bottleneck identified during testing.
Original PR description
TestBarcodeClientAction [setup is quite slow](https://runbot229.odoo.com/runbot/static/build/102958171-master/tests/profile/profile_2.html#localProfilePath=1), especially because it creates a company. In addition in all classes extending this one, we spend at least 6 minutes on this line. (when testing sale_timesheet -> !stock_barcode_mrp_subcontracting) This commit proposes to move at least the company creation in a setupclass. It would be great to move all the setup in the setupclass but the tests are failling when doing so and could be achieved by a member of the stock_barcode owner team. Tests based on this setup should be a few minutes faster with this change. Forward-Port-Of: odoo/enterprise#109509
This update addresses changes required by the new format for Spanish tax reports (l10n_es_reports). Specifically, a new field for petrol has been added, and the arrangement of certain Casillas has been adjusted to align with the updated reporting requirements. This ensures compliance with Spanish tax regulations.
Original PR description
Forward-Port-Of: odoo/enterprise#109260
This update enhances the poll experience by displaying the poll's end datetime when you hover over the 'Remaining Time' text. This allows users to set reminders and proactively manage participation, ensuring timely responses and maximizing poll engagement.
Original PR description
This commit adds showing of datetime when the poll will end when mouse-hovering on the Remaining time text of the poll. This is useful to put a reminder for later just before the poll ends, let's say to see if involvement is fine or we need to push pressure for people to vote. <img width="555" height="255" alt="Screenshot 2026-03-04 at 12 55 44" src="https://github.com/user-attachments/assets/19ef91a1-ea52-475a-86e1-acc16e18fe98" />
1 change
Enhancements to existing features
This update addresses a significant change in the format required for Spanish VAT reporting (Mod303). Specifically, a new field for 'petrol' has been added, and the arrangement of various data elements ('casillas') has been adjusted to comply with updated tax regulations. This ensures accurate and compliant VAT reporting for Spanish businesses.
Original PR description
The format for 2026 changed quite significantly. There is an extra field for the petrol, which we basically do not touch and a lot of casillas that changed places. opw-5990405 Forward-Port-Of: odoo/enterprise#109503
1 change
Enhancements to existing features
This update addresses a significant change in the format required for Spanish VAT reporting, specifically for the 2026 tax year. The update includes a new field for 'petrol' and adjustments to the arrangement of various data elements (casillas). This ensures continued compliance with Spanish tax regulations.
Original PR description
The format for 2026 changed quite significantly. There is an extra field for the petrol, which we basically do not touch and a lot of casillas that changed places. opw-5990405 Forward-Port-Of: odoo/enterprise#109503
1 change
Enhancements to existing features
This update addresses a significant change in the format required for Spanish tax reports, specifically for the year 2026. The update includes a new field for 'petrol' and adjustments to the arrangement of various data elements ('casillas'). This ensures continued compliance with Spanish tax regulations.
Original PR description
The format for 2026 changed quite significantly. There is an extra field for the petrol, which we basically do not touch and a lot of casillas that changed places. opw-5990405 Forward-Port-Of: odoo/enterprise#109503
5 changes
Enhancements to existing features
This update enhances the system's ability to track employee payroll issues. By storing these issues within the employee records, we can now display and highlight them in version views, providing better visibility into payroll discrepancies. This improves payroll management and reporting.
Original PR description
Storing employee payroll issues in order to be used for displaying the employee issues in the version views and highlighting them Task: 5955152
This update simplifies the process for Italian businesses filing withholding tax returns. The default periodicity has been changed to monthly, addressing a previous difficulty in configuring this setting. This ensures compliance with Italian regulations and improves the user experience.
Original PR description
In Italy, withholding tax return periodicity is monthly. but it's hard to discover/configure. Default periodicity should be monthly. task-5985704 Forward-Port-Of: odoo/enterprise#109420 Forward-Port-Of: odoo/enterprise#109185
This update ensures Odoo correctly handles student salaries in Belgium, aligning with minimum wage regulations. The system now checks if student employees (designated as 'STU') are paid below the legal minimum, providing a warning to administrators. This improves accuracy and compliance for Belgian payroll reporting.
Original PR description
**Description:** In Belgium there a minimum salary amount for student. We should extend the existing warning (or create a new one) on employee and in the dashboard to warn if an employee with dimona category [STU] has a wage under the minimum. **Implementation** . Update _compute_l10n_be_is_below_scale() in hr_version and salary_offer . Add Corresponding tests . Add cp_200_salary_scale_student_A parameter values . Add cp_200_salary_scale_student_B parameter values . Add cp_200_salary_scale_student_C parameter values . Add cp_200_salary_scale_student_D parameter values task-5485636
This update simplifies TDS calculations within Odoo's HR payroll system, aligning with new tax regulations effective April 1, 2025. A new 'Tax Declaration' button has been added to employee records, providing a clear view of current FY TDS details and facilitating PDF reporting. This ensures accurate and compliant TDS reporting for employees.
Original PR description
This PR updates the TDS flow: - Removed the old TDS wizard and version-based monthly TDS computation - Added new tax regime parameter values effective from April 1, 2025 - Improved TDS calculation on payslips by computing monthly TDS directly from payslip logic - Introduced a Tax Declaration button on the employee form to review and print current FY TDS details Task-5025645
This update enhances the kitchen display by now showing the lot or serial number of tracked products during the preparation process. This improves accuracy and traceability for inventory management, particularly important for products requiring specific tracking like pharmaceuticals or high-value items. It aligns with best practices for order fulfillment and reduces potential errors.
Original PR description
In this commit: - We will display the lot/serial number of the tracked product on the preparation card in the kitchen display. Related PRs: - Community: https://github.com/odoo/odoo/pull/247503 Task-5491350
2 changes
Enhancements to existing features
This update addresses a significant change in the format required for Spanish VAT reports, specifically for the 2026 tax year. The update includes a new field for petrol and adjustments to the report structure, ensuring compliance with updated tax regulations. This change impacts the accuracy of reported VAT data.
Original PR description
The format for 2026 changed quite significantly. There is an extra field for the petrol, which we basically do not touch and a lot of casillas that changed places. opw-5990405 Forward-Port-Of: odoo/enterprise#109503
This update enhances the account_edi_ubl_cii module by completely separating the BIS3 export process. It deprecates several older functions related to BIS3 UBL generation, streamlining the process and improving efficiency. This change ensures consistent and accurate UBL export for BIS3 invoices.
Original PR description
Deprecate: _ubl_add_base_line_ubl_values_item _ubl_get_line_item_node _ubl_add_base_line_ubl_values_price _ubl_add_values_payable_amount_tax_withholding _ubl_add_values_payable_rounding_amount _ubl_add_values_allowance_charge_early_payment _ubl_add_values_tax_currency_code_company_currency_if_foreign_currency _ubl_add_values_tax_currency_code_company_currency _ubl_add_values_tax_currency_code_empty _ubl_add_values_tax_currency_code --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
1 change
Enhancements to existing features
This update enhances Odoo's ability to handle taxes in UBL and CII EDI formats by introducing an 'allowance/charge' mechanism. Previously, tax handling was limited, now businesses can accurately represent complex fiscal scenarios like discounts and charges. Comprehensive testing ensures correct export and import of invoices with these new tax configurations.
Original PR description
This **PR** introduces support for the Allowance/Charge mechanism in UBL and CII EDI formats. Previously, allowance and charge handling was static and implicit: fixed taxes were always exported as…
This **PR** introduces support for the Allowance/Charge mechanism in UBL and CII EDI formats. Previously, allowance and charge handling was static and implicit: fixed taxes were always exported as charges with code AEO, while line discounts were exported as allowances with code 95, which did not allow correct modeling of many real-world fiscal scenarios. A new configuration is added on the tax form to explicitly define whether a tax is treated as a regular tax or as an allowance/charge. When marked as an allowance/charge, the corresponding code and reason can be defined. The sign of the amount determines the semantic: negative values are treated as allowances, while positive values are treated as charges. When applied on invoices, such taxes are exported as AllowanceCharge elements in UBL and CII for EDI purposes. Support is also added for importing invoices containing such allowance/charge entries. Additionally, test cases are added to validate correct behavior across export and import flows, including scenarios combining standard taxes with allowance/charge entries. **task**-5424216