Daily updates from Odoo
Friday, July 25, 2025
12 changes · master
Enhancements to existing features
Point of Sale no longer repeatedly checks the database to confirm whether IoT-connected devices are still online. This reduces unnecessary database activity and can improve efficiency for stores using IoT Box peripherals such as scales or other hardware.
Original PR description
In order to reduce the amount of search reads from the pos to the database we removed the status loop running to check if devices are still connected to the IoT Box. Forward-Port-Of: odoo/enterprise#90638
The food delivery configuration fields no longer allow users to quickly create new configuration entries from the product setup screens. This keeps setup more controlled and prevents accidental or unnecessary configuration records.
Original PR description
*= pos_urban_piper_enhancements -------------------------------------------------- In this commit, Removed the quick create option for the `Available on food delivery` field as we don't require the config creation from this field. task: 4951290
UrbanPiper order handling now records clearer logs for more webhook checks, validation problems, and API outcomes. This improves traceability for support teams, making it easier to diagnose integration issues and confirm successful requests.
Original PR description
Before this commit:
====================
- Logging was done using hardcoded names.
- Logging was done only for the webhook and API failure scenarios.
- API success requests/responses were not logged.
After this commit:
====================
- Added dynamic name parameter to `log_xml` calls.
- Added log for the below scenarios:
- Validation of `X-Urbanpiper-Uuid`, missing store, session, charge product,
and delivery provider in webhook flow.
- Payload validation errors.
- API call responses and all exception types:
(`ConnectionError`, `HTTPError`, `JSONDecodeError`).
Task: 4909050The AI discussion tools were adjusted to stay compatible with a related platform change that removes direct message author data. This helps keep AI actions in conversations working reliably after the underlying messaging update.
Original PR description
PR community: https://github.com/odoo/odoo/pull/219890
The AI features in Discuss were updated to use the latest way of reading a member's availability status. This keeps AI-related chat actions aligned with the main platform changes and helps prevent inconsistencies after the underlying status logic changed.
Original PR description
This commit adapts the code to the new member.im_status getter. PR community: https://github.com/odoo/odoo/pull/220066
WhatsApp discussion channels now send only the information relevant to each channel type. This reduces unnecessary network data and helps keep related checks simpler and easier to maintain.
Original PR description
This commit updates the `_to_store_defaults` of the discuss channel model only to return data that makes sense according to the channel type. This will reduce the payload size on the network but also clean the many tests that list useless fields. task-4883062 community: https://github.com/odoo/odoo/pull/220095
The Indian GSTR-1 report now uses updated selection rules and a dedicated handler to classify transactions more accurately. This helps businesses prepare GST reports with more reliable figures and better alignment across related Indian tax reporting flows.
Original PR description
In this PR, update the domain in GSTR-1 Report which was using reverse charge field and added a custom handler. Community PR: https://github.com/odoo/odoo/pull/112877 Upgrade PR: https://github.com/odoo/upgrade/pull/4344 Task - 3110483
Austrian companies can now manage EC Sales List and Intrastat reporting with country-specific deadlines and filing periods in Odoo. This helps businesses stay aligned with Austrian reporting obligations and reduces manual tracking for compliance teams.
Original PR description
Following the implementation of the Tax returns feature in 18.3 which was focused on the general implementation and Belgium, we want to add the specification for other country and in this case Austria. Adding EC sales list, Intrastat specific deadlines and periodicities. task-4963439
Global invoices in Mexico now automatically correct small one-cent rounding differences that can occur when combining individual invoices or POS sales. This helps ensure CFDI submissions match accounting totals and avoids inaccuracies when invoices are issued or canceled.
Original PR description
When creating global invoices in Mexico, small rounding discrepancies of up to 1 cent arise due to pre-rounded sums of individual invoices. This leads to discrepancies between the global invoice total and the sum of its individual journal entry lines, causing inaccuracies in the global invoice submission for CFDI,for invoices or POS transactions. This commit introduces a corrective miscellaneous entry to offset these discrepancies: - Calculates the rounding difference between the aggregated invoice amounts and the global invoice total. - Applies the correction to the most used product and tax accounts. - Stores this adjustment entry on l10n_mx_edi.document, allowing it to be reversed if the global invoice is canceled. - Handles both standard invoices and POS orders task-4256227
User selection fields now rely on the standard creation flow instead of showing redundant quick-create options. This reduces confusion because creating a user still requires an email, so the streamlined flow leads users to the same complete setup screen when needed.
Original PR description
- Since an email is mandatory when creating a user, the `quick_create` option automatically falls back to `create_and_edit`. As a result, from the user's perspective, both `quick_create` and `create_and_edit` effectively serve the same purpose. - This PR removes both of the options from wherever we have used them with the Many2xAvatarUser widget. Task-4613146
Payroll access has been adjusted so users without payroll rights no longer see the Payroll app, payroll officers see employee payroll information, and payroll administrators can manage payroll configuration. This clarifies who can view or configure payroll features after recent changes, including Swiss payroll employee views.
Original PR description
Payroll No right : You don't see payroll app Officer : Employee officer + payroll tab Admin : Employee admin + payroll app config. Task: 4900703 Forward-Port-Of: odoo/enterprise#90230
Point of Sale testing tools were improved so teams can more easily validate store services, model data, and standalone components. This helps reduce regressions in PoS-related features across appointment, IoT, restaurant, payment, and delivery integrations, with no direct change expected for end users.
Original PR description
Improved test hoots in PoS to test model and service functions. It is now possible to access the `pos_store` via `getService(“pos”)`. This will automatically load mocked data and information on the various models. Components can also be mounted independently of the rest of the application, so that their functions can be tested. For the moment, only `point_of_sale` models are loaded, but the implementation is designed to be patched from other PoS modules. Forward-Port-Of: odoo/enterprise#90339 Forward-Port-Of: odoo/enterprise#90234