EU Base Price (Grundpreis)
From €0.00
To €350.00
In stock
Displays per-unit reference prices (Grundpreis) next to every product price — on product pages, category listings, search results, and the cart. Required by law in Germany (PAngV §4) and across the EU (Price Indication Directive 98/6/EC / Omnibus 2019/2161). Configurable templates, 9 SI units, and REST API included.
EU Base Price (Grundpreis) for Magento 2
If you sell physical goods in Germany or the EU, displaying a per-unit reference price is not optional — it is legally required. This module adds Grundpreis support across every storefront surface without patching core Magento code.
How the Formula Works
The reference price is calculated as:
base_price = (selling_price ÷ product_amount) × (reference_amount × conversion_rate)
Example: A 300 g shampoo priced at €4.99 → Base price: €16.63 / 1 kg
Where It Displays
- Product detail pages
- Category and search result listings
- Shopping cart line items
- Configurable, bundle, and grouped product variants
Unit Management
- 9 pre-installed SI units — gram, milligram, kilogram, millilitre, centilitre, litre, centimetre, metre, piece
- Create custom units in Admin → Catalog → Base Price Units
- Each unit defines: name, symbol, and conversion rate to a reference unit
Configurable Display Templates
Customise the label format using placeholders:
{{unit_price}}— the calculated reference price{{reference_amount}}— the reference quantity (typically 1 or 100){{reference_unit}}— the reference unit symbol (e.g. kg){{product_amount}}— the actual product quantity{{measure_unit}}— the product's unit symbol (e.g. g){{product_price}}— the selling price for context
Example template: ({{unit_price}} / {{reference_amount}} {{reference_unit}}) → displays as (€16.63 / 1 kg)
Per-Product Configuration
- Enable or disable base price display per product
- Override reference amount per product (e.g. show per 100 ml instead of 1 litre)
- EAV attributes loaded in product listings — no extra queries on category pages
REST API
- Unit CRUD — create, read, update, delete custom units
- Product base price CRUD — set/read base price configuration per SKU
- Anonymous calculator endpoint — compute base prices without authentication
Installation
composer require magendoo/module-base-price
bin/magento setup:upgrade && bin/magento setup:di:compile
bin/magento cache:flush
Requirements
- Magento 2.4.x
- PHP 8.1 or higher
- 45 formula unit tests + 22 product display integration tests
License: MIT | View on GitHub