Tuesday, January 13, 2026
5 changes · saas-19.1
Enhancements to existing features
This update ensures invoice labels comply with Section 31 of the CGST Act, which dictates how invoices are labeled based on the type of supplies and customer status. Specifically, the label now correctly reflects whether a document contains only taxable or exempt supplies, aligning with Indian tax regulations. This change improves compliance and accuracy for our Indian users.
Original PR description
Previously, the invoice label was always displayed as “Tax Invoice” or “Invoice”. However, as per Section 31 of the CGST Act, the document label must depend on the nature of supplies and the customer type: - If the document contains only taxable supplies => “Tax Invoice” - If the document contains only exempt supplies => “Bill of Supply” - If the customer is unregistered and the document contains both taxable and exempt supplies => “Invoice-cum-Bill of Supply” - If the customer is registered and the document contains both taxable and exempt supplies, separate documents must be issued as per the law. With this commit, the invoice label is generated strictly in accordance with Section 31 of the CGST Act. In the case of a registered customer where both taxable and exempt supplies exist in a single document, the label will be printed as “Invoice”. task-5468323 Forward-Port-Of: odoo/odoo#241512
This update enhances the Odoo software's support for the Uruguayan market by adding and refining account configurations, specifically for fixed assets and related expenses. It also introduces automated depreciation support for various asset types, streamlining financial reporting within the Uruguay localization.
Original PR description
This commit enhances the Uruguay localization by adding missing accounts and updating existing ones, and by configuring Asset Models for fixed asset management. Changes: - Added and updated account.account entries for fixed assets and related expenses. - Added account.asset data to support automated depreciation for different asset types. task-5392954 Forward-Port-Of: odoo/odoo#240891
This update makes the HR Applicant model accessible to other Odoo modules. Previously, this model was isolated, limiting its functionality. This change allows for greater integration and data sharing across the Odoo system, improving overall HR workflow efficiency.
Original PR description
Export HrApplicant model so that it can be used in other modules Task-[5461729](https://www.odoo.com/odoo/5778/tasks/5461729) Enterprise PR odoo/enterprise#103402 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
This update ensures Odoo documents fully comply with PDF/A-3A standards, a crucial requirement for certain business processes and regulatory compliance. Previously, issues with different PDF libraries caused validation failures. This change includes fixes to decoding problems and additions to meet the stricter PDF/A-3A specifications.
Original PR description
This commit upgrades our PDF/A compliance from 3B to 3A, and fixes a few issues previously undetected due to the different PyPDF libraries we're currently supporting that made the previous PDF fails…
This commit upgrades our PDF/A compliance from 3B to 3A, and fixes a few issues previously undetected due to the different PyPDF libraries we're currently supporting that made the previous PDF fails even the 3B validation. Improvement 1: PDFA validators were previously detecting our file as 3B. Hence we update the metadata content `conformance` to `A`. Issue 2: When using `._pypdf` library, we failed the 6.1.2-2 and 6.8-1 rule even though we have implemented them on the previous version. It seems that this is caused by the `if SUBMOD...` check only ensuring it's not equal to `_pypdf2_2` (which makes it trigger for the new `_pypdf`). Hence, we reclarify the comments and fix the IF check. Issue 3: After implementing issue 2, it seems that a traceback occurs every time we're using `._pypdf` and calling the pdf write method. This is because the added characters on the header can't be decoded with `UTF-8`. Hence we change it to other greater-than-127-bytes characters that can still be decoded with `UTF-8`. (The actual character used here doesn't matter). Improvement 4: To be compliant with the new 3A rules (additional rules not there in 3B when we first implemented them), we add a minimal mark info dictionary and document structure on the PDF catalog object (`_root_object`). task-None Forward-Port-Of: odoo/odoo#243171 Forward-Port-Of: odoo/odoo#234960
This update ensures our Odoo system complies with the latest Brazilian tax regulations regarding NCM (National Commerce) codes. The changes include adding a 'DEPRECATED' marker to expiring codes and introducing new codes to accurately reflect current tax requirements. This update is crucial for accurate tax calculations and reporting in Brazil.
Original PR description
This **PR** updates the NCM code list as per latest requirement. It appends `DEPRECATED` at the end of expires codes. Also it introduces a few new codes. **task**-5381617 Forward-Port-Of: odoo/enterprise#104091 Forward-Port-Of: odoo/enterprise#102009