# Product Get Price Helper ## Summary Provides a helper utility function to compute product prices with taxes, discounts, and unit of measure conversions. ## Features - **Price Calculation Utility**: Helper method `get_product_price_for_pricelist` - **Tax Handling**: Automatically computes prices with or without taxes - **Discount Support**: Handles single and multiple discounts - **UoM Conversion**: Converts prices between different units of measure - **Reusable**: Can be used by other modules for price calculations ## Technical Details ### Utility Function Located in `utils.py`: ```python def get_product_price_for_pricelist( product, qty, pricelist, partner=None, uom=None, date=None, include_tax=False ) ``` **Parameters**: - `product`: Product record (product.product or product.template) - `qty`: Quantity - `pricelist`: Pricelist to use for calculation - `partner`: Partner record (optional) - `uom`: Unit of measure (optional, uses product default if not provided) - `date`: Date for pricelist rules (optional, uses today if not provided) - `include_tax`: Boolean, whether to include taxes in the result **Returns**: Decimal price ### How It Works 1. Gets base price from pricelist 2. Applies any applicable discounts 3. Converts price if different UoM is specified 4. Adds taxes if `include_tax=True` ## Dependencies - `account` (Odoo core) - `product` (Odoo core) ## Installation ```bash docker-compose exec odoo odoo -d odoo -u product_get_price_helper --stop-after-init ``` ## Usage ### Example: Calculate Price with Tax ```python from odoo.addons.product_get_price_helper.utils import get_product_price_for_pricelist price = get_product_price_for_pricelist( product=product_record, qty=10, pricelist=pricelist_record, partner=partner_record, include_tax=True ) ``` ### Example: Calculate Price with Different UoM ```python price = get_product_price_for_pricelist( product=product_record, qty=1, pricelist=pricelist_record, uom=kg_uom, # Different from product's default UoM include_tax=False ) ``` ## OCA Source - **Repository**: [product-attribute](https://github.com/OCA/product-attribute) - **Original Author**: ACSONE SA/NV - **License**: AGPL-3 ## Modifications for Kidekoop None - Used as-is from OCA. ## Used By This helper is used by other modules in the project: - `product_sale_price_from_pricelist` - For automatic price calculations - `product_price_category` - For category-based pricing ## Demo Data Includes demo data with: - Sample accounts - Sample pricelists Located in `demo/` directory. ## Translations - ✅ Spanish (es) - ✅ Euskera (eu) Located in `i18n/` directory. --- **Version**: 18.0.1.1.0 **License**: AGPL-3