Daily updates from Odoo
Saturday, July 18, 2026
5 changes · saas-19.1
Enhancements to existing features
Online payment initiation can now include the payer's bank account number and account holder name when required by certain banks through Powens. This helps payment providers receive the information they need, reducing failed or blocked payment setup flows.
Original PR description
With Powens, some banks requires the payer's bank information such as bank account number and bank holder name. This commit adds those informations to the odoofin route to be sent to the payment providers. task-6373634 Forward-Port-Of: odoo/enterprise#124088
Resolved issues and error corrections
Refreshing an accounting report now clears any old search filter stored in the session. This ensures exported XLSX files match what users see on screen, avoiding missing partners or incomplete report data.
Original PR description
**Steps to reproduce:** - Install account_reports - Open "Partner Ledger" (make sure there are several partners) - Make a search to only display 1 partner - Download XLSX - Without changing the search text, refresh the page - Download XLSX again **Issue:** After refresh, the search text is empty and all the partners are displayed in the report. However, in the XLSX file, only the partner from the previous search is present. **Cause:** The current search is kept in the session and used when getting the XLSX. When refreshing or leaving the page, it's still kept in the session even if the search bar has been reset. opw-6333212 Forward-Port-Of: odoo/enterprise#124685
Steps to reproduce: - Open tasks from any project or open a task form, go to the Blocked By tab, and click Add a line to open the task selection view. - Apply the `Templates` filter - Observe that non-template tasks and tasks from template projects are also shown. Cause: - The domain condition checks for `default_project_id` and falls back to `Domain.TRUE`, allowing non-template tasks and tasks from template projects to bypass template-specific filtering. Fix: - Remove the `default_p
Original PR description
Steps to reproduce: - Open tasks from any project or open a task form, go to the Blocked By tab, and click Add a line to open the task selection view. - Apply the `Templates` filter - Observe that non-template tasks and tasks from template projects are also shown. Cause: - The domain condition checks for `default_project_id` and falls back to `Domain.TRUE`, allowing non-template tasks and tasks from template projects to bypass template-specific filtering. Fix: - Remove the `default_project_id` condition and enforce only `has_template_ancestor = True` in the domain, ensuring that only actual template tasks are shown. task-5966601 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#260624
Saving the Settings will trigger the `_inverse_l10n_fr_pdp_pilot_phase` of the `res.config.settings`. Currently, the inverse will call `_l10n_fr_pdp_update_pilot_phase()` on the related company record even if there is no change to the field value. It leads to Odoo calling the Peppol proxy to register or unregister the company for the Pilot Phase of the French E-invoicing every time the Settings are saved. If the request returns an error, then the user is unable to save the Settings. Rel
Original PR description
Saving the Settings will trigger the `_inverse_l10n_fr_pdp_pilot_phase` of the `res.config.settings`. Currently, the inverse will call `_l10n_fr_pdp_update_pilot_phase()` on the related company record even if there is no change to the field value. It leads to Odoo calling the Peppol proxy to register or unregister the company for the Pilot Phase of the French E-invoicing every time the Settings are saved. If the request returns an error, then the user is unable to save the Settings. Related ticket: opw-6377006 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#276615
`_send_void_request` voided the transaction using `self.provider_reference`, but voiding creates a new child transaction to carry out the request, and that child never has its own provider reference set. Authorize.Net was therefore called with an empty `refTransId` and rejected the request with "A valid referenced transaction ID is required", making the "Void Transaction" button unusable from the invoice, payment, and sale order. Use `self.source_transaction_id.provider_reference` instead, ma
Original PR description
`_send_void_request` voided the transaction using `self.provider_reference`, but voiding creates a new child transaction to carry out the request, and that child never has its own provider reference set. Authorize.Net was therefore called with an empty `refTransId` and rejected the request with "A valid referenced transaction ID is required", making the "Void Transaction" button unusable from the invoice, payment, and sale order. Use `self.source_transaction_id.provider_reference` instead, matching the pattern already used by `_send_capture_request` and `_send_refund_request`. opw-6311779 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#277182