Upsell & Cross-Sell¶
Rule-based upsell & cross-sell system for Shopware 6. Create rules in the admin such as "If product X is in the cart → recommend product Y with a 10 % discount" – no coding required. The discount shown is deducted automatically in the cart as a separate position.
The free core is ready to use right away. Optional plans (In-App Purchase) unlock discounts, the cross-sell box in the cart and further conditions.
Highlights
- 🎯 Rule-based recommendations – conditions and actions via dropdowns, no code
- 🛒 Upsell on the product page, cross-sell in the cart and in the mini cart
- 🏷️ Discount per recommendation (in % or as an amount) – really deducted in the cart
- 🧩 "Upsell & Cross-Sell" CMS block for any Shopping Experiences layout
- ⏱️ Priority and validity period per rule
- ⚙️ Switchable per sales channel, every display position individually

💳 Free core & optional plans¶
The plugin can be used free of charge. Additional features can optionally be booked as an In-App Purchase directly in Shopware. Business includes all Starter features.
| Feature | Free | Starter | Business |
|---|---|---|---|
| Active rules | 3 | 10 | unlimited |
| "Product in context" condition | ✅ | ✅ | ✅ |
| "Recommend product" action | ✅ | ✅ | ✅ |
| Upsell box on the product page | ✅ | ✅ | ✅ |
| CMS block in product page layouts | ✅ | ✅ | ✅ |
| Priority, number of recommendations, hide products already in the cart | ✅ | ✅ | ✅ |
| Discount actions (% and amount), deducted in the cart | – | ✅ | ✅ |
| Cross-sell box in the cart and in the mini cart | – | ✅ | ✅ |
| CMS block in all layouts (cross-sell) | – | ✅ | ✅ |
| Validity period (from / to) per rule | – | ✅ | ✅ |
| Category, cart total and customer group conditions | – | – | ✅ |
| "Recommend best sellers of a category" action | – | – | ✅ |
Nothing is hidden
Features of a higher plan stay visible in the rule editor – with a note and an "Unlock now" button. Shopware shows the current prices in the In-App Purchase dialog. If a plan ends, all rules are kept: only the rules with the highest priority within the limit apply, and discounts and features of higher plans are no longer applied.
🔧 Installation¶
- Requirement: Shopware 6.7 – no other plugins are required
- Install via the Shopware Store or as a ZIP under Extensions > My extensions
- Install and activate the plugin
- You will find the rules under Marketing > Upsell & Cross-Sell
⚙️ Configuration¶
Open Extensions > My extensions > Upsell & Cross-Sell > Configure. All settings can be overridden per sales channel.
| Setting | Description | Default |
|---|---|---|
| Enable Upsell & Cross-Sell in this sales channel | Main switch: off = no recommendations and no discounts in this sales channel | on |
| Show the upsell box automatically on the product detail page | Box below the product information; off = only via the CMS block | on |
| Show the cross-sell box on the cart page | Starter | on |
| Show the cross-sell box in the mini cart | Starter | on |
| Maximum number of recommendations per box | 1–5 products | 3 |
| Do not recommend products already in the cart | Products in the cart are not recommended again | on |

🧩 Managing rules¶
Marketing > Upsell & Cross-Sell lists all rules with type, priority and status. Use Add rule to create a new one.

General settings¶
| Field | Description |
|---|---|
| Name | Internal name of the rule |
| Type | Upsell (product page) or Cross-sell (cart and mini cart) |
| Priority | If several rules recommend the same product, the highest priority wins; it also sets the order in the box |
| Active | Switch the rule on or off; only active rules count towards the plan limit |
| Valid from / to | Optional period, e.g. for a promotion week (Starter) |
Conditions & actions¶
Each line consists of IF (condition) and THEN (action). The rule applies only if all conditions match (AND); the actions of all lines are then executed. For OR logic, create several rules.

Conditions
| Condition | Matches when … | Plan |
|---|---|---|
| Product in context | the product is being viewed or is in the cart | Free |
| Category in context | a product of the category or a sub-category is being viewed or is in the cart | Business |
| Cart total is at least | the goods value of the cart reaches the amount | Business |
| Customer group | the customer belongs to the selected customer group | Business |
Actions
| Action | Effect | Plan |
|---|---|---|
| Recommend product | The product is recommended without a discount | Free |
| Recommend product + discount (%) | Recommendation with a "-10%" badge; the discount is deducted in the cart | Starter |
| Recommend product + discount (amount) | Recommendation with a "Save €5.00" badge; the amount applies per unit | Starter |
| Recommend best sellers of a category | The best-selling products of the category (incl. sub-categories) | Business |
🛒 Display in the storefront¶
Upsell on the product page – upsell rules whose conditions match the viewed product appear below the product information in the "You might also like" box, with a discount badge.

Cross-sell in the cart (Starter) – cross-sell rules that match the cart appear below the line items of the cart page and in the mini cart as "Frequently bought together". Customers add the products with one click.

When is the discount deducted?¶
The discount appears as a separate position (e.g. "Discount: Milano Espresso Beans 1 kg (-10%)") and is recalculated whenever the cart changes:
- Cross-sell: as soon as the recommended product is in the cart and the rule matches the cart.
- Upsell: when the product was added directly from the upsell box (products without variants and graduated prices) or the trigger product is in the cart as well.
If several rules recommend the same product with a discount, the discount of the rule with the highest priority applies. An amount discount is entered in the default currency, converted into the customer's currency and never exceeds the line price. Orders keep their discounts even if the order is recalculated in the admin later.
Placeable anywhere via Shopping Experiences
Under Content > Shopping Experiences the block "Upsell & Cross-Sell" is available in the Commerce category. In the element you set your own headline and the recommendations: Automatic (upsell on product pages, cross-sell elsewhere), Upsell for the product of the page or Cross-sell for the current cart (Starter). In the free plan the block is shown in product page layouts.
🖥️ Example¶
Goal: customers who put the "Barista One" espresso machine in the cart should see matching beans with a 10 % discount.
- Marketing > Upsell & Cross-Sell > Add rule
- Name: "Accessories for the Barista One", Type: Cross-sell, Priority: 80, Active: on
- Add condition:
- IF Product in context → Barista One
- THEN Recommend product + discount (%) → Espresso beans, Discount (%): 10
- Optionally add further lines with the same condition for a milk frother and cups.
- Save – the recommendations appear in the cart and in the mini cart; when the customer adds the beans, 10 % is deducted.
🔐 Permissions (ACL)¶
Under Settings > Users & permissions > Roles you will find the entry "Upsell & Cross-Sell" with the levels:
| Level | Allows |
|---|---|
| Read | View rules |
| Edit | Change rules, conditions and actions |
| Create | Create new rules |
| Delete | Delete rules |
⚡ Performance & data¶
Rules are evaluated on the server and cached. When you change a rule, the rule cache and the affected pages in the HTTP cache are updated automatically. No data is sent to external services. Uninstalling without "keep data" removes all rules.
❓ FAQ¶
Do I need coding skills?
No. All rules are created entirely in the admin under Marketing > Upsell & Cross-Sell via dropdowns.
Is the discount really deducted in the cart?
Yes (Starter and up). The discount appears in the cart as a separate position and is kept in the order.
What is the difference between upsell and cross-sell?
Upsell recommends an alternative or addition to the viewed product on the product page. Cross-sell recommends products matching the whole cart in the cart and in the mini cart.
What happens if several rules recommend the same product?
The product is shown only once. The rule with the highest priority applies – for the discount as well.
What happens when my plan ends?
All rules are kept. Only the rules with the highest priority within the limit (3 or 10) still apply; discounts and Business conditions are no longer applied.
Which Shopware version is required?
Shopware 6.7. No other plugins are required.
📬 Support¶
For questions, suggestions for improvement or individual adjustments, contact us by e-mail at support@cnk-plugins.de.