This documentation always refers to the latest released version.
Live Demo: Try this and other plugins live — no installation, no risk: demo.markus-michalski.net
With this plugin you define the price of a product variant as a percentage of the parent product's price, as a fixed surcharge, or both. It is controlled through custom fields on the product. The price is calculated at runtime in the storefront and cart, prices in the admin stay unchanged.
Typical cases are license tiers (1 user = 100%, 5 users = 200%), size variants, or options with a surcharge such as a zipper for +3 EUR.
Formula: Variant price = (parent product price + fixed surcharge) x (percentage / 100). The result is rounded and never below 0.00.
| Page | Content |
|---|---|
| Installation and Operation | Requirements, installation, update, uninstall |
| Configuration | Rounding settings, custom fields, inheritance, practical examples |
| Storefront and Price Calculation | Price source, rule prices, gross/net, currency, cart |
| Troubleshooting and FAQ | Common problems, limitations, frequently asked questions |
| Technical Details | Flow, plugin structure, services, logging |
| Feature | Description |
|---|---|
| Percentage calculation | Variant price as a percentage of the parent product price (0 to 1000%) |
| Fixed surcharge | Positive or negative amount (-100000 to 100000), added before the percentage is applied |
| Combination | Percentage and surcharge can be used together |
| Per-variant control | Activation and values via custom fields on the product |
| Inheritance | If the activation is not set on the variant, the parent product's values apply |
| Rule prices | The parent product's advanced prices are taken into account |
| Cart | Same calculation in cart and checkout |
| Rounding | Decimal places and rounding mode configurable per sales channel |
| Requirement | Version |
|---|---|
| Shopware | shopware/core ~6.6.0 or ~6.7.0 |
| PHP | >= 8.2 |
Commercial license: one license covers one Shopware installation, including all sales channels as well as development and staging environments. The full terms are in the plugin's LICENSE file.
For questions and problems you can reach me at support@markus-michalski.net.