Daily updates from Odoo
Wednesday, December 10, 2025
14 changes
3 changes
Enhancements to existing features
This update enables users to send multiple attachments when sending invoices through the Peppol network. These attachments are now embedded within the invoice XML file using a standard ‘AdditionalDocumentReference’ tag, streamlining the process for exchanging documents with Peppol partners. This improves efficiency and compliance for international transactions.
Original PR description
[IMP] account: multiple embed files peppol This commit allows user to send multiple attachments through peppol. The attachments will be embedded into the xml under the `AdditionalDocumentReference` tags task-5103539 Forward-Port-Of: odoo/odoo#238662 Forward-Port-Of: odoo/odoo#234339
This update introduces a new process to automatically upload attachment files to cloud storage. It's triggered by a manual cron job, ensuring attachments larger than a specified size and meeting certain criteria are securely stored in the cloud. This improves storage efficiency and backup capabilities.
Original PR description
This commit provides a cron job to migrate attachment binary to the cloud storage. The cron job is designed to be manually triggered from by the "Run Manually" button of the Scheduled Action's form…
This commit provides a cron job to migrate attachment binary to the
cloud storage. The cron job is designed to be manually triggered from
by the "Run Manually" button of the Scheduled Action's form view.
The cron job will try to upload some attachments once
1. size is greater than the minimum upload file size defined by
(ir.config_parameter: cloud_storage_min_file_size)
2. id is greater than the number defined by
(ir.config_parameter: cloud_storage_migration_min_attachment_id)
3. res_model is in a white list
(ir.config_parameter: cloud_storage_migration_message_models)
(ir.config_parameter: cloud_storage_migration_all_models)
4. not used by documents.document
optional configurations to avoid timeout issues
- cloud_storage_migration_max_file_size:
max bytes for each migrated attachment
- cloud_storage_migration_max_batch_file_size:
max total bytes for migrated attachments in one cron job execution
The cloud_storage_migration_min_attachment_id which can be accessed
from the list view can be treated as the progress of the cron job.
Manually setting it to 0 and retriggering the cron job will retry the
upload process for previously failed or ignored attachments.
taskid: 5387110
Steps
1. install a cloud storage module (cloud_storage_google, cloud_storage_azure)
2. install the cloud storage migration module (cloud_storage_migration)
3. Go to Settings for Cloud Storage Settings <img width="505" height="206" alt="image" src="https://github.com/user-attachments/assets/d72d7b52-5ce7-4209-8645-4a8ac35dd049" />
4. [Configure the cloud storage settings](https://www.odoo.com/documentation/19.0/applications/general/integrations/cloud_storage.html)
5. Setting the Minimum File Size. Attachments smaller than the size won't be uploaded to the cloud storage <img width="457" height="96" alt="image" src="https://github.com/user-attachments/assets/8dc4e6fe-9c84-44f5-a83a-28c7b2fad30a" />
6. After 4, configure settings for the cloud storage migration
a. <img width="464" height="209" alt="image" src="https://github.com/user-attachments/assets/37352453-ff0e-4e03-a4d5-7fdb8168dee1" />
b. Cron Job:
i. the link to the cloud storage migration cron job
ii. the cron job is designed to be a job only triggered by clicking "Run Manually".
iii. It will re-trigger itself until all relevant attachments are migrated.
c. Parameters:
<img width="882" height="571" alt="image" src="https://github.com/user-attachments/assets/9926ed9f-81ac-4917-b759-872ed2584217" />
d. Progress Bar:
i.progress of the migration job
ii. calculated by `cloud_storage_migration_min_attachment_id / cloud_storage_migration_max_attachment_id`
e. Attachment Report:
i. <img width="1907" height="298" alt="image" src="https://github.com/user-attachments/assets/33a77835-c6b6-4bc4-b20a-4ec68acba783" />
ii. a view to help administrator analyze which model's attachments should be migrated
iii. help to configure step 6.c.i.4 and step 6.c.i.5
f. Message Attachments
i. help to configure step 6.c.i.4
g.All attachments
i. help to configure step 6.c.i.5
7. Click Cron Job and then Click Run Manually
<img width="409" height="123" alt="image" src="https://github.com/user-attachments/assets/f60cdfcf-e6a6-4503-87fc-0be7f14ceede" />
Description of the issue/feature this PR addresses:
Current behavior before PR:
Desired behavior after PR is merged:
---
I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
Forward-Port-Of: odoo/odoo#238928
Forward-Port-Of: odoo/odoo#235745This update enhances user privacy by permanently providing access to the Cookie Policy page and allowing users to update their consent choices at any time. Previously, users could only access the policy through a popup, and changes weren't consistently reflected, now cookie preferences are reliably tracked and updated.
Original PR description
This improvement enhances user control over cookie preferences by making the Cookie Policy page (/cookie-policy) more accessible and allowing users to modify their consent at any time. **Issue:** -…
This improvement enhances user control over cookie preferences by making the Cookie Policy page (/cookie-policy) more accessible and allowing users to modify their consent at any time. **Issue:** - Previously, the only way to access the Cookie Policy page was through the link in the cookie consent popup. However, once users accepted cookies, the popup was no longer displayed, making it impossible to navigate to the policy page later. - Additionally, the Cookie Policy page had a button to reopen the cookie consent popup, but it was only visible if cookies were not accepted. Once cookies were accepted, the button was hidden, preventing users from changing their preferences. **Improvements:** - Added a permanent link to the Cookie Policy page in the copyright footer, ensuring it remains accessible at all times. - The cookie consent toggle button now remains visible even after a user has accepted cookies, allowing them to update their preferences at any time. task-[4502416](https://www.odoo.com/odoo/project/974/tasks/4502416) Forward-Port-Of: odoo/odoo#238772 Forward-Port-Of: odoo/odoo#203409
8 changes
Enhancements to existing features
This update enhances the yearly salary report's user experience by aligning the report layout and adjusting formatting to handle larger salary figures (up to 10 digits). Previously, the report had alignment issues and would hide columns with large numbers. Now, the report starts on a new page for each employee's salary structure, ensuring clarity and readability.
Original PR description
Before this commit: Report The header and body are not aligned. The report hides column when digits exceed 8 digits The new salary structure of the same employee starts from the same page. After this commit: Align header and body layout. Adjust padding, DPI, and font size to adapt to up to 10 digits. The new salary structure starts on a new page. task-5363813
This update enhances the usability of Odoo's payroll reports by adding the ability to group data by key categories like employee, department, and pay run. This allows for more detailed and targeted reporting, simplifying payroll analysis and improving business insights.
Original PR description
This PR adds filters to reports to group them by (Employee, Department, Job Position, Payslip, Pay Run) which eases the usage of payroll reports. Task: 5367806
This update allows users to generate partner ledger and aged partner reports showing outstanding balances as of a specified future date (e.g., February 28, 2025). This provides more flexibility in analyzing financial positions and tracking open items, particularly for reporting on historical data.
Original PR description
Determine the outstanding balance at a future date (e.g., Feb 28, 2025) for all items that were open on a specific past date (e.g., Dec 31, 2024). To enable this, we modify the partner ledger reports: - Repurpose the existing unreconciled filter - This option is now activated with an "open on" date When the open on date is enabled, the partner ledger only displays the residual amounts (not debit, credit, balance) as before. Clicking `journal items` will go to a list view that uses the `open on` field and new `residual_at_date` fields (see community) The aged partner reports also have this option enabled, allowing a similar set of capabilities. for example view the aging buckets up to the end of 2024, but of those transactions, we only display what is open today. task-4708558
This update simplifies the process of creating and managing digital signatures. Users can now set default settings for sign items at the template level, reducing repetitive work and improving visibility into which roles are applied. The changes also enhance the overall user experience for sign template creation.
Original PR description
Before: - Users had to manually set readonly, mandatory, and alignment for every sign item individually. - There was no way to define these settings at the sign item type level. - On the sign template form, users could not see which sign item roles were added on template. After: - Users can now define readonly, mandatory, and alignment values directly on the sign item type. These values are automatically applied to all sign items created from that type, saving time and avoiding repetitive setup. - The sign template form now shows which sign item roles are used in the current template. - UI improvements for a smoother and more user-friendly experience. Impact: - Less repetitive work: users no longer need to configure the same settings for each sign item. - Better visibility: users can easily see which roles are linked to a template. task-5100986
This update enhances financial reporting to allow auditors to easily identify outstanding debts at a specific point in time. The changes improve the accuracy of reports by reconciling debt balances, providing a clearer picture of financial obligations. This supports more efficient audit processes and compliance.
Original PR description
Auditors often need to find the portion of debt that is still open at a specific posterior date. task-4708558
This update enhances Odoo's reporting capabilities to allow auditors to accurately identify outstanding debts at a specific point in time. The changes update various reports to reflect a more precise reconciliation of financial data, addressing a common audit requirement. This improves the accuracy and reliability of financial reporting.
Original PR description
Auditors often need to find the portion of debt that is still open at a specific posterior date. task-4708558
This update introduces a 'scheduled' state for sign requests, clarifying whether a request has been sent or is awaiting delivery. It also includes minor UI improvements to streamline the user flow and make the sign request process more intuitive. This enhances user experience and reduces potential confusion.
Original PR description
Added a new 'scheduled' state for sign requests to help users distinguish between requests that have been sent and those scheduled for future delivery. Also includes minor adjustments to enhance the overall user flow and usability. task-5159990
This update optimizes the website generation process by enabling the server to regularly check the database. This prevents delays and ensures the website is generated efficiently, leading to faster loading times for users.
Original PR description
This way the server can ping the db so that it can generate and avoid unnecessary waiting time.
3 changes
Enhancements to existing features
This update enables users to send multiple attachments when sending invoices through the Peppol network. The attachments are now embedded within the invoice XML file using a standard ‘AdditionalDocumentReference’ tag, streamlining the process for international transactions. This improves compatibility and efficiency for Peppol-related invoicing.
Original PR description
[IMP] account: multiple embed files peppol This commit allows user to send multiple attachments through peppol. The attachments will be embedded into the xml under the `AdditionalDocumentReference` tags task-5103539 Forward-Port-Of: odoo/odoo#238936 Forward-Port-Of: odoo/odoo#234339
This update enhances Odoo's tax calculations to better handle situations where taxes are based on volume, such as sales of goods by weight or quantity. This change, requested during Odoo Exp 2025, ensures more accurate tax calculations for businesses with volume-based pricing. It impacts the account_tax_python module.
Original PR description
The use case to cover is when you have a volume based tax. Requested during Odoo Exp 2025. --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#238140 Forward-Port-Of: odoo/odoo#232146
This update adds a new 'Update Document' button within sign templates, allowing users to easily reuse common layouts across multiple sign templates. This streamlines the process of creating sign documents by duplicating a template and swapping in a different PDF, saving time and ensuring consistency.
Original PR description
Adds the 'Update Document' button in the template edition for allowing changing the current document to another pdf by duplicating the current template and replacing the document in the new template. This is a super useful feature for re-using common layouts of sign items between different sign templates. task-5254140