Monday, May 4, 2026
6 changes · 18.0
Enhancements to existing features
This update ensures compliance with Belgian regulations regarding invoices issued using the 'Co-Contractant' tax scheme. It adds a required field for specifying the tax exemption reason and code, aligning Odoo with local legal requirements. This change is necessary for accurate financial reporting in Belgium.
Original PR description
It is mandatory in BE to add a legal note on the invoice when using a "Co-Contractant" tax task-5905176 Forward-Port-Of: odoo/odoo#251797
Resolved issues and error corrections
This update resolves an issue where self-billing invoices were incorrectly processed as standard invoices, specifically when generating UBL documents for Peppol. The change ensures the correct document type ('credit_note') is used, enabling proper self-billing functionality. A demo setup has also been added for testing.
Original PR description
To reproduce: - Activate Peppol - Activate selfbilling on your purchase journal - Create a Vendor Refund - Generate the UBL => The InvoiceTypeCode is 389, meaning it's considered a selfbilling invoice, not a selfbilling credit note. The issue is that we never put the document type of credit_note for selfbilling documents as it wasn't expected. invoice was, due to a else encompassing invoices and bills. Also add a handle demo to be able to create selfbilling documents in demo mode. opw-6132226 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#260941
This update resolves an issue where Amazon's stock synchronization was failing due to incorrect fulfillment channel data. The system now uses a new API field to accurately determine channel availability, defaulting to FBM when needed to ensure stock updates. Users can further manage channel selections with the `sale_amazon_channel_management` module.
Original PR description
During the upgrade from XML-based feeds to the new JSON Listings API for stock management, we chose to use Amazon's API to fetch a listing's fulfillment channel information. However, Amazon does not…
During the upgrade from XML-based feeds to the new JSON Listings API for stock management, we chose to use Amazon's API to fetch a listing's fulfillment channel information. However, Amazon does not provide a clear answer for a given listing. After some research, we assumed an offer was FBM when the listing contained a `merchant_shipping_group`, because this setting is specific to FBM listings. See also e6d620e4b200cadabb00ce37ab03289cfeb4ae58. This assumption was flawed: Amazon can keep the shipping group even after a listing switches to FBA, which can block stock synchronization. This commit uses the `fulfillmentAvailability` field from the Listings API instead. This field stores the available quantity for each fulfillment channel in which the listing is sold. When multiple fulfillment channels are present, the offer defaults to FBM so stock synchronization can continue. The `sale_amazon_channel_management` module can then be installed to manually select and disambiguate the channel. This commit also upgrades the patching method used to update the FBM stock to ensure user specific configuration aren't overriden during the synchronization. opw-6064896 opw-5152359 Forward-Port-Of: odoo/enterprise#114473
This update adds logging of Amazon's request IDs from SP-API responses. Previously, these IDs weren't recorded, making it harder for support teams to troubleshoot issues with Amazon integrations. Logging these IDs will significantly improve support efficiency and resolution times.
Original PR description
Each response from Amazon's SP-API includes a request identifier used by their support team for debugging. This identifier was not previously logged, making support investigations more difficult. Forward-Port-Of: odoo/enterprise#114483
This update resolves an issue where discounts weren't being imported accurately due to rounding discrepancies. The fix skips rounding during the import process, ensuring the subtotal matches the original invoice file. This prevents discrepancies between Odoo's calculations and the imported data.
Original PR description
**PROBLEM** When importing an invoice, we don't want to round the discounts, to avoid discrepancy between the subtotal computed by Odoo, and the subtotal of the file we import. To do this, we change the decimal precision of discount to 100 digits when importing files. However, float_round wasn't built with this in mind, in float round, we add a small epsilon to fix some rounding issue. This small epsilon changes the amount of the discount (50.0 -> 0.5000000000004) and this changes the subtotal. **STEP TO REPRODUCE** 1. Install l10n_edi_it. 2. Change the VAT number of IT Company to 05098540288 (to match the one on the file to import). 3. Import the file present in the bug ticket. 4. Notice the subtotal of the line doesn't match what's in the invoice. **FIX** We skip rounding of the discount on import. Ticket [link](https://www.odoo.com/odoo/project.task/6046324) opw-6046324 Forward-Port-Of: odoo/odoo#256037
This update resolves a bug that prevented the 'Display Thanks Message' option from working correctly in website popups and newsletter snippets. Previously, the thanks message wasn't shown after saving, and popups would close immediately. The fix ensures the thanks message is displayed as intended, improving the user experience for newsletter sign-ups.
Original PR description
Steps to reproduce: =================== 1. Add a Newsletter snippet to a website page. 2. In the snippet options, check "Display Thanks Message". 3. Save the page and re-enter edit mode. => The…
Steps to reproduce: =================== 1. Add a Newsletter snippet to a website page. 2. In the snippet options, check "Display Thanks Message". 3. Save the page and re-enter edit mode. => The checkbox appears unchecked and the thanks message preview is not shown. Also: 4. Add a Newsletter popup. 5. Check "Display Thanks Message", save. 6. Subscribe via the popup. => The popup closes immediately instead of showing the thanks message. Cause: ====== The `toggleThanksMessage` editor option was using `o_disable_preview` / `o_enable_preview` classes to determine the widget state via `_computeWidgetState`. These classes are removed by `cleanForSave`, so the state was lost after saving. Additionally, on subscribe success inside a popup, the modal was closed immediately regardless of whether the thanks message option was enabled. Solution: ========= - In `init`, restore the preview state from this attribute when entering edit mode. - `_computeWidgetState` now reads from the data attribute instead of checking preview classes. - On subscribe success, only show the thanks message (and keep the popup open) if `data-show-thanks-message` is set; otherwise close the popup as before. opw-6093824 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr