Speichern von Artikelvarianten / Artikelkonfigurator

Ich möchte ein Plugin für Shopware erstellen, mit welchem man im Frontend auf einer Shopseite einen Artikel konfigurieren kann (Wahl von verschiedenen Attributen wie Größe, Text). Hier ist wichtig, dass vor allem dadurch, dass der Nutzer Text eingeben kann, eine unendliche Menge an möglichen Artikelkombinationen zustande kommt.

Klickt man auf “In den Warenkorb einfügen” sollen die vom Nutzer eingegebenen Informationen wie Text und Größe gespeichert werden und dann später im Backend abrufbar sein. 

In einer früheren Implementierung (nicht als Shopware Plugin, sondern als Plugin in einem anderen Shopsystem)  habe ich das ganze wie folgt gelöst: es gibt einen Basisartikel, pro Konfiguration, die ein Nutzer im Frontend konfiguriert, wird eine neue Artikelvariante erstellt und zu dieser Variante werden dann die konfigurierten Informationen in der Datenbank persistiert. Diese Idee scheint mir rückblickend betrachtet nicht optimal. Im Laufe der Zeit häuft sich die Anzahl an Artikelvarianten und nach einer bestimmten Anzahl an konfigurierten Artikelvarianten kommt es zum Beispiel im Backend zu Problemen, wenn man den Artikel bearbeiten möchte, denn beim Bearbeiten des Artikels werden alle Artikelvarianten geladen.

Wie würde man solcheinen Produktkonfigurator in Shopware gut umsetzen? Gibt es eine bessere Lösung, als für jede neue Konfiguration eine neue Artikel(variante) anzulegen?