| Availability |
Odoo Online
Odoo.sh
On Premise
|
| Odoo Apps Dependencies |
•
Inventory (stock)
• Invoicing (account) • Manufacturing (mrp) • Purchase (purchase) • Sales (sale_management) • eCommerce (website_sale) • Discuss (mail) • Website (website) |
| Lines of code | 1193 |
| Technical Name |
sf_website_sale_custom_dimensions |
| License | LGPL-3 |
| Website | https://squadfocus.com |
| Versions | 18.0 19.0 |
Website Sale Custom Dimensions â Let Customers Enter LÃW or LÃWÃH on Your Product Page
"Sell custom-sized products like glass panels, foam blocks, fabric rolls, and tiles â directly from your Odoo website. Customers enter Length à Width (or Length à Width à Height), and the module automatically calculates area or volume, applies minimum billable quantity, shows a live price preview, and flows dimensions through sales, invoicing, purchasing, and inventory."
FEATURES
2D & 3D Dimension Modes: Configure each product as Area (L Ã W) or Volume (L Ã W Ã H). The website product page automatically shows the correct number of input fields based on the selected dimension type.
Live Price Preview: As customers enter dimensions, the product page instantly calculates area/volume and displays the estimated total price â no page reload needed. The main price display updates in real time.
Min/Max Dimension Validation: Set minimum and maximum limits for Length, Width, and Height on each product. Invalid entries are highlighted with red borders and error messages, and the Add to Cart button is blocked until all values are valid.
Minimum Billable Quantity: Protect your margins on small orders by setting a minimum area/volume. If the calculated area is below the minimum, the system automatically bills for the minimum quantity instead.
Separate Cart Lines per Dimension: If a customer orders the same product with different dimensions (e.g., 3Ã2 and 5Ã4), each combination is treated as a separate cart line â no merging.
Dimension Columns Everywhere: Length, Width, and Height columns are added to Sale Orders, Invoices, Purchase Orders, Stock Moves, Stock Quants, and Delivery Orders â giving full traceability across the entire workflow.
PDF Reports Enhanced: All printed reports â Quotation, Sale Order, Invoice, Purchase Order, RFQ, and Delivery Slip â display dimension columns alongside the standard product description.
Portal Visibility: Customers see dimension columns on the Sale Order portal. Vendors see them on the Purchase Order portal. Full transparency for all parties.
Flexible Pricing Mode: Choose between "Based on Dimensions" (price = base price à area/volume) or "Based on Quantity Only" from Settings. Switch anytime without code changes.
Custom UoM Display: Automatically shows m² for 2D products and m³ for 3D products in the cart, order lines, and badges. Fully configurable per product.
HOW IT WORKS
Step 1: Enable "Allow Custom Sizing" on your product and configure dimension type (2D or 3D), min/max limits, and minimum billable quantity.
Step 2: Publish the product on your website. Customers will see dimension input fields (Length, Width, and optionally Height) instead of the standard quantity selector.
Step 3: As the customer enters dimensions, the live price preview calculates area/volume à unit price and updates instantly. Invalid values are highlighted in red.
Step 4: On "Add to Cart", dimensions are validated, the calculated area/volume becomes the order quantity, and the cart shows a dimension annotation (e.g., "Size: 3.0 à 2.0 = 6.00 m²").
Step 5: Dimensions automatically flow to the Sale Order, Invoice, Purchase Order, Stock Picking, and all PDF reports â no manual entry needed anywhere.
Go To: Sales â Products â Products â [Product] â Custom Sizing Tab â Enable custom sizing with Area (L Ã W) mode, set min/max limits and minimum billable quantity.
Volume (L Ã W Ã H) mode â When 3D is selected, Height Limits section appears automatically. Min Billable Qty ensures small orders meet your minimum charge.
Website Product Page â Customers enter Length and Width. Live preview shows calculated area and estimated total price. Standard quantity selector is hidden automatically.
3D Product Page â Height input appears automatically for Volume products. All three dimensions contribute to the live price calculation (L Ã W Ã H Ã Unit Price).
Shopping Cart â Each custom-sized item shows a dimension annotation (e.g., "Size: 3.0 à 2.0 = 6.00 m²") and a static quantity badge. Standard ± quantity buttons are hidden for dimension-based items.
Sale Order â Length, Width, and Height columns appear on order lines when any line has custom dimensions. Quantity is auto-calculated from area/volume.
Printed Quotation/Order PDF â Dimension columns (Length, Width, Height) appear after the product description. All five report types (SO, Invoice, PO, RFQ, Delivery Slip) are enhanced.
Real-Time Validation â Entering a value outside the allowed range highlights the field in red with an error message. Add to Cart is blocked until all dimensions are valid.
Go To: Settings â Sales â Pricing Mode â Choose "Based on Dimensions" or "Based on Quantity Only". Configure UoM precision and product_uom_qty override.
USE CASES
Glass & Mirror Shops: Customers specify exact glass panel dimensions. Price is calculated per square meter automatically. Minimum billable area protects margins on small cuts.
Fabric & Textile Stores: Sell fabric by custom width and length. Each cut becomes a separate order line with exact dimensions tracked through delivery.
Foam & Insulation Manufacturers: Use 3D mode (L Ã W Ã H) to calculate volume-based pricing for custom foam blocks, insulation panels, or packaging materials.
Tile & Flooring Distributors: Customers enter room dimensions and the system calculates the required area, ensuring the order meets minimum quantity thresholds.
Metal Sheet Suppliers: Sell steel, aluminum, or copper sheets by custom dimensions with full traceability from order to delivery slip.
BENEFITS
End-to-End Dimension Tracking: Dimensions flow from Website â Sale Order â Invoice â Purchase Order â Stock Picking â Delivery Slip â no manual re-entry anywhere.
Live Price Preview: Customers see the calculated price update instantly as they type dimensions â reducing cart abandonment and support queries.
Margin Protection: Minimum billable quantity ensures you never sell below cost on small custom orders.
All Reports Enhanced: Five PDF report types (SO, Invoice, PO, RFQ, Delivery) plus two portal views show dimension columns â professional documentation for every stakeholder.
Flexible Pricing Modes: Switch between dimension-based and quantity-based pricing from Settings without any code changes.
Smart Cart Behavior: Same product with different dimensions creates separate cart lines. Standard quantity controls are hidden for dimension-based items, preventing accidental changes.
CONFIGURATION
Step 1: Install the module from the Apps menu.
Step 2: Go to Settings â Sales and configure the Pricing Mode (Dimension-based or Quantity-based).
Step 3: Open any product â "Custom Sizing" tab â Enable "Allow Custom Sizing".
Step 4: Select Dimension Type â Area (L Ã W) or Volume (L Ã W Ã H).
Step 5: Set Min/Max Length, Width, Height limits and the Min Billable Qty.
Step 6: Publish the product on your website. Customers will immediately see dimension inputs on the product page.
FREQUENTLY ASKED QUESTIONS
Q: What happens if a customer orders the same product with different dimensions?
A: Each unique dimension combination (L Ã W Ã H) creates a separate order line. The system matches exact dimensions â so 3Ã2 and 5Ã4 of the same product will be two distinct lines.
Q: How does the minimum billable quantity work?
A: If a customer enters dimensions resulting in an area of 0.3 m² but your Min Billable Qty is 1.0, the system charges for 1.0 m² â protecting your margin on small cuts.
Q: Can I use this for both 2D and 3D products in the same store?
A: Yes. Each product is configured independently. A glass panel can use 2D (Area) while a foam block uses 3D (Volume) â both work simultaneously on the same website.
Q: Do dimensions appear on PDF reports sent to customers?
A: Yes. Length, Width, and Height columns appear on Quotation, Sale Order, Invoice, Purchase Order, RFQ, and Delivery Slip PDF reports automatically.
Q: Can I switch between dimension-based and quantity-based pricing?
A: Yes. Go to Settings â Sales â Pricing Mode and switch between the two modes at any time. No code changes required.
Q: What Odoo modules does this depend on?
A: website_sale, sale_management, account, purchase, stock, mrp, and uom â all standard Odoo modules.
Please log in to comment on this module