Daily updates from Odoo
Thursday, October 23, 2025
17 changes
1 change
Enhancements to existing features
Belgian partner lookup on the Peppol network now checks the two most commonly used identifiers, improving the chances of finding the right participant. Related warning messages about recommended identifiers were removed because the mandatory identifier handling is now managed automatically by the Peppol access service.
Original PR description
1. For belgian partner, we now check for 0208 and 9925 which are the two most used EAS when looking for partner existence on the Peppol network. 2. Remove the warnings about the recommended EAS: 0208 is now the mandatory EAS, this will be handled directly on IAP where the Peppol Access Point will try to register 0208 in all cases with an alias system. Note that we have always computed 0208 as recommended value in registration process. task-4852903 Forward-Port-Of: odoo/odoo#231142 Forward-Port-Of: odoo/odoo#227431
8 changes
Enhancements to existing features
Multi-company financial reports can now group lines by account code before individual account. This makes it easier for users to compare and review accounts consistently across companies.
Original PR description
If the report has a line that contains a group by `account_id` and if the report is multi-company, we allow the user the group per `account_code` before `account_id`. task-5092712 Forward-Port-Of: odoo/enterprise#94920
HR salary configuration now lets users archive personal information fields, benefits, and resume items they do not want to use. This helps companies keep their preferred setup after upgrades, instead of removed items reappearing automatically.
Original PR description
…its and resume Some want to remove some personal info fields they don't want in their salary configuration but, after an upgrade, those fields are put back. These changes allow the archiving of personal info, benefits and resume so that users can configure what they want without worrying about an upgrade making the records come back. There was no need to add the active field in the personal_info and salary_resume models, since they were already included. I just had to add them in the views in these cases. task-4901052
UrbanPiper test orders can now be launched directly from the POS frontend debug widget instead of the backend configuration page. This reduces tab switching and makes it easier for teams to validate the UrbanPiper order flow during setup or troubleshooting.
Original PR description
Before this commit: --------------- The UrbanPiper test order action was only accessible from the backend POS configuration form. This required opening two separate tabs to test the UrbanPiper order flow. After this commit: --------------- - The "UrbanPiper Test Order" action is now available directly in the frontend debug widget. - Removed the test order button from the configuration page. <img width="1308" height="108" alt="image" src="https://github.com/user-attachments/assets/706d0a88-4b52-42da-88cc-4bf2f80fab7a" /> Task-4977992
This update improves how Documents Spreadsheet keeps user-entered information during spreadsheet interactions, reducing the chance of losing or overwriting work. It also updates automated checks for charts and list views to ensure the behavior remains reliable.
Original PR description
Enterprise counter-part of https://github.com/odoo/odoo/pull/227449 This commit contains adaptation of tests. task-4756754
The German tax report has been reworked after removing the balance column, so related calculations and report logic continue to align with the new layout. This keeps the report clearer and helps ensure German tax reporting remains accurate for businesses.
Original PR description
After removing the balance column, we need to refactor the code that depends on it task-5046641
The VoIP call history screens have been adjusted to work better on smaller devices, making recent calls easier to read and use on mobile. The update also improves visual alignment of phone details and status indicators for a cleaner, more consistent experience.
Original PR description
**Purpose:** - The form view was broken on mobile, making it difficult to read and interact with. - The list view was not usable on smaller screens, so a kanban (fake list) view was required for a better mobile experience. - The country flag was misaligned with the phone number in views. - The state badge was not vertically centered in the list view. **Specification:** - Fixed the form view layout for mobile while keeping the desktop layout intact. - Added a kanban view to improve readability and usability on small screens. - Updated “Recent Calls” redirection to open in kanban view on mobile and in list view on desktop. - Fixed alignment of country flag with the phone number. - Fixed vertical alignment of the state badge in list view. **Task**-5060875
BACS payments can now use UK account numbers and sort codes directly, instead of relying only on IBAN details. This makes setup more practical for UK bank accounts and removes an unnecessary journal field from Direct Debit mandates to keep payment handling clearer.
Original PR description
BACS was only supporting IBAN account type and extracting account number and sort code from it. Added support for BACS to handle account number and sort code(clearing number field) separately. Removing Journal fields on bacs.ddi, ss there's no reason that we have payment_journal_id field on the mandate, as all related journal logic is in the payments themself. task-4630586
The ESG emissions workflow now opens emitted emission records through a dedicated form, making navigation more consistent regardless of the source record. It also prevents users from choosing a physical calculation method when the required unit of measure is missing, avoiding save errors.
Original PR description
task-5152778
5 changes
Enhancements to existing features
This pull request updates several website and HTML editing tools used to build pages, forms, menus, links, carousels, and layout blocks. The changes appear aimed at improving the page-building experience and editor behavior, although the PR description is incomplete and the commit is marked as work in progress.
Original PR description
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
The Czech localization now includes dedicated fiscal positions for intra-community and extra-community transactions. This helps businesses apply the correct 0% EU goods and services tax setup more reliably.
Original PR description
When using the CZ localisation, the fiscal position are not fully set up. This commit will create a new fiscal position for intra-community and changes the 0% EU G and 0% EU S taxes to have that fiscal position. To be able to have the "replaces" (original_tax_ids) fields, i had to change the vat_required field on the domestic fiscal position. task-5103864 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
The point of sale experience has been refined with clearer button labels, better guidance, and fewer unnecessary warnings. These changes help cashiers and restaurant staff move through orders, payments, notes, and preparation steps more smoothly and with less confusion.
Original PR description
pos*: point_of_sale, pos_restaurant This commit introduces several UX enhancements in the standard POS flow: - Removed unintended onboarding step tip. - Updated note input dialog title to include the…
pos*: point_of_sale, pos_restaurant This commit introduces several UX enhancements in the standard POS flow: - Removed unintended onboarding step tip. - Updated note input dialog title to include the selected product name (e.g., “Pizza: Add Customer Note”). - Fixed issue where the Payment button incorrectly became primary when only the order-level note was updated. - Renamed "Order" to "Send" when only a note or message needs to be sent for preparation. - Added "New Order" button on the Ticket screen when no orders are available. - Improved placeholder text for floating order name input. - Added a back button on the Floor screen in table-finding mode for direct sale. - Moved preset filters next to order state filters (Active, Paid, etc.). - Made the Customer button primary when a customer is required for the order. - Removed unnecessary toaster warning for “Pay Later” payment method selection. - Shifted order preparation warning from the Validation button to the Payment button on the Product screen. - Added toaster notification when an order is sent for preparation summary. Task-5116688 Related-https://github.com/odoo/enterprise/pull/97458
Users can now download invoices in a single ZIP file containing all supported formats, such as PDF and XML. This makes it easier for businesses using Odoo to share sales and purchase invoices with accountants who may use different tools.
Original PR description
With PEPPOL, many clients use Odoo for invoicing while their accountant uses another tool. To easily send invoices to the accountant, it’s important to export invoices for both sales and purchase. Adding a `Export ZIP` option to download invoices in all supported extensions (pdf, xml, ..etc) in the same zip. task-4946367 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#219245
Belgian partners are now checked against the two most commonly used Peppol identifiers, making it more reliable to find whether they exist on the Peppol network. The update also removes outdated recommendation warnings because the required identifier is now handled automatically during registration.
Original PR description
1. For belgian partner, we now check for 0208 and 9925 which are the two most used EAS when looking for partner existence on the Peppol network. 2. Remove the warnings about the recommended EAS: 0208 is now the mandatory EAS, this will be handled directly on IAP where the Peppol Access Point will try to register 0208 in all cases with an alias system. Note that we have always computed 0208 as recommended value in registration process. task-4852903 Forward-Port-Of: odoo/odoo#231142 Forward-Port-Of: odoo/odoo#227431
1 change
Enhancements to existing features
This update adds new capabilities for Six payment terminals in Odoo Point of Sale, including end-of-day balance report printing and support for refunds or reversals. It also improves transaction handling, receipt formatting, and card information handling to make terminal operations faster and more reliable for merchants.
Original PR description
Based on the feedback received from our partners we are missing some features in our Six terminal integration. This PR adds them 1. Send balance command to print end-of-day report 2. Adapt the code to reduce the sleep delay after each transaction 3. Refunds/payment reversals for Six + it also adds some minor code improvements like a) Card brand is now saved in pos payments instead of the card number b) Card number is still being sent to PoS and while not stored in v17 will be stored from v18 c) The code of ctypes_terminal_driver and Six Driver was improved to reuse the buffer size and improve the buffer usage d) Fixes the receipt size for the Six terminals e) updates the Six C libraries used to the latest version to get all the newest fixes Related C PR: https://github.com/odoo/worldline-lib/pull/9 Forward-Port-Of: odoo/enterprise#96748
2 changes
Enhancements to existing features
Odoo now routes Peppol partner lookup checks through its IAP service so it can support the Peppol network’s upcoming DNS change. This helps keep electronic invoicing partner discovery working after the switch from CNAME to NAPTR records, without requiring unsupported package changes in stable versions.
Original PR description
Starting from 1st November, the Peppol SML will start to use NAPTR records instead of CNAME. This mainly allow them to enforce a specify a scheme (https). To be able to retrieve this specific type of records and follow the replacement record we need `pythondns` package which is not available in stable versions. We therefore will now use IAP to serves as a bridge to query the Peppol network when retrieving a partner services/existence on Peppol. This solution is also good to handle future changes by moving most of the logic into IAP where stable policy is easier to handle. Related: https://github.com/odoo/iap-apps/pull/1203 Documentation: https://docs.peppol.eu/edelivery/changelog/2025-04/Peppol%20CNAME%20to%20NAPTR%20Migration%20Process%20v1.0.0%202025-04-17.pdf task-5059508
Electronic invoices can now use a fallback payment code when no bank account is configured, avoiding validation errors in BIS3 exports. This makes initial setup smoother for businesses that have not added bank details yet.
Original PR description
Backport of commit 026743fb2627edeada5ae2a517b64bf05ae921ae . To generate a valid BIS3 format, if we put 30 - credit transfer as payment means, we need to have a bank account set. If it's not the case, it will raise an error. We improve the usability by changing that code to ZZZ - mutually defined if no bank account is provided to the invoice. This should improve the onboarding flow when no bank account is set yet. task-None Forward-Port-Of: odoo/odoo#232795