> For the complete documentation index, see [llms.txt](https://docs.premsoft.de/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.premsoft.de/en/plugins/cross-selling-for-cart-and-checkout/dashboard.md).

# Dashboard

The plugin adds its own entry **Cross-selling Checkout** to Shopware's main menu. From there you maintain every rule that controls cross-selling products and discounts.

## Rule list

The overview shows every existing cross-selling rule. Each row holds:

| Column           | Meaning                                                                         |
| ---------------- | ------------------------------------------------------------------------------- |
| **Name**         | The rule name you gave.                                                         |
| **Status**       | `Active`, `Inactive` or `Expired` (when the "valid until" date is in the past). |
| **Valid from**   | Start date from which the rule applies. Empty = active right away.              |
| **Valid until**  | End date until which the rule applies. Empty = no end.                          |
| **Discount (%)** | Percentage discount applied to the cross-selling products.                      |

Use **Create** to add a new rule, or the row actions to edit or delete existing ones.

## Create or edit a rule

{% tabs %}
{% tab title="Base" %}

| Field                               | Meaning                                                                                                             |
| ----------------------------------- | ------------------------------------------------------------------------------------------------------------------- |
| **Name**                            | Internal display name in lists and overviews. Translatable.                                                         |
| **Active**                          | Toggle: active/inactive. Inactive rules are ignored in the storefront.                                              |
| **Valid from / Valid until**        | Optional time window. Outside the window the rule does not fire — perfect to schedule campaigns in advance.         |
| **Discount**                        | Percentage between 0 and 100. With `0` no discount is applied — the rule then just serves as a recommendation rule. |
| **Name of discount in basket**      | Label for the discount line in the basket. Translatable. Example: "Bundle discount 10 %".                           |
| **Show badge on discount products** | When on, every product matched by the rule shows a discount badge in the storefront.                                |
| {% endtab %}                        |                                                                                                                     |

{% tab title="Badge" %}
Controls the look of the discount badge. Leave colors empty to use the defaults from the plugin configuration.

| Field                      | Meaning                                                                                       |
| -------------------------- | --------------------------------------------------------------------------------------------- |
| **Badge text**             | Extra text next to the discount percentage. Translatable. Example: `Bundle deal`, `Top deal`. |
| **Badge text color**       | Color of the text. Hex code such as `#ffffff`.                                                |
| **Badge background color** | Background color. Hex code such as `#d9534f`.                                                 |

> More details and practical examples are on the [Discount badges](/en/plugins/cross-selling-for-cart-and-checkout/discount-badges.md) page.
> {% endtab %}

{% tab title="Cross-Selling settings" %}
Two types are available:

* **Automatically by assigned Cross Selling from product in basket** The plugin looks at the products that already have a **standard Shopware cross-selling** assignment on your products. If such a product is in the basket, its cross-sellings show up in the slider and can be discounted automatically.

  *Ideal when you already maintain cross-sellings on your products and don't want to duplicate the list.*
* **Defined by products / Dynamic product group** You decide yourself which products act as **trigger** and which products are offered as **cross-selling**. Both lists can be filled manually or via a **dynamic product group**.

  *Ideal for campaigns such as "Buyers of product A get 10 % off everything from category B".*
  {% endtab %}

{% tab title="Trigger products" %}
Only visible when the type is set to **Defined by products / Dynamic product group**.

| Field                     | Meaning                                                                                          |
| ------------------------- | ------------------------------------------------------------------------------------------------ |
| **Products**              | Manual list of trigger products. As soon as **one** of them is in the basket the rule is active. |
| **Dynamic product group** | Alternatively a product group. When its filter matches any basket item the rule is active.       |

You can either use individual products, a group, or combine both. The rule fires as soon as **any** match exists.
{% endtab %}

{% tab title="Cross-Selling products" %}

| Field                     | Meaning                                                                                                                                                            |
| ------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| **Products**              | Manually picked products offered as cross-selling. You can set the **position** per product to force a fixed order.                                                |
| **Dynamic product group** | Alternatively a product group. Sorting and limit are controlled globally in the [Configuration](/en/plugins/cross-selling-for-cart-and-checkout/configuration.md). |

Products already in the basket are hidden from the slider automatically — the plugin prevents duplicates by itself. The trigger product itself is also never offered as its own cross-selling.
{% endtab %}
{% endtabs %}

## Multilingual fields

The following fields are translatable:

* **Name** of the rule
* **Name of the discount in basket**
* **Badge text**

Switch the language in the top-right language selector and maintain the translations as usual in Shopware. Anything left untranslated automatically falls back to the system language.

## What happens on save?

Once you save, the rule kicks in behind the scenes via Shopware's cart processor:

* On **every basket request** the storefront checks which cross-selling products to show.
* On **adding a cross-selling product** the discount is applied automatically — including VAT, tiered pricing and reference prices.
* On product detail, listing and search pages the reduced price shows automatically when the product is matched by an active rule.

More about every display location is on [Storefront integration](/en/plugins/cross-selling-for-cart-and-checkout/storefront-integration.md).


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.premsoft.de/en/plugins/cross-selling-for-cart-and-checkout/dashboard.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
