Skip to Content

PMIS Pricelist To Variant Sale Price

Beta License: LGPL-3 PMISuite/testing Version: 18.0

Update product variant sale prices from pricelist rules and keep the template list price aligned with the lowest variant price.

Features

  • Applies pricelist prices only after wizard confirmation or an enabled scheduled update.

  • Updates each affected template list price to the minimum of its variant fixed prices.

  • Reviews manual changes in a wizard with old and new prices and per-variant selection before writing prices.

  • Uses Odoo's pricelist computation, including fixed, percentage, and formula rules, at quantity one.

  • Preserves existing variant prices when editing templates, attributes, and combination exclusions or generating additional variants.

  • Keeps deliberate individual variant-price edits available, including zero prices.

Configuration

The module depends on product_list_price_from_pricelist and product_variant_sale_price. Configure the company base pricelist for updates from Settings and scheduled recomputation. Define rules for products, variants, categories, or all products. Users need access to the pricelist and permission to write product prices.

Usage

  1. Create or edit the pricelist rules. These edits do not automatically write variant prices: this addon suppresses the dependency's automatic update hook.

  2. Open the pricelist and click Update Product Prices, or use the base pricelist update button in Settings.

  3. In Review Price Changes, compare old and new prices. Clear Update on variants to leave unchanged, then click Update Prices. Cancel closes the wizard without applying changes. If no changes are needed, a notification appears instead.

  4. Selected variant fix_price values are written. Each changed template's list_price becomes the minimum fixed price across all its variants, including variants excluded from the update.

Products without a usable source price appear as warning rows. Their proposed price stays equal to the current price and Update is disabled. Check supplier prices, minimum quantities, validity dates, supplier filters, and any base pricelist. The same protection applies to scheduled updates, including formulas that would otherwise turn a missing source into a surcharge-only price. Source prices are checked again when applying a review.

Manual updates on a pricelist use that selected pricelist without requiring it to be the company base pricelist. Manual category selection includes descendants.

Existing template sale prices are derived from the lowest active variant price. Set an initial price when creating a product; after creation, edit individual variant prices or use the review wizard. Resubmitting a template price does not overwrite variant prices. Additional variants start at the current template price without changing their existing siblings. Changing a reviewed variant's price requires opening a new review before applying that price.

An explicit fixed-price rule may set a literal zero sale price. Calculated zero or negative prices are warning-only and keep the current price. Installation and upgrade preserve legacy effective prices by replacing old zero-to-template fallbacks with their previous template price. Existing nonzero fixed prices and template prices are preserved.

Scheduled Updates

The dependency supplies the daily Product sale price: Update price from pricelist scheduled action, disabled by default. If enabled, it writes prices directly without the review wizard and uses the dependency's company/base-pricelist applicability rules. Its category selection follows the dependency's exact-category matching, unlike the manual wizard's descendant matching.

When this scheduled action is disabled, its update method also does nothing if invoked manually. Saving pricelist rules and calling the dependency's old direct updater never apply prices. No context flag enables unattended price updates.

Bug Tracker

Bugs are tracked on PMISuite Repository Issues. In case of trouble, please check there if your issue has already been reported. If you spotted it first, help us smashing it by providing a detailed and welcomed feedback.

Credits

Authors

Contributors

  • Matjaž Mozetič

  • Devid Miklus

Maintainers

LUXIM MATMOZ

Current maintainer:

sysadminmatmoz

Luxim is an independent R&D and deployment company focused on solving complex problems in the Odoo ecosystem.

Odoo Community Association

Luxim is an active member of OCA (Odoo Community Association).