Zum Inhalt springen
Stone & Water
Shopware 6 Plugin · Made by Stone & Water

Das fehlende Product Information Management für Shopware 6.

Hunderte Artikel und Varianten in Sekunden bearbeiten. CSV-Import in allen Sprachen. Variantenmatrix mit Mustern. Custom-Felder pro Sprache. Snapshots mit Revert. KI-Textgenerierung mit ChatGPT und Claude. Alles direkt im Shopware-Admin — ohne ETL-Tool, ohne Drittsystem.

01
KI-Textgenerierung

Produkttexte automatisch erzeugen — mit ChatGPT oder Claude.

Beschreibungen, Meta-Title, Meta-Description und Keywords in jeder Sprache deines Shops — auf Knopfdruck. Wahlweise mit ChatGPT (OpenAI) oder Claude (Anthropic), beide parallel nutzbar mit Provider-Auswahl pro Generierung.

Claude · Anthropic

Stärken bei längeren, nuancierten Texten

Eigener API-Key, eigene Modellwahl, eigener Tonalitäts-Default — komplett unabhängig von ChatGPT konfigurierbar.

Modelle: Haiku 4.5 · Sonnet 4.6 · Opus 4.6 / 4.7

ChatGPT · OpenAI

Schnelle, kostengünstige Generierung

Bewährt für große Mengen. Auch hier eigene Key/Modell/Tonalitäts-Konfiguration. Verbindungstest direkt im Admin.

Modelle: GPT-4o Mini · GPT-4o · GPT-4.1 Mini · GPT-4.1

Provider-Switch

Beide gleichzeitig konfigurierbar

Sind beide Anbieter aktiv, wählst du im Generator-Modal pro Aufruf den passenden — Claude für die anspruchsvolle Hauptbeschreibung, ChatGPT für die schnellen Meta-Daten zum Beispiel.

Pro Sprache

Individuelle Texte pro Kanal & Sprache

Jede Kanal-Sprach-Kombination bekommt eigene, einzigartige Texte. Oder einmal generieren und auf alle Sprachen klonen — du entscheidest pro Lauf.

Tonalität

Fünf Stilvorlagen

Professionell, locker-modern, premium/luxus, technisch-sachlich oder emotional-werbend. Pro Anbieter eigenen Default setzen, pro Generierung überschreiben.

Kontext-Chips

Du steuerst was die KI sieht

Welche Produktdaten fließen in den Prompt? Name, Hersteller, Properties, Kategorie, Preis — per Chip wählbar. Plus eigene Stichwörter für SEO-Fokus.

Mehrfachänderung

KI auch im Bulk

Pro Anbieter aktivierbar: ChatGPT und/oder Claude können auch in der Mehrfachänderung Texte für viele Produkte gleichzeitig generieren — mit Concurrency-Steuerung gegen Rate-Limits.

Sicherheit

Texte erst prüfen, dann übernehmen

Generierte Texte erscheinen erst im Vorschau-Modus. Du prüfst, optional Snapshots erstellen, dann erst ins Produkt übernehmen. „Bestehende überschreiben" ist optional.

02
Produktlisting & Übersicht

Alle Artikel auf einen Blick — Stammartikel und Varianten.

Ein einziges Listing für den kompletten Produktbestand. Stammartikel werden mit Variantenzahl angezeigt, lassen sich inline ausklappen, und die Gesamtzahlen sind immer sichtbar — über und unter der Tabelle.

Listing

Stammartikel + Varianten in einem Listing

Anzeige im Format Produkte: 153 (Varianten: 543) — getrennt ausgewiesen, oben und unten in der Pagination.

  • Inline-Aufklappen von Varianten direkt in der Tabelle
  • Badge mit Variantenzahl pro Produkt
  • Lazy-Loading der Varianten erst beim Aufklappen
Inline-Edit

Direkt in der Zeile editieren

Bestand, Preis, EAN, Herstellernummer und Gewicht direkt in der Listing-Zeile bearbeiten — auch für Varianten. Klick auf den Wert, ändern, fertig.

  • Aktiv-Toggle pro Produkt
  • Read-back-Verifikation nach Speichern
  • Warnhinweis wenn Shopware den Wert verwirft
Quickview Neu

Stammdaten im Modal — ohne Detail-Wechsel

Quickview-Icon in der Zeile öffnet ein kompaktes Modal mit allen wichtigen Stammdaten, Preisen, Lagerbestand und SEO. Ideal für serielle Pflege.

  • Preise (brutto/netto), Einkaufspreis, Omnibus-Preis
  • Bestand, Closeout, Versandkostenfrei
  • SEO & Beschreibung — sektionsweise ein-/ausblendbar
Filter

Individuelle Filter mit UND / ODER

Beliebig viele Filterbedingungen verknüpfen. Auch über Variantenfelder — die Suche durchforstet automatisch Parent- und Children-Felder.

  • 9 Operatoren: enthält, gleich, beginnt mit, größer/kleiner, leer, …
  • UND/ODER-Kombination mit Klick
  • Variantenartikel-aware: trifft auch Parents mit passenden Variants
Presets

Filter-Presets speichern und laden

Häufige Filterkombinationen einmal definieren, dann mit einem Klick wiederherstellen — perfekt für wiederkehrende Pflegerunden.

  • Beliebig viele Presets pro User
  • Filter-Chips im Header bleiben sichtbar
  • Kompletter Filterzustand wird mitgespeichert
Performance

Native Listen-Virtualisierung

Bei großen Listen (1000+) zeichnet der Browser nur sichtbare Zeilen — über content-visibility: auto. Spürbar flüssigeres Scrollen ohne UI-Änderung.

  • Zeilenanzahl frei wählbar: 10 / 25 / 50 / 100 / 200 / 500
  • Sticky Pagination oben und unten
  • Schnell-zurück-nach-oben-Button
03
Mehrfachänderung · Das Herzstück

25+ Felder gleichzeitig ändern — mit Snapshot, Live-Progress und Revert.

Statt jeden Artikel einzeln anzufassen: Filter setzen, alle markieren, Felder ändern. Vor jeder Bulk-Operation wird ein Snapshot des Zustands vorher angelegt. Etwas falsch eingestellt? Ein Klick — alles ist wieder wie vorher.

Aktion „Auf Filter beschränken"

Filtere die Varianten — der Stammartikel bleibt unangetastet.

Wer im Listing nach einem Variantenfeld filtert und bulk-ändert, will normalerweise nur die filter-treffenden Varianten anfassen. Das PIM macht das — der Parent bleibt davon unberührt. Ein Klick auf den Toggle, und die Bulk-Aktion folgt dem Filter exakt.

25+ Felder

Was alles bulk-bearbeitbar ist

  • Name, Beschreibung, Meta-Title, Meta-Description, Keywords
  • Aktiv-Status, Hersteller, Steuersatz, Lieferzeit
  • Verkaufspreis (brutto/netto), Staffelpreise, Listenpreis
  • Einkaufspreis brutto + netto getrennt — der jeweils andere Wert wird automatisch über die Steuerklasse berechnet
  • Streichpreis/UVP, Günstigster Preis 30 Tage (Omnibus)
  • EAN, Hersteller-Nummer, Maße, Gewicht
  • Grundpreis (Inhaltsmenge + Grundpreiseinheit), Produkteinheit
  • Bestand, Wiederauffüllzeit
  • Kategorien, Hauptkategorie pro Verkaufskanal, Tags
  • Properties, Verkaufskanal-Sichtbarkeit, Cross-Selling
  • Custom Fields (auch pro Sprache)
Daten-Vererbung Neu

Vom Stammartikel an alle Varianten

Eigene Aktion: Beschreibung, Staffelpreise, Cross-Selling, Bilder und SEO-Felder vom Parent auf alle Varianten übertragen. Auch im Bulk-Modus für mehrere Stammartikel.

Snapshots

Vorher-Zustand + Ein-Klick-Revert

Jede Mehrfachänderung legt einen Snapshot des Zustands vorher an. Im Audit-Log sichtbar, jederzeit zurückrollbar.

  • 22 von 25 Feldern voll snapshot-fähig
  • Auch Translation-Änderungen pro Sprache
  • Diff-Anzeige vorher/nachher pro Produkt
Live-Progress

Fortschritt in Echtzeit

Auch bei 500+ Produkten kein Black-Box-Gefühl: Live-Counter, Phasen-Anzeige (Snapshot / Apply), ETA-Berechnung und Abbrechen-Button mitten in der Operation.

Scope

Quelle: Auswahl oder Preset

Die Bulk-Operation kann auf manueller Auswahl oder einem gespeicherten Preset basieren — Tausende Produkte auf einmal sind kein Problem.

  • Aus aktueller Auswahl: ausgewählte Zeilen
  • Aus Preset: alle filter-treffenden Produkte
  • Mit/ohne Varianten
  • Nur Varianten (mit Filter-Beschränkung)
Filter-Anzeige Neu

Vollständige Übersicht aller aktiven Filter

Vor jeder Mehrfachänderung werden alle Preset-Filter als lesbare Chips dargestellt: Hersteller, Kategorien, Tags, Eigenschaften, Lagerbestand, Preis, Gewicht, Datumsbereiche, Sichtbarkeit, Steuerklasse und mehr. IDs werden in Klarnamen aufgelöst. „Keine Filter aktiv" mit rotem Rahmen als Warnung.

Filter-Anzeige Neu

Vollständige Übersicht aller aktiven Filter

Vor jeder Mehrfachänderung werden alle Preset-Filter als lesbare Chips dargestellt: Hersteller, Kategorien, Tags, Eigenschaften, Lagerbestand, Preis, Gewicht, Datumsbereiche, Sichtbarkeit, Steuerklasse und mehr. IDs werden in Klarnamen aufgelöst. „Keine Filter aktiv" mit rotem Rahmen als Warnung.

Validation Neu

Pflichtfeld-Fehler als klickbares Modal

Speichern bei leeren Pflichtfeldern: statt einer Warn-Banner-Wand öffnet sich ein Modal mit allen Fehlern. Klick auf einen Fehler springt direkt zur betroffenen Sektion — sie wird aufgeklappt, das Feld kurz indigo hervorgehoben.

04
Varianten-Generator

100 Varianten in 10 Sekunden — mit Muster und Vorschau.

Variantenpflege im Shopware-Admin ist mühsam. Unser Generator macht das visuell: Eigenschaften wählen, Optionen anklicken, Muster für Artikelnummer und Name definieren, Vorschau prüfen, generieren.

Vereinheitlichte Suche Neu

Eine Suche für Eigenschaften und Optionen

Statt zwei getrennter Suchfelder: eine einzige Suche oben durchsucht Eigenschaften und Optionen gleichzeitig. Tippst du „rot", bleiben alle Gruppen mit der Option „rot" sichtbar und die Treffer rechts werden hervorgehoben.

Pattern-Akkordeons Neu

Artikelnummer + Name als getrennte Akkordeons

Statt nackter Inputs nebeneinander: zwei eigenständige Akkordeons. Eingeklappt zeigen sie das aktuelle Pattern als Chip; aufgeklappt erscheint das Eingabefeld mit klickbaren Variable-Chips.

  • Variablen: {number}, {option1}, {parentName}, {group1}, {counter}
  • Live-Vorschau der ersten 8 Kombinationen
  • Konfigmatrix als Default, Override pro Operation
Variantenmatrix Neu

Bulk-Preise und Bestand in einer Tabelle

Statt Varianten einzeln öffnen: alle in einer Matrix übereinander. Eine Achse zeigt die erste Eigenschaft (z.B. Farbe), die andere die zweite (z.B. Größe). Pro Zelle stehen Preis und Bestand zum direkten Editieren.

  • Inline-Edit für Preis, Bestand, EAN, MPN
  • Sortierung der Eigenschaften per Drag-and-Drop
  • Optional: Werte aus dem Stammartikel auf leere Zellen anwenden
Sicheres Löschen

Variantenlöschung mit Order-Check

Bestehende Varianten löschen, aber nur solche ohne Bestellungen. Das verhindert versehentliches Wegschmeißen aktiver Variants.

  • Modus „Sicher": nur Varianten ohne Bestellungen
  • Modus „Alle": komplette Variantenstruktur
  • Bestätigungsdialog mit Anzahl
05
CSV-Import & Export

Komplette Mehrsprachigkeit — auch für Custom Fields.

Statt für jede Sprache eine eigene Datei: alle Sprachen in EINER CSV. Spaltenkonvention trans_name__de_DE für Standard-Felder, cf_meinFeld__en_GB für Custom Fields. Import mit Pre-Fetch existierender Werte und sauberem JSON-Merge.

Profile

Built-in Export-Profile

Vordefinierte Spaltensets für typische Use-Cases — sofort einsetzbar, anpassbar, als neues Profil speicherbar.

  • Stammdaten, SEO, Bilder, Preise & Lager
  • Eigenschaften & Custom Fields, Cross-Selling
  • Eigene Profile pro User abspeicherbar
Custom Fields

Jedes Feld als eigene Spalte

Custom Fields, die in der Konfigmatrix aktiviert sind, bekommen im Export jeweils eine eigene Spalte (cf_meinFeld). Beim Import werden sie direkt erkannt — kein JSON-Blob mehr.

Produkteinheit

Einheit als Klarname statt UUID

Spalte „Einheit (Name)" exportiert „Liter" oder „Kilogramm" statt UUID. Beim Import wird der Name automatisch in die richtige Shopware-Einheits-ID aufgelöst — Excel-freundlich.

Auflösung

Per Artikelnummer oder EAN

Für Felder die normalerweise eine UUID erwarten (parentId, mainVariantId): UUID, Artikelnummer oder EAN möglich. Lookup wird gecacht — kein doppelter Treffer.

Import

Batch-Sync mit Progress

Alles über die Shopware-Sync-API in Batches — auch 10.000 Produkte in wenigen Minuten. Mit Live-Counter, Phasen-Anzeige und ETA.

  • Match per Artikelnummer / ID / EAN
  • Anlage neuer Produkte ODER Update vorhandener
  • Custom-Field-JSON wird gemerged, nicht überschrieben
Berechtigungen

Import nur für Superadmins

Das CSV-Modal blendet den Import-Tab automatisch aus für Nicht-Superadmins. Export-Berechtigung ebenfalls feingranular regelbar.

06
Konfigmatrix & UX

Anpassbar an deinen Workflow.

Alles, was im PIM sichtbar oder editierbar ist, steuerst du über die Konfigmatrix — zentral, mit Suche, mit Sektionsreihenfolge per Drag-and-Drop.

Sektionsreihenfolge Neu

Drag-and-Drop für dein Layout

Die Reihenfolge der Sektionen in der Produkt-Detailansicht (Stammdaten, Preise, Medien, SEO, …) und im Varianten-Modal lässt sich per Drag-and-Drop frei festlegen. Sektionen ohne aktivierte Felder werden automatisch ausgeblendet.

Standard-Steuersatz Neu

Neue Produkte: Tax-Default automatisch gesetzt

Beim Anlegen eines neuen Produkts wird automatisch der erste Steuersatz aus dem System vorausgewählt (sortiert nach position ASC). Brutto/Netto-Berechnung funktioniert sofort, ohne Klick.

Konfig-Suche

Strg+K · Cross-Tab-Suche

Schnellsuche durch alle Tabs der Konfigseite. Match-Counter pro Tab, Auto-Scroll zum ersten Treffer, ↑/↓ zum Navigieren.

Pro-User-Persistenz

Persönliche Sicht für jeden Pfleger

Spaltenkonfiguration, Page-Size, Filter-Presets, KI-Tonalität — alles wird pro User gespeichert. Mehrere Pfleger arbeiten parallel mit eigener Sicht auf dieselben Daten.

07
Workflow · Audit · Berechtigungen

Wer hat was geändert — und kann das rückgängig gemacht werden?

Bei mehreren Pflege-Usern ist Nachvollziehbarkeit alles. Das PIM protokolliert jede Änderung mit User, Zeitpunkt und Diff. Rechte feingranular pro Modul, Superadmin mit Override.

Audit-Log

Vollständige Änderungshistorie

Jede Bulk-Operation, jede CSV-Import-Charge, jede Snapshot-Aktion landet im Audit-Log mit Benutzername, Zeitstempel und Vorher/Nachher-Werten.

Approval

Approval-Workflow für Produkte

Optional: Produkte können auf „pending" gesetzt werden und müssen vor der Aktivierung freigegeben werden — z.B. nach Bulk-Import.

Permissions

Feingranulares Rechte-System

Welcher User darf was? Mehrfachänderung, CSV-Import/Export, KI-Generierung, Löschen, Snapshots, Approval — jede Aktion einzeln freischaltbar.

Revert

Ein-Klick-Wiederherstellung

Aus dem Audit-Log direkt: einen Snapshot zurückrollen. Komplette Produktzustände vor der entsprechenden Operation werden wiederhergestellt.

08
In Zahlen

Was im Paket steckt.

25+
Bulk-Felder mit Revert
2×
KI-Anbieter integriert
3×
Shopware-Versionen
100+
Übersetzungs-Strings DE/EN
Sprachen pro CSV
09
Aktuelle Erweiterungen

Was zuletzt dazugekommen ist.

Das PIM wird kontinuierlich um Funktionen erweitert, die aus echten Pflege-Workflows entstehen.

SEO-URL-System mit zwei Generatoren — Zusatzfeld als Brücke, Shopware-native Indexierung
Neu
  • Schritt 1 — „URL im Zusatzfeld generieren" (Token → Feld): Ein Token-Pattern (z.B. {mainCategoryPath}/{name}) wird variant- und sprachgenau aufgelöst und in das Pro-Shop-Zusatzfeld staw_pim_canonical_<shop> geschrieben. Verfügbar als Bulk-Lauf (Kanal-/Sprachauswahl im Modal) und per Pro-Produkt-Button „Aus Pattern generieren" in Stammdaten und Varianten.
  • Schritt 2 — „SEO URLs generieren" (Twig → Datenbank): Ein Twig-Pattern liest die Zusatzfelder (z.B. ein migriertes Feld mit Fallback auf das Canonical-Feld) und wird als Shopwares native SEO-URL-Vorlage je Verkaufskanal gesetzt — die Neuindexierung läuft über Shopwares eigenen SeoUrlGenerator. Die URLs kommen danach direkt aus dem Zusatzfeld und überstehen jede Neu-Indexierung.
  • Migrierte URLs bleiben erhalten: Produkte mit bestehender URL (z.B. aus einem Vorsystem im Custom Field) behalten sie; neue Produkte nutzen das von Schritt 1 gefüllte Feld. Geänderte Pfade bleiben als 301-Weiterleitung erhalten.
  • Gezielte Generierung: Es wird nur für die ausgewählten Verkaufskanäle + Sprachen geschrieben — Kanäle gruppiert nach Shop mit Sprach-Akkordeons, „Alle (ab)wählen" je Gruppe, nichts vorausgewählt. Pro Kanal Badges mit Produktanzahl (nur tatsächlich im Kanal sichtbare Produkte) und „ohne URL"-Zähler.
  • Probelauf und Vorschau je Kanal/Sprache vor dem Schreiben. Probelauf-Ergebniskarten farbcodiert: Neu = grün, Änderung = blau, Übersprungen = grau, Warnung = amber, Fehler = rot. Die Vorschau wählt Produkte, die im Kanal sichtbar sind und deren Pattern auflöst — bis zu drei echte Beispiele.
  • Reset-Option: „Alle Produkt-URLs entfernen (Reset)" löscht alle SEO-URLs der gewählten Kanäle/Sprachen (inkl. Shopwares globaler Detail-URLs) und baut frisch aus dem Pattern auf. Die anderen Optionen springen sichtbar auf AUS.
  • Eindeutige Varianten-URLs: {options}, {properties} und {tags} liefern sprachübersetzte Werte — ein Pattern wie {mainCategoryPath}/{name}-{options} erzeugt pro Variante und Sprache eine eindeutige URL. Varianten lösen ihr Pro-Kanal-Canonical-Feld inkl. Vererbung vom Elternprodukt auf.
  • Korrekter Sprach-Fallback: Kette angefragte Sprache → Eltern-Sprache → System; leere/geerbte Übersetzungen werden übersprungen — keine versehentliche Standardsprache in fremdsprachigen URLs.
  • Pattern-Editor: Textarea mit Auto-Höhe (ganze Twig-Abfrage sichtbar), Stift-Icon, Variablen-Chips (Token-Chips für Schritt 1, offizielle Shopware-SEO-Twig-Variablen für Schritt 2), Live-Twig-Syntax-Check (Speichern bei Fehler gesperrt) und Warnung, wenn Tokens und Twig gemischt werden. Pro-Verkaufskanal-Pattern für beide Generatoren.
  • Robuste Konfliktbehandlung: Bereits anderweitig belegte Pfade (z.B. Kategorie mit gleichem Slug) werden sauber übersprungen und als „Pfad bereits vergeben" gemeldet statt mit Duplicate-Key-Fehler abzubrechen. Konflikte mit Produktnummern statt IDs. Gleiche URL in verschiedenen Shops ist kein Konflikt (eindeutig pro Shop + Sprache).
  • Schnell auch bei großen Katalogen: Kanal-Zählung über set-basierte Aggregat-Abfragen, Produktlisten über index-freundliche UNIONs statt OR-Self-Joins — SEO-Dialoge öffnen ohne Wartezeit, die Generierung schreitet auch bei zehntausenden Produkten normal voran. Aufgewerteter Fortschrittsbalken mit Prozentanzeige.
  • Sicherheitsnetz: Liefert das Canonical-Feld ein leeres Ergebnis, fällt die SEO-URL auf den Produktnamen zurück statt einen leeren Pfad zu erzeugen.
Performance — Mehrfachänderung, CSV-Import und Freigaben um ein Vielfaches schneller
Neu
  • Asynchrone Queue-Indexierung: Produkt-Schreibvorgänge der Mehrfachänderung nutzen jetzt standardmäßig Shopwares Queue-Indexierung statt synchroner Indexierung im Request, die Schreib-Batchgröße wurde von 10 auf 25 erhöht — große Bulk-Läufe laufen dadurch um ein Mehrfaches schneller. Konfigurierbar (queue / disable / sync).
  • CSV-Import ohne Komplett-Reindex: Nach einem Import werden nur noch die importierten Produkte asynchron nachindexiert — der bisherige Reindex des gesamten Katalogs entfällt.
  • Gebündelte Requests: Audit-Log-Schreibvorgänge werden alle 600 ms als Batch gespeichert (statt ein Request pro Produkt); Mehrfach-Freigaben nutzen einen Batch-Endpoint (ein Request pro 200 Produkte); Bulk-Übersetzungen und Freigabe-/Audit-Writes laufen als INSERT … ON DUPLICATE KEY UPDATE — halbiert die SQL-Statements.
  • Varianten-Löschung gebündelt: Ein IN-Delete statt einem Statement pro Variante, mit Fehler-Rückmeldung je ID und automatischem Einzel-Fallback.
  • Snapshots nur einmal pro Sitzung: Bulk-Edit-Snapshots und Rückgängig-Daten (potenziell mehrere MB) werden nicht mehr bei jedem Listenstart geladen.
  • Stale-Response-Schutz: Schnelle Filter-/Seitenwechsel in der Produktliste können neuere Ergebnisse nicht mehr mit älteren überschreiben.
  • Mehrfachänderung (Fix): Stammartikel, die selbst zum aktiven Filter passen, erhalten die Änderung jetzt ebenfalls.
Bild-Upload per Drag & Drop in Stammdaten und Varianten
Neu
  • Drop-Zone in der Bilder-Sektion: Dateien ablegen oder per Klick den Datei-Dialog öffnen — Uploads landen in der Shopware-Mediathek (Produkt-Ordner) und werden sofort dem Produkt zugeordnet, mit Fortschrittsanzeige.
  • Erstes Bild wird automatisch Titelbild, falls noch keins gesetzt ist.
  • Varianten-Logik: Ein hochgeladenes Bild wird zum eigenen Bild der Variante (überschreibt das geerbte). Entfernt man es, werden wieder die Bilder des Hauptprodukts geerbt.
Freigabe-Workflow — neuer Status „In Bearbeitung"
Neu
  • Bearbeiter können den Status „In Bearbeitung" selbst an einem Produkt setzen, um zu signalisieren, dass es gerade bearbeitet wird. Freigeben/Ablehnen/Einreichen bleiben parallel möglich.
  • Überall berücksichtigt: Status-Badge + Button im Detail, Filter und Status-Indikator (Indigo) in der Produktliste sowie die Freigabe-Statistik in den Einstellungen.
Produktübersicht & Bedienung — Preis-Sortierung, alle Hersteller, Kategorie-Chips, Toolbar
Neu
  • Preis-Spalte sortierbar: Klick auf die Kopfzeile sortiert ASC/DESC — serverseitig über den Preis-Accessor.
  • Alle Hersteller im Filter: Der Hersteller-Filter lädt jetzt alle Hersteller paginiert statt nur die ersten 500 — die Liste bricht nicht mehr alphabetisch ab, die Freitextsuche findet auch späte Namen.
  • Kategorie-Chips: Zugewiesene Kategorien werden als entfernbare Chips unter dem Baum aufgelistet (kleines × zum Entfernen) — sofort ersichtlich, was ausgewählt ist.
  • Aktions-Buttons in eigener Zeile: Feed-Generator, CSV Import/Export und Produkt anlegen stehen jetzt immer in einer eigenen Zeile oberhalb der Suche — das Suchfeld behält auf allen Viewports seine volle Breite.
  • Tab-Leiste: Bei schmalem Fenster erscheint ein dünner horizontaler Scrollbalken, sobald die Tabs überlaufen — jeder Tab bleibt erreichbar.
  • Artikelnummern-Spalte nutzt dieselbe Schriftgröße wie der Produktname. Das SEO-/Canonical-URL-Feld wird in den Stammdaten immer angezeigt.
SEO-URL-Slug-Behandlung — Umlaute, Schrägstriche, Punkte und Shopwares Escaper
Behoben
  • Umlaute und Sonderzeichen in statischem Pattern-Text (z.B. ein wörtliches „für/" im Pattern) werden beim Schreiben ins Zusatzfeld korrekt konvertiert (ae/oe/ue/ss) — vorher lief wörtlicher Text roh durch und brach die SEO-URL-Generierung.
  • Schrägstriche und Punkte bleiben in Token-Werten erhalten (Kategorienamen mit „/", Artikelnummern mit „.") — nur echte Sonderzeichen wie „&" oder Leerzeichen werden zum Trennzeichen konvertiert. Vorschau und Server-Generierung verhalten sich identisch.
  • Twig |raw automatisch injiziert: Shopwares SEO-Twig-Umgebung slugifiziert jeden ausgegebenen Wert — gespeicherte Schrägstriche wurden beim Erzeugen wieder zu „-". Nackte Twig-Ausgaben von Pfad-Feldern bekommen jetzt in allen Generierungspfaden automatisch |raw; die Variablen-Chips fügen Felder direkt mit |raw ein.
  • Kategorie-Pfad deterministisch: Ohne gesetzte Hauptkategorie bevorzugt der Fallback jetzt die tiefste zugewiesene Kategorie (längster Pfad) statt einer beliebigen; bei leerer category.path-Spalte (Indexer-Rückstand) wird die Ahnenkette über parent_id rekonstruiert.
  • Keine stillen UUID-Zusatzfelder mehr: War die Kanalliste beim Generieren noch nicht geladen, fiel der Feldname unbemerkt auf ein Kanal-ID-Suffix zurück und legte neue Felder an — der Admin nutzt jetzt eine zweite Namensquelle, überspringt Kanäle ohne auflösbaren Namen mit klarer Meldung, der Server lehnt ID-Fallback-Keys ab.
  • Migriertes Feld strikt in der aktuellen Sprache geprüft (ohne Shopwares Übersetzungs-Vererbung) — Werte aus einer anderen Sprache gewinnen nicht mehr. Mehrzeilige Patterns geben über den Template-Wrapper keine Zeilenumbrüche mehr weiter (|trim).
Feed-Generator — erreichbar im Wartungsmodus, domain-unabhängige API-Route
Neu
  • Feeds bleiben im Wartungsmodus erreichbar: Die Storefront-Feed-Route setzt allow_maintenance, zusätzlich beantwortet ein früher Kernel-Subscriber Feed-Anfragen, bevor Shopwares Storefront-Maschinerie greift (Session-Start, Wartungsmodus-Resolver). Google Merchant / ERP laufen auch während Deployments weiter.
  • Neue domain-unabhängige Ausweichroute /api/staw-pim/export/<token>.csv (ohne Login) für Umgebungen, in denen die Storefront-URL umleitet (Sprachpfad-Domains, Weiterleitungen). Die alternative URL wird in den Feed-Einstellungen angezeigt.
Lokalisierung, Diagnose & Aufräumung
Neu
  • ~55 fest verdrahtete deutsche Texte (SEO-Generator-UI, Modals, Benachrichtigungen, Toasts) in Textbausteine überführt — die Oberfläche ist vollständig in Deutsch und Englisch verfügbar.
  • Konfiguration aufgeräumt: Zwei funktionslose Einstellungen entfernt; die KI-Einstellung „Standard-Tonalität" wird jetzt tatsächlich angewendet (wurde bisher ignoriert).
  • Support-Diagnose: Sitzungs-Fehlerprotokoll (letzte 50 Einträge) — bisher stille Fehlerpfade protokollieren Fehlschläge jetzt, sodass Probleme auch ohne Server-Log-Zugriff über die Browser-Konsole diagnostizierbar sind.
  • Interne Testsuite: Leichtgewichtiger Test-Runner (ohne PHPUnit) prüft SEO-Fallback-Logik, Snippet-Konsistenz zwischen de-DE und en-GB sowie Versions-Konsistenz bei jedem Release.
  • Stabilität: Tote Routen/Methoden entfernt, fehlende Übersetzungen ergänzt, Store-Kompatibilität (statische Code-Analyse) behoben.
Feed-Generator — Streaming-Performance für große Kataloge
Neu
  • DBAL-Streaming in 2000er-Batches: Die Feed-Generierung lädt die Produktdaten nicht auf einmal in den Speicher — sie iteriert in Batches durch und gibt Zeile für Zeile aus. Damit laufen auch Kataloge mit zehntausenden Produkten ohne Memory-Probleme durch.
  • Keyset-Pagination statt LIMIT/OFFSET: Die Batches verwenden Seek-Pagination über die Artikelnummer (indizierte Spalte). Anders als LIMIT … OFFSET wird das nicht langsamer, je tiefer wir blättern — die Ausgabezeit bleibt linear zur Anzahl Produkte, egal ob Position 100 oder 50.000.
  • gzip-Komprimierung über HTTP: Wenn der abrufende Client Accept-Encoding: gzip sendet (alle modernen ERP-/Crawler-/Browser-Clients tun das), wird die Antwort serverseitig komprimiert ausgeliefert. Feed-CSVs komprimieren typisch um 80–90 % — deutlich kürzere Übertragungszeit, weniger Bandbreite.
  • Datei-Modus für sehr große Kataloge: Pro Feed lässt sich der Modus „Datei" wählen. Ein Scheduled Task generiert die Datei vorab (alle 15 Min, atomar geschrieben nach var/staw-pim-feeds/), und der Controller liefert die fertige Datei aus — kein erneutes Generieren bei jedem Abruf. Ideal für ERPs, die mehrmals pro Stunde pollen.
  • Memory-Limit-Vorsorge: Der Feed-Endpoint setzt das PHP-Memory-Limit defensiv auf 1 GB (@ini_set) — auch bei sehr breiten Spaltenauswahlen mit dutzenden Custom Fields läuft die Generierung sauber durch.
Feed-Generator — Liste, Filtervorlagen, Umbenennen, mehrere Feeds pro Profil
Neu
  • Liste als Akkordeon: Jeder Feed als kompakte Zeile mit Name, Status-Pille („Feed aktiv"/„kein Feed"), Feed-URL-Vorschau, Filtervorlage-Chip und Produktanzahl-Chip. Klick auf die Zeile öffnet und schließt den Editor zuverlässig (Chevron rechts dreht sich).
  • Built-in-Vorlagen und eigene Profile: Selektor „Feed aus Vorlage / Profil anlegen" oben im Feeds-Tab. Built-in-Vorlagen (Stammdaten, Preise & Lager, SEO, Bilder, Varianten, Vollexport) erzeugen automatisch ein Export-Profil mit passender Feldauswahl, aktivieren den Feed und generieren einen Token. Eigene Profile lassen sich direkt als Feed aktivieren.
  • Filtervorlagen statt einfacher Checkboxen: Im Feed-Editor wählst du eine gespeicherte Filtervorlage. Übernommen werden nur die serverseitig zuverlässig abbildbaren Kriterien: aktiv, Bestand, Hersteller, Kategorie, Verkaufskanal. Qualitäts-/Vollständigkeitskriterien werden im Feed bewusst nicht angewendet — so liefert der Feed dem ERP keine still verfälschte Produktmenge.
  • Produktanzahl live: Pro Feed-Zeile zeigt ein Chip die Anzahl der enthaltenen Produkte — live aus dem Katalog ermittelt. Direkte Orientierung, welcher Feed wie groß ist.
  • Umbenennen und Löschen: Namensfeld im Editor (Name muss eindeutig sein). Papierkorb-Symbol je Zeile mit Sicherheitsabfrage. Aktives Profil und Produktanzahl-Chip wandern automatisch mit.
  • Mehrere Feeds pro Profil: Feeds sind vom Quell-Profil entkoppelt — du kannst beliebig viele Feeds für dasselbe Profil anlegen (z.B. ein „Stammdaten"-Profil als Basis für mehrere Filtervorlagen).
  • Backend serverseitige Filterung: Der FeedExportService wendet Hersteller, Kategorie und Bestandsbereich direkt im CSV/XML an (inkl. Varianten-Vererbung auf den Hauptartikel).
  • Migration automatisch: Bestehende Feeds aus dem alten Modell werden beim ersten Laden automatisch übernommen — Token und URLs bleiben gültig.
SEO-URL-Pattern pro Verkaufskanal
Neu
  • Eigenes Pattern pro Shop: Neue Option in der Konfigmatrix unter SEO-URL. Aktiviert → durchsuchbares Shop-Dropdown, pro Verkaufskanal lässt sich ein abweichendes URL-Pattern festlegen. Shops ohne eigenes Pattern verwenden weiterhin das Standard-Pattern (als Placeholder sichtbar).
  • Variablen-Chips kontextbezogen: Klick auf eine Variable fügt sie in das gerade fokussierte Pattern-Feld ein — egal ob Standard oder Shop-spezifisch. Die Live-Vorschau zeigt das Pattern des gewählten Shops.
  • Generator verarbeitet jetzt auch Varianten: Bisher wurde nur für Stammartikel eine SEO-URL geschrieben. Jetzt auch für Varianten — geerbte Felder (Name, Hersteller, Kategorien, Hauptkategorie inkl. Sales-Channel-spezifischer) werden aus dem Eltern-Produkt aufgelöst. Variantenspezifische Werte wie {options} bleiben die der Variante.
  • SEO-URL-Akkordeons standardmäßig eingeklappt — einheitlich mit anderen Tabs.
Sprachdropdown in der Mehrfachänderung
Neu
  • Sprachauswahl bei übersetzbaren Feldern: Meta-Title, Meta-Description und SEO-URL (SEO-Tab), Zusatzfelder (Custom Fields) und Verpackungseinheit (Versand-Tab) bekommen jetzt ein Sprachdropdown — sobald ein Wert eingetragen ist.
  • Mehrfachsprachen-Schreibung: Der Wert wird in der Standardsprache gesetzt UND zusätzlich in jede gewählte Sprache geschrieben — bspw. Verpackungseinheit gleichzeitig auf Deutsch und Englisch setzen.
  • Bewusst ohne Sprachauswahl: Produkteinheit/Maßeinheit (ist nur eine Referenz auf eine Einheit), sowie alle sprachunabhängigen Felder (Preis, Lager, EAN, Gewicht, Hersteller, Status, Maße).
Brutto- und Netto-Preise getrennt
Neu
  • Einkaufspreis brutto + netto in der Mehrfachänderung als zwei separate Aktionen — der jeweils andere Wert wird automatisch über die Steuerklasse berechnet
  • CSV-Import/Export: getrennte Spalten purchasePrice_gross und purchasePrice_net mit Alias-Erkennung für deutsche und englische Schreibweisen (ek_brutto, einkaufspreis_netto, cost_gross/net etc.) — bestehende Single-Spalten-Imports bleiben rückwärtskompatibel
  • Konfigmatrix: alle vier Preisarten (Verkaufspreis, Einkaufspreis, Streichpreis/UVP, Günstigster Preis 30 Tage) lassen sich unabhängig für Brutto und Netto ein- und ausblenden — sowohl für Hauptartikel als auch für Varianten
Mehrfachänderung — vollständige Filter-Anzeige
Verbessert
  • Alle Preset-Filter sichtbar: Hersteller, Kategorien, Tags, Eigenschaften, Lagerbestand, Preis, Gewicht, Datumsbereiche, Sichtbarkeit, Steuerklasse, Lieferzeit, dynamische Produktgruppen und mehr werden vor jeder Mehrfachänderung als Chips dargestellt
  • Lesbare Auflösung von IDs: Bei „Mit Varianten" und Verkaufskanal-Filtern erscheinen Klarnamen statt UUIDs
  • Klare Trennung: Artikelanzahl + Aktive Filter als zusammenhängender Info-Block — „Keine Filter aktiv" bleibt rot als bewusste Warnung
Quickview-Modal überarbeitet
Neu
  • Modal-Header: Variantenname vorne (groß und dunkel), Artikelnummer dahinter (klein, grau) — analog zur Stammartikel-Variantenmaske
  • Einheitliche Eingabefelder: Label oben, Eingabefeld darunter (42 px Höhe) — konsistent zum Rest des Plugins
  • Alles ausklappen / Alles einklappen-Button im Modal-Header — wie auch in der Detail-Ansicht der Stammdaten
Quickview & Inline-Edit
Etabliert
  • Quickview-Modal: Alle wichtigen Stammdaten, Preise, Lagerbestand und SEO direkt aus dem Listing
  • Inline-Edit: Bestand, Preis, EAN, Herstellernummer und Gewicht direkt in der Tabellenzeile
  • Read-back-Verifikation: Wenn Shopware den Wert verwirft, erscheint ein Warnhinweis statt fälschlich Erfolg
Varianten-Generator
Erweitert
  • Variantenmatrix: Bulk-Preise und Bestand für alle Varianten in einer Tabelle
  • Vereinheitlichte Suche: Eine Suche durchsucht Eigenschaften und Optionen gleichzeitig
  • Pattern-Akkordeons: Artikelnummer und Name als getrennte Akkordeons mit klickbaren Variable-Chips
Konfigmatrix & UX
Neu
  • Sektionsreihenfolge per Drag-and-Drop für Produkt-Detail und Varianten-Modal
  • Standard-Steuersatz wird bei neuen Produkten automatisch vorausgewählt
  • Validation-Modal mit Scroll-to-Section bei Pflichtfeld-Fehlern
  • Daten-Vererbung Parent → Varianten als eigene Bulk-Aktion
KI
Erweitert
  • Claude (Anthropic) als zweiter KI-Anbieter — eigene Sektion in der Konfigmatrix, parallel zu ChatGPT nutzbar
  • Provider-Switch im Generator-Modal wenn ChatGPT UND Claude aktiv sind
  • KI in der Mehrfachbearbeitung mit Concurrency-Steuerung gegen Rate-Limits
Interesse?

Lass uns über deine Pflegeprozesse sprechen.

Egal ob 200 oder 200.000 Artikel — das PIM macht deine Shopware-Pflege schneller, sicherer und nachvollziehbar. Mit KI-Textgenerierung, Mehrsprachigkeit, Variantengenerator und allem was du dafür brauchst.

Im Shopware Store Feature anfragen