| Availability |
Odoo Online
Odoo.sh
On Premise
|
| Odoo Apps Dependencies |
•
eCommerce (website_sale)
• Discuss (mail) • Invoicing (account) • Website (website) |
| Lines of code | 866 |
| Technical Name |
product_uom_control |
| License | LGPL-3 |
| Website | https://electron.com.sa |
| Availability |
Odoo Online
Odoo.sh
On Premise
|
| Odoo Apps Dependencies |
•
eCommerce (website_sale)
• Discuss (mail) • Invoicing (account) • Website (website) |
| Lines of code | 866 |
| Technical Name |
product_uom_control |
| License | LGPL-3 |
| Website | https://electron.com.sa |
📏 Product UoM Control
Advanced Units of Measure Management for Website & Sales
Overview
Take complete control over your product Units of Measure (UoM) with this powerful Odoo 18 module. Define per-product allowed units, set fixed prices for each UoM, and provide customers with flexible unit selection on your website with automatic price updates. Perfect for businesses selling products in multiple units with different pricing structures.
Key Features
Per-Product UoM Control
Define exactly which units of measure are allowed for each product, ensuring customers only see relevant options.
Website Integration
Dynamic UoM selector on product pages with real-time price updates as customers change units.
Fixed UoM Pricing
Set specific prices for each unit of measure, completely independent of standard pricelist rules.
Multi-Currency Support
Define prices in multiple currencies with automatic conversion and smart fallback mechanisms.
Sales Order Integration
Seamless UoM selection and pricing in sales orders with automatic price calculation.
Smart Price Fallback
Automatic currency conversion when exact currency match is not found, reducing data entry.
Category Validation
Ensures all allowed UoMs belong to the same category as the product's base UoM.
Real-time Updates
JavaScript-powered instant price updates without page reloads for optimal user experience.
Setup Wizard
Quick configuration wizard for setting up allowed UoMs on multiple products at once.
Price Management View
Dedicated interface for managing all UoM prices per product in one place.
Domain Restrictions
Automatic filtering shows only compatible UoMs based on product category.
Clean Interface
Seamlessly integrated into Odoo's native interface for familiar user experience.
Perfect Use Cases
Fabric & Textiles
Sell fabrics by meter, yard, or roll with different prices for each unit. Perfect for wholesale and retail textile businesses.
Chemical Suppliers
Offer chemicals in grams, kilograms, or tons with appropriate pricing per unit and safety compliance.
Beverage Distribution
Sell drinks by bottle, case, or pallet with volume discounts automatically reflected in unit pricing.
Hardware & Tools
Sell cables by meter, spool, or drum with bulk pricing for contractors and DIY customers.
Food & Catering
Offer food items by weight, volume, or quantity with appropriate pricing for retail and wholesale.
Manufacturing
Manage raw materials sold in various units with accurate costing and pricing per unit.
Why Choose Product UoM Control?
- Increase Sales: Offer flexible purchasing options that meet customer needs
- Reduce Confusion: Clear unit selection with transparent pricing builds trust
- Improve Accuracy: Eliminate pricing errors with fixed per-unit prices
- Save Time: Automated price calculation reduces manual work
- Enhance Experience: Smooth website integration improves customer satisfaction
- Support Growth: Multi-currency support enables international expansion
- Simplify Operations: One module handles both website and sales operations
- Maintain Control: Strict validation prevents configuration errors
Installation
Requirements
| Component | Requirement |
|---|---|
| Odoo Version | >= 18.0 (Community & Enterprise) |
| Python Version | >= 3.10 |
| Dependencies | product, uom, sale, website_sale |
Installation Steps
-
Download Module
Download from Odoo Apps Store or extract to your addons directory. -
Update Apps List
Navigate to Apps → Update Apps List to refresh the module catalog. -
Install Module
Search for "Product UoM Control" and click Install. -
Configure Products
Set allowed UoMs and prices for your products. Done!
Quick Start Guide
1. Configure Allowed UoMs
Open any product → General Information tab → Allowed UoMs (Website/Sales) field → Select units
2. Set Fixed Prices
Method A: From product form → Click "UoM Prices" smart button → Add price entries
Method B: Sales → Configuration → UoM Prices → Create new entries
| Field | Description | Example |
|---|---|---|
| Product | Select the product | Premium Cotton Fabric |
| Unit of Measure | Choose the UoM | Meter |
| Currency | Select currency | USD |
| Price | Enter fixed price | 45.00 |
3. Test on Website
Visit your product page → You'll see a UoM selector → Change units → Price updates automatically
4. Create Sales Orders
Create sales order → Add product → Select UoM → Price automatically adjusts → Confirm order
Price Resolution Logic
The module intelligently determines prices using a priority-based system:
Look for: Product + UoM + Currency
If found: Use this fixed price
Look for: Product + UoM + Company Currency
If found: Convert to requested currency
Look for: Product + UoM + Any Currency
If found: Convert to requested currency
If no fixed UoM price exists: Use standard Odoo pricelist logic
Technical Specifications
Module Information
| Property | Value |
|---|---|
| Technical Name | product_uom_control |
| Version | 18.0.1.6.0 |
| Category | Sales/Website |
| License | LGPL-3 |
| Author | Electron |
| Application | Yes |
Custom Models
product.uom.price- Stores fixed prices for UoM/currency combinationsproduct.template.uom.price- Helper model for multi-company environments
Extended Models
product.template- Adds allowed UoMs and price retrieval methodssale.order&sale.order.line- Custom pricing logic
JavaScript Assets
static/src/js/website_uom_plain.js - Website UoM selector with AJAX price updates
Security
- User: Read access to UoM prices
- Sales Manager: Full CRUD access to UoM prices
📸 Screenshots
See Product UoM Control in action with these screenshots showcasing all major features.
⚙️ Product Configuration
Configure which units of measure are allowed for each product
Easy-to-use multi-select for choosing allowed units
Products can have multiple units from the same category
💰 Price Management
Centralized interface for managing all UoM prices
Set fixed prices for each unit of measure and currency
Define prices in multiple currencies with automatic conversion
🌐 Website Integration
Customers see a dropdown to choose their preferred unit
Prices update instantly when customers change units
Selected UoM and price are preserved in shopping cart
📋 Sales Orders
Dropdown shows only allowed UoMs for each product
Prices adjust automatically based on selected UoM
Mix different units in the same sales order
🧙 Bulk Configuration
Set allowed UoMs for multiple products at once
Quick and efficient setup for large product catalogs
Ready to Master Your UoM Management?
Transform your product pricing with flexible, accurate, per-unit control
Get Started Now View Documentation
Please log in to comment on this module