Wednesday, September 10, 2025
4 changes · master
Enhancements to existing features
Odoo now converts totals that combine multiple currencies into the active company's default currency using current exchange rates. This makes list, kanban, pivot, and graph views show more reliable totals, with helpful tooltips explaining conversions where relevant.
Original PR description
First commit makes AnimatedNumber use formatMonetary logic instead of replicating it (i.e. currency symbol position). Second commit improves how mixed-currency totals are handled across views: list,…
First commit makes AnimatedNumber use formatMonetary logic instead of replicating it (i.e. currency symbol position).
Second commit improves how mixed-currency totals are handled across views: list, kanban, pivot, and graph. Instead of displaying misleading or invalid values, mixed totals are now automatically converted into the active company's default currency using the latest available exchange rates.
- In list, kanban, and pivot views, mixed totals are converted into the default currency. A “?” tooltip appears to indicate the conversion, showing:
- The converted totals in the other currencies involved
- The exchange rates used for the conversion
- In the graph view, whenever multiple currencies are present in the data, all values are converted into the company's default currency to ensure consistent aggregation.
Totals that are already in a single non-default currency remain unchanged
outside of graph view.
This provides clearer, more consistent, and more meaningful information
to users working with multi-currency data.
task-5048462The Jordan localization now reflects the latest GST declaration requirements, including updated and new taxes, revised tax grids, and a renamed GST Return report. This helps Jordan-based businesses prepare tax reporting in a format aligned with government expectations.
Original PR description
This commit makes the following changes in the Jordan Localisation - Updates the existing taxes and adds some new taxes. - Updates the naming convention of tax grids & adds new tax grids. format: (number)_(type: t[tax] or b[base]) eg. 10_t, 11_b - Updates the Tax Report. The report is renamed to "GST Return" and it's format is modified as per the GST Declaration provided by the Jordanian Government. TaskID:4822933 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
The Philippine reporting module has been updated so SAWT/QAP and SLSP reports better match government-required formats. Users can now generate DAT files directly instead of exporting spreadsheets and converting them separately, reducing manual work and supporting more document types.
Original PR description
Updates the reporting module in general to better align with the government guidelines. - Update the SAWT/QAP and SLSP reports, in order to make them match better the expected outputs that will be sent to the government. - Remove the xlsx export we had until now, and replace it with a direct generation of DAT files. Users had to use a tool to transform these xlsx into the final DAT, so they can now skip this step. This process adds support for a larger variety of supporting documents. task-4689269
Indian GST returns now use Odoo’s shared tax return framework, making GSTR-1 and GSTR-2B workflows more consistent and easier to maintain. Businesses also get a new purchase report, direct JSON export, guided submission steps, and integrated vendor bill fetching within the GSTR2B process.
Original PR description
This commit refactors the Indian GST return handling to adopt the new generic `account.return`, `account.return.check`,and `account.return.type` models. The old model `l10n_in.gst.return.period` is…
This commit refactors the Indian GST return handling to adopt the new generic `account.return`, `account.return.check`,and `account.return.type` models. The old model `l10n_in.gst.return.period` is fully replaced. Previously, GSTR-1, GSTR-2B, and bill fetching through IRN were implemented on the `l10n_in.gst.return.period` model. Key changes:- New - Introduces Purchase Report Return Types - Introduces GSTR1 and GSTR2B return types. - Bypasses the generic annual corporate return type Model Migration Migrates fields from l10n_in.gst.return.period to `account.return` - Fields with the same name and purpose (e.g., company_id, tax_unit_id, etc.) are directly adopted. - Certain fields required explicit renaming for consistency: 1. start_date → date_from 2. end_date → date_to - Other GSTR-specific fields are aligned or removed depending on their relevance - GSTR3B fields and their computes are completely removed - Adopts new M2M fields with custom relation names. Workflow Enhancements - Introduces custom states for GSTR1 and GSTR2B to support their workflows. - Adds support in generic `account.return` to handle next_state transitions. - Creates the checks for GSTR1 validations. GSTR1 Flow - JSON spreadsheet export can now be directly downloaded (no dependency on Documents app). - OTP validation no longer auto-triggers the next GST action — the user must explicitly push data. - Adds an intermediate wizard to guide the user before submission. GSTR2B Flow - Implements Purchase Report using new l10n_in_gstr_section. - Vendor bill fetching is now integrated with GSTR2B workflow. - Reconciliation/matching logic remains unchanged. UI changes - Hides tax return creation if e-filing is disabled from reports and redirects. user to enable filling from the dashboard. - Aligns tax return views with the generic framework. Notes - Core JSON creation and reconciliation logic from previous implementation is preserved. - This aligns Indian GST returns with the generic tax return framework for better maintainability. Community PR - https://github.com/odoo/odoo/pull/223358 Upgrade PR - https://github.com/odoo/upgrade/pull/8281 task-4750259