Friday, August 21, 2026
3 changes · master
New functionality added to Odoo
Adds a Philippine invoicing feature to apply legally required Senior Citizen and Persons With Disabilities discounts and VAT exemptions on customer invoices and credit notes. Businesses can configure eligible discounts, preview them per invoice line, and keep discount accounting separated for compliance and reporting.
Original PR description
In the Philippines, Senior Citizens (SC) and Persons With Disabilities (PWD) are legally entitled to statutory discounts (typically 20% or 5%) and VAT exemptions on eligible goods and services.…
In the Philippines, Senior Citizens (SC) and Persons With Disabilities (PWD) are legally entitled to statutory discounts (typically 20% or 5%) and VAT exemptions on eligible goods and services. Properly handling these transactions requires removing the standard VAT, recalculating the base price, and tracking the discount separately on the invoice. This commit introduces a "Discount Privileges" feature in a new `l10n_ph_invoice` module, applied directly on customer invoices and credit notes, so that companies not needing it (e.g. Odoo PH itself) don't have to deal with it. Key changes: * Privilege Model: `l10n_ph.discount.privilege` pairs a discount amount with its type (SC/PWD/special), the fiscal position mapping the line taxes to the SC/PWD VAT-exempt tax, the target account for the discount journal items, and the optional product categories it applies to. Names are unique per company and discount amounts are validated between 0 and 100%. * Shared Mixin: `l10n_ph.discount.privilege.line.mixin` stores the privilege and the original price-unit/tax/discount values on any document line and computes the regular and special discount amounts, with model-specific hooks to derive the gross amounts. * Invoice Line: `account.move.line` overrides `_compute_discount_allocation_needed` to route the discount journal items of privileged lines to the privilege account, and provides helpers to adjust the price unit and taxes from the privilege's fiscal position (restoring the original values when the privilege is removed). * Application Wizard: `l10n_ph.discount.privilege.wizard` offers per-line discount previews, scope filtering (all lines / categories / individual products) and apply / remove-all / single-line-remove actions on draft customer invoices and credit notes. * Localization Data (`l10n_ph`): added the "0% EXEMPT FOR SC/PWD USE" tax and the "Discount Privileges" fiscal position mapping the standard 12% VAT to it, renumbered the chart-of-accounts tax sequences for a logical ordering. Default privileges (20% SC, 20% PWD, 5% SC) are created when installing the Philippine chart of accounts with `l10n_ph_invoice` installed. * Configuration: the `l10n_ph` settings now offer a "Discount Privileges" toggle that installs the `l10n_ph_invoice` module directly. * Tests: coverage for the model, wizard flows, fiscal position mappings, and discount computations. Task-6032306 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
Adds a dedicated Bill of Entry process for imported goods in India, helping users record customs duties from vendor bills and related stock receipts. The flow calculates duty charges across currencies, creates the required vendor bill, and automatically adds landed costs so inventory values reflect the true import cost.
Original PR description
**PURPOSE:** - Introduce a Bill of Entry (BOE) flow for imported goods to simplify the recording of import customs duty and ensure that the duty amount is included in the inventory cost through landed costs. **SPECIFICATION:** - Add a Bill of Entry creation flow from the Vendor Bill/Bills. - Validate the selected Vendor Bills before opening the BOE wizard. - Allow users to select the corresponding stock receipts and automatically populate receipt lines. - Allow users to compute charges from different currencies that can have different rates. - Generate a BOE Vendor Bill containing the customs duty charges (Total Amount - Total Assesable Value) so we get right journal entries. - Automatically create the corresponding Landed Cost record. task-3946649
AI agents can now be set up in a dedicated chat-based workspace, update their own instructions and skills from conversation, and create or manage scheduled automations. This makes agents more practical for business users by reducing setup friction and allowing routine follow-ups, summaries, and other workflows to run automatically while remaining inspectable in Discuss.