Daily updates from Odoo
Wednesday, February 18, 2026
6 changes · master
Enhancements to existing features
This update switches the GSP provider for Indian GST e-invoices to align with recent integration updates. This change ensures Odoo Enterprise continues to comply with evolving Indian tax regulations and utilizes the correct GST credentials for e-invoice generation.
Original PR description
Update the Indian localization to switch the GST e-invoice GSP (GST Suvidha Provider) configuration to a new provider as required by recent integration updates. This change ensures that GST credentials uses the new GSP configuration and aligns with updated operational requirements. Task: 5379879 Forward-Port-Of: odoo/enterprise#103984
This update ensures Odoo's US payroll system complies with the new OB3 legislation. It introduces a mechanism to deduct qualified overtime pay, capped at $12,500 for singles and $25,000 for married couples, aligning with new IRS regulations. This change impacts overtime calculations and employee payslips.
Original PR description
Purpose: In July 2025, the US Federal Government passed the "One Big Beautiful Bill Act" (OB3), which incurred policy changes around taxes, spending, and economic incentives. Odoo will need to adapt…
Purpose: In July 2025, the US Federal Government passed the "One Big Beautiful Bill Act" (OB3), which incurred policy changes around taxes, spending, and economic incentives. Odoo will need to adapt data and features to be compliant with the following changes: - No tax on overtime: Qualified overtime can be deducted, capped at $12,500 for singles and $25,000 if married filing jointly. The deduction is not avaiable if MAGI is over $150,000 for singles and $300,000 if married filing jointly. To adapt to the changes, the following salary rule and rule parameters were added: - l10n_us_hr_payroll_structure_us_employee_qualified_overtime (hr.salary.rule) - rule_parameter_federal_qualified_overtime_deduction_cap (hr.rule.parameter) - rule_parameter_federal_qualified_overtime_deduction_cap_2025 (hr.rule.parameter.value) The new salary rule is meant for informational purposes only. It will always show on the employee payslips if they inputted overtime work entries for the month and if the deduction cap has not been met yet. task-4964361 Forward-Port-Of: odoo/enterprise#107187
This update enhances the Sign module's ability to handle multilingual documents by allowing multiple fonts to be specified. This eliminates the previous limitation of only one font and ensures smoother rendering of documents with diverse writing systems like Arabic or Chinese, improving the overall user experience.
Original PR description
Support multiple named fonts for multilingual PDF rendering in Sign Previously, only one TTF font could be set via the sign.use_custom_font parameter. Now, multiple fonts can be defined in sign.document.fonts using the format: /path/to/font.ttf; /path/to/another.ttf Each font is automatically registered at runtime. Missing files are skipped with a warning. During PDF generation, the system selects the appropriate font for each character based on Unicode coverage, falling back to Helvetica when needed. This enables smooth rendering of documents containing multiple writing systems (e.g., Latin, Arabic, Chinese) without manual font changes. task-4731754
This update enhances project budgeting by adding a 'Budget Spent' stat directly to the project form. Clicking this stat now opens a detailed budget report. The old project dashboard right panel and associated code have been removed, streamlining the project overview.
Original PR description
- make `Budget Spent` stat button in project form view - make it open the `budget.report` window - move stat buttons from project dashboard to project form view - Remove the project dashboard right panel and all its related code --- task-5344612
This update adds a 'Planning Stat' button to the contact form in the Enterprise module. This allows sales teams to quickly see all planned shifts associated with a customer and their related child partners, streamlining shift management and improving efficiency. When creating new contacts, the system will automatically set the most recent SOL (Sales Order Line) as the default.
Original PR description
Add a Planning stat button to the contact form view to quickly access all planned shifts linked to the partner’s SOL, including child partners’ shifts. - Display the number of shifts linked to the partner and its children - Display the start date of today’s shift, otherwise the nearest future shift, otherwise the latest past shift - When creating a new record from this view, set the most recent SOL by default task-5138820
This update allows Ecuadorian businesses to add a custom legal legend (like 'Exportador Habitual') to their electronic invoices, credit notes, and other PDF documents. Previously, a duplicated header was appearing due to a technical issue with PDF rendering. This change resolves the duplication and ensures accurate legal compliance for Ecuadorian exports.
Original PR description
**Commit - 1** Add a new field “Extra Header Legend - RIDE” in the Ecuadorian localization settings to allow users to define a custom legal legend (e.g., "Exportador Habitual", "Fundación sin fines…
**Commit - 1** Add a new field “Extra Header Legend - RIDE” in the Ecuadorian localization settings to allow users to define a custom legal legend (e.g., "Exportador Habitual", "Fundación sin fines de lucro") to be displayed in the PDF header of all electronic documents (Invoices, Credit Notes, Debit Notes, Withholdings, and Delivery Guides). The legend is printed below the company information and RIMPE legend (if any). --- **Commit - 2** After the refactor (https://github.com/odoo/odoo/commit/bba2fc505f5d0b4770eacc6877155b1aeda6d772), layout_document_title is no longer injected directly in external_layout but passed as a variable (via t-call) to the web module, where it is rendered inside web.external_layout_body. In that flow, the variable is used in two heading tags (`<h3>` for PDF splitting and `<h2>` for the visible title), which means it is evaluated twice during PDF generation. Because the EDI header was provided as a table-based template through layout_document_title, both heading usages rendered it. Additionally, since block-level elements were injected inside heading tags, wkhtmltopdf normalizes the invalid HTML structure during PDF rendering, making both evaluations visible and resulting in a duplicated header in the final PDF. This change adapts to the refactor by moving the EDI header directly into external_layout and setting layout_document_title to False for Ecuadorian companies, thereby avoiding the duplicated rendering. --- **task**-5872859