Daily updates from Odoo
Thursday, February 13, 2025
21 changes
13 changes
Enhancements to existing features
CRM Enterprise now relies on the shared community definition for won/lost opportunity status. This keeps activity reporting aligned with the latest opportunity classification rules and reduces differences between editions.
Original PR description
Move 'won_status' field to community. Task-2654916 Co-Authored-By: Raoulette Co-Authored-By: Micheline
Gantt views now show clearer, more informative date headers and tooltips, making schedules easier to read and less ambiguous. Day and year views were adjusted so hours and months are displayed more comfortably, improving usability across planning-related screens.
Original PR description
We review the group/col headers of the gantt view: - dates are formatted in a way that more information is displayed and should be unambiguous - titles are set: they give more information (or the same information if the original information is precise enough) on the dates - In range 'Day', the hours are no longer set in bold - In range 'Year', the columns have a bigger minimal width so that the months are well separated and readable. Task ID: 4535648
Businesses can once again manage Peppol invoices directly from the Documents app. This helps teams keep electronic invoice processing connected to their document workflow, reducing manual handling and improving operational continuity.
Original PR description
Add back the possibility to handle Peppol invoices in Documents. task-4394408
Marketing automation campaigns can now use filters that update over time, such as targeting customers who ordered within the last three months. Website sales also gains a ready-made anniversary campaign template, helping businesses run timely customer engagement flows without manually refreshing campaign criteria.
Original PR description
Allow marketing activities to composer dynamic domains instead of only static ones. This allows campaigns to specify relative time relations, enabling flows like sending a mailing to users who have ordered something within the last 3 months for example. We also add a "birthday" flow for website_sale that was kept on hold because dynamic domains were not supported. task-4240689
Knowledge articles can now begin directly with an embedded list, kanban, or calendar view and keep that view aligned at the top. Template titles are no longer inserted into the article body, and editing safeguards make it easier to remove the first line while ensuring the article still keeps valid content structure.
Original PR description
This commit adds a new css rule to enable articles starting by an embedded view to stick to the top of the article. This display enables the user to create articles with only their embedded view inside it. This commit also removes the insertion of titles inside the article's body for the helper's templates. These templates should better represent an article containing only an embedded List/Kanban/Calendar. It also adds a new plugin to Knowledge that handles the deletion of an article's 1st line. This way when a user wants a clean article with only the embedded view on top it's easier to do so. This plugins also ensures that every article contains at least a paragraph if it happens the user deletes one too many. task-3231001
Rental, subscription, and appointment sales now follow the updated ecommerce cart process. This keeps these sales flows aligned with the main website shop changes and helps maintain reliable cart behavior for customers.
Bank synchronization and payment initiation now use a richer connection status, giving clearer information about provider support and activation state. The option to initiate payments is shown only when the customer has enabled payment initiation for the connected bank, reducing confusion and preventing unavailable actions.
Original PR description
This commit has 2 different purposes: 1. Connect the bank synchronization and the payment module to a new API route to get the connection status instead of only getting the consent expiring date. This new route still provides the consent expiring date but will also provides more information about the payment initiation. Three new information are provider, whether the payment feature is enabled, whether the payment activation is requested to the provider and whether the feature is activated with the provider. 2. This second purpose is directly linked to the first one, it modifies the Initiate payment visibility. Before it was visible once the bank journal was connected to a bank synchronization, now it's visible once the bank journal has a bank synchronization where the payment initiation feature is enabled by the customer. task-4532157
Bank reconciliation can now use patterns found in transaction details to identify the right reconciliation model. This helps accounting teams match bank transactions more accurately and reduce manual review.
Original PR description
This commit will add the logic to search based on a regex from the transaction details field of the bank rec widget. task: 4378289
Custom reporting filters have been reorganized so their special logic runs only for the specific reports that need it. This reduces unintended effects across other reports and helps keep accounting report behavior more reliable.
Original PR description
This commit makes sure that a custom report adding custom logic for the report filters is doing so in a custom component, not in a patch. This means the logic will only be run when requesting the custom report, not for all reports. task-4510055
The Envia delivery settings now include a direct link to related delivery methods. This makes it quicker for users to review or adjust shipping options from the settings area.
French tax report exports can now handle empty declarations, allowing companies to submit a VAT return even when there is no tax to report. The system also creates a follow-up activity when an electronic filing fails, making errors easier to spot without manually checking each company.
Original PR description
There were 2 missing points in the tax report export in France: 1. Not possible to send empty tax report 2. The only way to know if a tax report has an error is to connect to the company This commit solves these issues by the following: 1. Adding `zone KF` to the XML export (and showing a user a warning with `check box "déclaration néant" checked`) which allows for sending empty tax report 2. If the EDI export is in error, an activity is added to the closing entry like the following https://app.excalidraw.com/l/65VNwvy7c4X/7ed0dmqcHNM task-4370133
The checkout payment setup for Shiprocket and UPS now records whether each payment method supports manual capture. This helps ensure payment handling aligns with carrier checkout flows and reduces the risk of using incompatible payment options.
Original PR description
task-3949151 See also: - https://github.com/odoo/odoo/pull/170541 - https://github.com/odoo/upgrade/pull/6810
The mobile emoji picker in Knowledge and chatter now opens in the expected place, replacing the keyboard without letting users scroll outside it. This makes adding emojis smoother and more consistent with the Discuss experience.
Original PR description
**Current behavior before PR:** In mobile view, the emoji picker in the chatter and knowledge modules replaces the native keyboard but does not take its proper position, allowing users to scroll outside the picker. **Desired behavior after PR is merged:** In mobile view, the emoji picker in both the chatter and knowledge modules will function similarly to the discuss module’s picker—replacing the native keyboard and maintaining the correct position. **task-id**:3757047
8 changes
Enhancements to existing features
Peppol registration now automatically chooses the correct role based on whether the company is already registered with another service provider. This reduces manual setup errors and helps ensure companies are registered in a way that complies with Peppol rules.
Original PR description
If the user is already registered on another SMP, we know we can only register him as a sender. If not, we have to register him as a receiver. A user can't be only a sender on Peppol. task-4394408
Payment processing can now let related modules choose which invoices should receive a notification. This helps avoid unnecessary or inappropriate invoice messages when certain invoices should be excluded.
Original PR description
Instead of directly notify the invoices link to the transaction in _log_message_on_linked_documents, the invoice return by _get_invoices_to_notify are notified. It allow other modules to exclude some invoice --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
When an accounting document is reset to draft, files previously generated for sending or printing are now detached. This lets users edit the document and generate fresh, accurate files afterward, reducing the risk of outdated attachments being reused.
Original PR description
Resetting a move to draft should detach the current attachments generated by the send and print and allow regenerating them after the user is done with the edits. Task [link](https://www.odoo.com/odoo/project.task/4498564) task-4498564 Enterprise PR: https://github.com/odoo/enterprise/pull/78429
Bank records are now archived when users try to remove them, helping preserve historical information while keeping inactive banks out of normal views. Users also get clearer controls and filters to manage archived banks from the bank form and list screens.
Original PR description
This commit will do multiple thing: - Override the unlink to archive instead - Addings archived filter - Adding a button in the form view to archive it and reload - Adding the active field to the list view - Change some optional show and hide task-4507042 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
The time off app now allows leave types marked as “Other” to bypass standard date validation. This supports more flexible configurations for worked-time or special leave categories that do not need the usual strict date checks.
Original PR description
Description of the issue/feature this PR addresses: This commit modifies the `_check_date` method in the `HrLeave` model to skip the date constraint check when the leave type is set to 'Other'. - Updated `_check_date` method to bypass the standard date validation if `leave_type_time_type` is 'other'. - This allows for more flexible date configurations for specific leave types. Current behavior before PR: The _check_date method always enforces date constraints, regardless of the leave type. This prevents the use of "leave" types that do not require strict date validation as they are worked time. Desired behavior after PR is merged: The _check_date method will skip date validation when the leave_type_time_type is set to 'other', allowing for more flexible leave configurations. --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
When an accounting document is reset to draft, files previously generated for sending or printing are now detached so they do not remain tied to an outdated version. This lets users edit the document and regenerate the correct files afterward, reducing the risk of sending stale attachments.
Original PR description
Resetting a move to draft should detach the current attachments generated by the send and print and allow regenerating them after the user is done with the edits. task-4498564 Community PR: https://github.com/odoo/odoo/pull/195626
French VAT reporting now generates the required 3519 declaration when a company requests a VAT reimbursement, ensuring the reimbursement filing is sent correctly through AspOne. The update also prevents an error when creating electronic VAT filings for periods with an empty closing entry.
Original PR description
The declaration 3519 is also needed when we ask for a reimbursement. We currently can't group them (as the fields definition don't allow it), so we will keep them separated. It is sent the same way to AspOne. task-4328721
The Belgian fleet payroll setup no longer overrides the vehicle fuel type default to diesel. This better reflects current Belgian company car usage, where electric vehicles are now the common choice, and reduces manual adjustments for users.
Original PR description
Since electric car is the most used new cars in belgium, we don't need to change the default to 'diesel' for belgium.