# 3. Konfiguration

Dieses Plugin hat keine systemweiten Einstellungen. Die Prozent-Funktion steht nach der Installation direkt in jedem Produkt unter **Erweiterte Preise** zur Verfügung.

## Prozentuale Preise definieren

### Schritt für Schritt

1. Öffnen Sie ein Produkt unter **Kataloge → Produkte**
2. Wechseln Sie zum Tab **Erweiterte Preise**
3. Klicken Sie auf **Preis hinzufügen** oder bearbeiten Sie einen bestehenden Preis
4. Geben Sie in der Spalte **Prozent** den gewünschten Wert ein:
   * Negativer Wert → Rabatt (z. B. `-10` für 10 % Rabatt)
   * Positiver Wert → Aufschlag (z. B. `5` für 5 % Aufschlag)
5. Der absolute Preis in der Spalte **Preis** wird automatisch berechnet
6. Klicken Sie auf **Speichern**

![Preiszeile mit ausgefülltem Prozent-Feld und berechnetem Preis](https://2916094232-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LtiS3-dzuXFp_IH7yRw-887967055%2Fuploads%2Fgit-blob-eefad754ae0929e919b9e34fa8af873f69f1d328%2F1.png?alt=media)

### Hinweise zur Eingabe

* Prozentangaben werden als einfache Zahlen eingegeben, kein %-Zeichen erforderlich
* Positive Werte erhöhen den Preis, negative Werte senken ihn
* Bestehende erweiterte Preise ohne Prozentangabe bleiben unverändert
* Das Plugin rechnet mit allen konfigurierten Währungen

## Berechnungsbasis wählen

Für jeden der drei Preistypen (Preis, Listenpreis, Regulierungspreis) können Sie separat festlegen, ob die Prozentberechnung auf dem **Verkaufspreis** oder dem **Einkaufspreis** des Produkts basiert.

### So funktioniert die Basis-Auswahl

Neben jedem Prozent-Eingabefeld sehen Sie einen Umschalter mit zwei Optionen:

* **Verkaufspreis** (Standard) — die Berechnung basiert auf dem regulären Verkaufspreis des Produkts
* **Einkaufspreis** — die Berechnung basiert auf dem Einkaufspreis des Produkts

![Basis-Umschalter neben dem Prozent-Feld](https://2916094232-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LtiS3-dzuXFp_IH7yRw-887967055%2Fuploads%2Fgit-blob-34cb4ad7b68d8e4e0b07a4ed716ab512f30c7cc1%2F2.png?alt=media)

### Anwendungsbeispiel

Sie möchten den Listenpreis als „Einkaufspreis + 20 %" definieren:

1. Wählen Sie beim Listenpreis-Prozent die Basis **Einkaufspreis**
2. Geben Sie `20` als Prozentwert ein
3. Der Listenpreis wird automatisch als Einkaufspreis + 20 % berechnet

### Hinweise

* Die Basis-Auswahl ist **immer sichtbar**, auch wenn noch kein Prozentwert eingegeben wurde
* Wenn Sie **Einkaufspreis** als Basis wählen, aber noch nie ein Einkaufspreis am Produkt hinterlegt wurde, wird die Berechnung übersprungen und der bestehende Preis bleibt erhalten. Hinweis: Sobald ein Einkaufspreis einmal gesetzt wurde, speichert Shopware beim Leeren des Feldes den Wert `0` — in diesem Fall wird die Berechnung normal mit `0` als Basis ausgeführt
* Ändert sich der Einkaufspreis eines Produkts, werden alle Prozentpreise mit Basis „Einkaufspreis" automatisch neu berechnet

## Listenpreis-Felder ein-/ausblenden

Wenn Sie im erweiterten Preise Grid den Schalter **Listenpreise anzeigen** deaktivieren, werden auch die Prozent-Eingabefelder für Listenpreis und Regulierungspreis automatisch ausgeblendet. Es wird dann nur das Prozent-Feld für den Standardpreis angezeigt.

Beim erneuten Aktivieren des Schalters erscheinen die Felder wieder mit den zuvor eingegebenen Werten — keine Daten gehen verloren.

## Mehrfachänderung (Bulk Edit)

Sie können Prozentpreise auch über Shopwares **Mehrfachänderung** für viele Produkte gleichzeitig anlegen:

1. Wählen Sie unter **Kataloge → Produkte** mehrere Produkte aus
2. Klicken Sie auf **Mehrfachänderung**
3. Öffnen Sie den Bereich **Erweiterte Preise**
4. Geben Sie die gewünschten Prozentwerte ein
5. Füllen Sie die absoluten Preisfelder mit einem Platzhalter-Wert aus (z. B. `0`)
6. Bestätigen Sie die Mehrfachänderung

Die absoluten Preise werden nach dem Speichern **automatisch serverseitig** für jedes Produkt individuell berechnet — basierend auf dem jeweiligen Grundpreis des Produkts. Sie müssen die Produkte nicht einzeln öffnen.

![Mehrfachänderung mit ausgefüllten Prozentwerten](https://2916094232-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LtiS3-dzuXFp_IH7yRw-887967055%2Fuploads%2Fgit-blob-d4068fea96cfe834f853de9c7a6974e281a73843%2F3.png?alt=media)

### Hinweise zur Mehrfachänderung

* Die automatische Sofortberechnung in der Oberfläche ist während der Mehrfachänderung deaktiviert, da kein einzelner Grundpreis zur Verfügung steht
* Die serverseitige Berechnung erfolgt unmittelbar nach dem Speichern
* Sie können Prozentwerte und Berechnungsbasis (Verkaufspreis/Einkaufspreis) auch in der Mehrfachänderung setzen

## Automatische Neuberechnung

In folgenden Situationen werden die absoluten Preise automatisch neu berechnet:

| Auslöser                                                        | Berechnung                                                           |
| --------------------------------------------------------------- | -------------------------------------------------------------------- |
| Verkaufspreis des Produkts ändert sich                          | Alle Prozentpreise mit Basis „Verkaufspreis" werden aktualisiert     |
| Einkaufspreis des Produkts ändert sich                          | Alle Prozentpreise mit Basis „Einkaufspreis" werden aktualisiert     |
| Prozentwert wird über die Mehrfachänderung oder API gespeichert | Absolute Preise werden sofort aus dem aktuellen Grundpreis berechnet |

## Massen-Neuberechnung (Konsolen-Befehl)

Falls Sie eine Neuberechnung aller prozentualen Preise erzwingen möchten – z. B. nach einem Datenimport oder einer Bulk-Preisänderung:

```bash
bin/console momo:percentage-prices:recalculate
```

Dieser Befehl berechnet alle prozentualen erweiterten Preise für alle Produkte neu und aktualisiert die absoluten Preise basierend auf den aktuellen Grundpreisen. Dabei wird auch die konfigurierte Berechnungsbasis (Verkaufspreis/Einkaufspreis) berücksichtigt.

**Wann ist das sinnvoll?**

* Nach einem Daten-Import, der Grundpreise geändert hat
* Wenn Sie sicherstellen möchten, dass alle Preise aktuell sind
* Nach einer Migration von einer anderen Shopware-Version

## Zusammenspiel mit bestehenden Preisen

Das Plugin ergänzt die bestehende Preisfunktion von Shopware:

* Erweiterte Preise ohne Prozentangabe funktionieren wie gewohnt
* Prozentangaben und absolute Preise können in derselben Preistabelle nebeneinander existieren
* Nur Zeilen mit einem Prozentwert werden automatisch neu berechnet
