Saturday, September 6, 2025
4 changes · master
New functionality added to Odoo
Mexican payroll users can now generate and view the required CFDI XML directly on individual payslips. This supports local payroll compliance and also adds a way to manually adjust ISR tax when payslips span two months, avoiding incorrect negative calculations.
Original PR description
This adds the CFDI xml on individual payslips. Task: 4299196
Enhancements to existing features
Employees can now register more than one bank account and choose how their salary is distributed between them. Payroll supports fixed-amount allocations first, then distributes the remaining salary by percentage, making salary payments more flexible for employees and HR teams.
Original PR description
[IMP] Employees can have multiple bank accounts This PR aims to allow employees to associate with more than one bank account. Salary computation: Bank accounts can be allocated a fixed amount or a percentage. First, Bank accounts with "Fixed" type are processed, the remaining of the salary is distributed onto the "Percentage" bank accounts according to their percentages. Task-4908556
The OCR correction interface now lets users apply scanned text boxes to more fields and select multiple boxes at once. This should make entering and correcting bill and bank statement data faster and more flexible, especially when creating multiple statement or invoice lines from scanned documents.
Original PR description
This commit refactors and improves the OCR boxes interface used to fill in the fields of bills and bank statements. It is now available on all fields, instead of only the fields detected by the OCR. The supported field types are: char, text, html, integer, float, monetary, date, datetime and many2one. It is now possible to select multiple boxes at once. The behaviour will vary depending on the situation: - On textual fields, it will concatenate the content of all boxes and set that value. - For numeric and date fields: - on regular fields, it isn't supported as it doesn't make sense. - on x2many fields, it will create one line from each box. - On top of this, if lines were created using the tool, it will search for aligned boxes among the selection to fill in the corresponding line. task-[5055731](https://www.odoo.com/odoo/project/2068/tasks/5055731)
VoIP users can now choose whether to transfer a call immediately or first speak with the colleague receiving the transfer. They can manage both conversations more easily by switching between calls or ending one while keeping the other active, improving customer handoffs and call handling.
Original PR description
This commit introduces several new options to the transfer feature that already exists in VoIP. Those options are: 1. The user can choose between transferring the current call directly to a potential…
This commit introduces several new options to the transfer feature that already exists in VoIP. Those options are: 1. The user can choose between transferring the current call directly to a potential transferee selected or to ask them first (point 2). 2. The user is able to make another call to the potential transferee before making the transfer. 3. The user can switch between the two active calls (the customer and the potential transferee) freely. 4. The user is able to terminate any one of the two calls while having the other one active. Technical changes to achieve the above options include: - Introduced another session `transferSession` along with `mainSession`. Both sessions are handled through their getter/setter. Also, there is an `activeSession` attribute in the user agent that determines the current active session. - Changed several functions in the userAgent service and the call_model.js to handle both sessions smoothly. - Changing the ContactInfo component props to accept a contact and a phoneNumber instead of a call object. - Introducing a TransferConfirmation component that gives the user the options listed above. - Introducing a CallBanner component that shows the other call when having two calls. - filtered the potential transferee contacts so as not to have the current call contact. Task-4866867