Wednesday, April 23, 2025
22 changes · master
Enhancements to existing features
Generated Belgian payroll PDFs now use clearer, employee-specific file names based on the document type and period. This makes it easier for payroll teams and employees to identify, store, and share payslips, termination holiday documents, 13th month payments, and warrants.
Original PR description
Renaming generated PDF file names for structures: - Termination holidays N/ N-1: "[Employee Name] - Termination Holidays N/ N-1" - Monthly pay : "Payslip - [Employee Name] - [Month] [Year]" - 13th Month : "13th Month - [Employee name] - [Year]" - Warrant : "Warrants - [Employee name] - [Month] [Year]" task - 4582699
Approved approval requests are now protected from deletion, helping preserve important approval history and reduce accidental data loss. Users can also archive approval requests and use a filter to view archived records when needed.
Original PR description
This commit PR
- restriction to delete the requests which are in approved state.
- a filter to view archived "Approval Requests" (and `active` field to model
in order to archive the records)
Task-4639066Users can now receive a notification when they print a test receipt, label, or page through an IoT Box. This improves feedback during device setup and troubleshooting by confirming the test print result more clearly.
Original PR description
In order to display a notification when printing a test receipt/label/page, we need to listen for a lonpolling event returned by the IoT Box. Community PR: [https://github.com/odoo/odoo/pull/206696](https://github.com/odoo/odoo/pull/206696)
Planning managers now have a dedicated Open Shifts menu to quickly view and manage unassigned planning shifts. Reporting views are also organized to make open shift workload easier to review by role and time period.
Original PR description
- The Open Shifts menu is accessible only to planning managers. allowing them to easily view and manage open shifts. - In the Pivot view, only count is visible. Data in both Gantt and Pivot views is grouped by Role. Data in Graph views is grouped by start date: week > role. task-4701080
Employee profiles are easier to use with cleaner skills, resume, organization chart, and gamification screens. The update also streamlines user and employee setup by automatically creating employee records and keeping job titles aligned with job positions when appropriate.
Original PR description
_* = hr_skills, hr_skills_survey, hr_org_chart, hr_gamification, gamification, hr_payroll Purpose: Enhance the user experience for managing skills, resumes, and employee- related features in HR.…
_* = hr_skills, hr_skills_survey, hr_org_chart, hr_gamification, gamification, hr_payroll Purpose: Enhance the user experience for managing skills, resumes, and employee- related features in HR. -------------------------------------------------------------------------------- Specification & Implementation: -------------------------------------------------------------------------------- Skill Timeline: - When no skills are available for an employee, the timeline is now hidden. Tag Placeholder: - Added tag placeholders for clearer user input. Reference. New Resume UX: - Revamped the resume section, ensuring better clarity and accessibility. Certification Field Visibility: - If the 'Category' is not Internal Certification, the certification field is hidden to avoid unnecessary clutter. Social Media Category: - Special UX adjustments for social media-related resume entries. Organization Chart Linkable Text: - Removed the smart button and made the 'Organization Chart' text linkable. - Added action functionality to the text link similar to the smart button. Gamification Empty Screen: - Improved the empty screen experience for gamification with more engaging UX. Badge Kanban: - Improved the kanban view format for gamification, making it visually cleaner and more engaging. Employee Creation on User Creation: - When creating a new user, the corresponding employee record is automatically created in the selected company. Job Position and Job Title Sync: - If the Job Title is empty, it now automatically copies the Job Position. - If the Job Position is later updated and the Job Title was customized, the title remains unchanged. - Task: 4391333
The Indian asset management features are now separated from the broader Indian reports package. This helps keep the reporting app lightweight and free to install while making asset-specific functionality available as its own module when needed.
Original PR description
this commit splits the `l10n_in_asset` module from the `l10n_in_reports` to ensure to stay in one app free when the module `l10n_in_reports` is installed. UPGRADE PR: https://github.com/odoo/upgrade/pull/7558
Point of Sale receipts have been redesigned to make totals, taxes, company details, VAT information, QR codes, and barcodes clearer and better organized. This improves the customer-facing checkout experience across standard POS, self-order, restaurant, loyalty, and local fiscal receipt flows.
Original PR description
`point_of_sale`, `l10n_co_pos`, `l10n_fr_pos_cert`, `pos_loyalty`, `pos_restaurant`, `pos_self_order`, `l10n_cl_edi_pos`, `pos_urban_piper` In this commit: === - Aligned order lines with total, tax line, etc. - font family changed to `monospace` for prices in ordelines. - Removed loyalty point lines. - Adjusted alignment of self-invoicing QR code and loyalty barcode code. - Added company name and address in the footer, moving contact details from the header to the footer. - Organized preset data properly in the header. - Added VAT prefix in ticket if county is in `Europian union VAT` country group. - `Untaxed Amount` text replaced with `Subtotal`. - Order tracking number configured only to show on self-order or kiosk receipt. Task: 4552788 Related PR: odoo/odoo#201105
The Belgian payroll spouse income field now uses a more relevant order and clearer explanations, making it easier for employees and HR teams to select the correct fiscal status. The same wording and default-value changes were applied in the salary configurator to keep the experience consistent.
Original PR description
In BE, the spouse revenue selection field has been improved. The order of the fields in the selection has been changed to be more relevant. Also, the explanation text of the different selection value has been improved and corrected. task-4680475
Administrators will now see a Studio icon even when Odoo Studio is not installed, making it easier to discover what Studio can do. Selecting the icon opens an informational wizard, helping promote Studio features without affecting regular users.
Original PR description
SPECIFICATION: When the Studio module is not installed, display the Studio icon to inform users about its features. Clicking the icon will open the `Odoo Studio` wizard, helping users understand its functionality. This studio icon will only be visible to the admin user. Task-4648879
The contract form now handles missing PDF templates more clearly by hiding unavailable contract sections and showing a helpful message. Users can upload the required PDF templates directly from the signatories area, making contract preparation smoother.
Original PR description
* = hr_contract_sign hr_contract_sign - Updated the widget used for uploading PDF templates. hr_contract_salary - Updated the Signatories tab in the contract form view to enhance UX. - When no PDF templates are present in the database: - Hide the "New Contract" and "Contract Update" sections. - Display a message indicating the absence of PDF templates. - Provide an option for users to upload PDF templates directly. task-4457876
Job applications created through the referral flow now automatically use “Referral” as their source when a referring user is present. This avoids conflicts with the referrer’s own marketing source and makes referral reporting clearer for recruitment teams.
Original PR description
add referral option in source field when there is a user in "referred by user" field "Referral" option will be selected in source field Instead of using the referrer's utm_source_id as the default source_id the 'Referral' source will now be set after new application through Referral. added placeholder for source, medium and Referred User fields Removed the test for ref_user_id since it is no longer dependent on source_id, and added ref_user_id to job_applicant task-4202786
Project-related apps now support task templates in more places, including field service, sales, timesheets, planning views, and appointments. This helps teams reuse standard task setups more consistently across workflows and reduces manual setup effort.
Original PR description
*=industry_fsm,industry_fsm_report,industry_fsm_sale,industry_fsm_stock,timesheet_grid,web_gantt,website_appointment_sale_project See the community PR for more details on the feature. This PR adapts some views and custom JS views to the task templates. --- Community: https://github.com/odoo/odoo/pull/200153 Task-4614548
The signing interface has clearer field labels and more visible delete icons, making document setup easier to understand. It also fixes strikethrough styling so it only appears where intended, reducing confusion for users completing mandatory fields.
Original PR description
This PR includes the following improvements: - Renamed fields for better clarity. - Updated trash icon colors for improved visibility. - Fixed strikethrough issue. - Ensured strikethrough is only applied when the field is mandatory. task-4656407
Users who receive shared documents can now use embedded document actions, such as marking a file as done, acknowledged, or paid, even without access to the original folder. Empty read-only fields in the document details panel now display cleaner placeholders instead of unusable dropdowns or bare icons, improving clarity and consistency.
Original PR description
It can be useful that users can execute embedded actions on documents even when they have no access to the folder itself. Flows similar to this are then enabled: A user is shared a document (as viewer) and is expected to 1. Do something about it, 2. Use an embedded action to add a "Done"/"Acknowledged"/"Paid" tag. Also * cleaning deprecated `action_folder_embed_action` `groups_ids` parameter. * When fields are empty and readonly, * showing dropdowns that will raise an access error is wrong * just showing icons with nothing next to them looks weird This way, we get a consistent look for the details panel fields (FU of https://github.com/odoo/enterprise/commit/b78e36b16a6b4b157c227d8b222b544f94cb9016). Task-4724349
Knowledge property fields now open in edit mode by default when users have permission to change them, making updates easier without needing an extra menu. Edit and move controls stay hidden until hover, reducing visual clutter and making the Knowledge interface cleaner.
Original PR description
In the community PR, we introduced an edit mode for property fields. Because the Knowledge editor doesn't include a cog menu to toggle this mode, the property field component now defaults to edit mode — provided the user has "write" access to the definition record. To reduce visual clutter, the buttons for editing or moving a property field will be hidden by default and shown only on hover. This helps create a cleaner and more intuitive interface. Task-4610816
Point of Sale preparation screens now capture how long each order and order line takes to prepare and serve. Managers can use the new reporting data to review kitchen or service performance, while completed orders can be cleared automatically to keep displays tidy.
Original PR description
- Added fields in `pos.prep.display`: `auto_clear` and `clear_time_interval` fields to auto-remove completed orders (from "Order status screen"). - Introduced `avg_preparation_time` and `avg_service_time` fields in `pos.order` to track order preparation and service durations. - Introduced `preparation_time` and `service_time` in `pos.order.line` to track preparation and service durations for each order line. - Introduced `pos.prep.order`.`completion_time` field to track total order preparation & service duration. - Updated POS order views to display `preparation_time` and `service_time`. - Added new `preparation_time_report` model & SQL view for preparation time analysis. task-id: 4623457
Field service teams can now capture geolocation when working on tasks, helping managers confirm where work is performed and improve accountability. This supports more accurate time tracking and better visibility into on-site operations.
Original PR description
Odoo lacks built-in GPS tracking for field service tasks, which is a key feature expected by customers, Geolocation on fieldwork helps track where employees are and ensures accurate time tracking, making work more efficient and accountable. task-4546189
Odoo Studio users can now edit Kanban header buttons directly, matching the existing List view experience. Invisible buttons are handled more consistently, making view customization clearer and easier to maintain.
Original PR description
This commit introduce for the Kanban editor a feature already available in List view. As the feature behavior should be identical, the same component has been made to make sure we can continue evolving the feature for both views more conveniently. Invisible buttons can now be edited properly in the Editor, while being hidden by default, and having the same appearance as other invisible elements while 'Show Invisible Elements' is checked. The commit also moves the ButtonProperties component, as it is now used in different editors, and not just in Form view. Tests and tours have been modified, to mock the new route, and adapt to the new way to edit attributes on the button node without having a dedicated modal. Some selectors have also been changed. task-4318325
Payroll administrators can now delete salary structures that are not used in any payslip without first manually removing all related salary rules. This reduces cleanup effort while still preventing deletion of structures that are already used in payroll records.
Original PR description
Currently, deleting unused structures is not straightforward as it requires to delete all attached salary rules first. It would be easier to automatically delete all salary rules of the structure upon deletion. This operation will fail in case the salary structure is used in at least one payslip, which is what we would expect. This PR allows salary structures to be deleted as long as they are not used anywhere. task-4702289
The main brand colors used across the enterprise web interface have been refreshed for both light and dark modes. This improves the visual appearance and helps the product feel more modern and consistent for users.
Original PR description
Before this commit, primary colors were not visually optimal and now it's more modern. community : https://github.com/odoo/odoo/pull/206890 task-4742840
Odoo now records the SSL certificate expiration date sent by each IoT Box. This helps users know when a certificate has expired so they can take action before connectivity or trust issues affect operations.
Original PR description
Before this commit, users didn't have any information on the expiration of the ssl certificate of their IoT box (after 60 days). We now send the certificate end date from the IoT Box to the database in order to inform the user if the date is passed. Community PR: [https://github.com/odoo/odoo/pull/206693](https://github.com/odoo/odoo/pull/206693) Task: 4737809
Once a salary offer is fully signed, important fields can no longer be edited. This helps protect contract-related information from accidental changes after agreement and adds a message to make the status clear to users.
Original PR description
This PR includes the following updates: - Made key fields read-only when the offer state is 'fully signed'. - Because, those some fields are related to contract. Task - 4633053