API - Partielle Updates von Produkten

Hi,

die einfachste Möglichkeit ein Produkt perfekt mit Shopware synchron zu halten, ist das Produkt zu löschen und es komplett neu anzulegen. Das funktioniert leider nicht, wenn Teile dieses Produktes. Z. B. Preisinformationen von einem zweiten System/Person upgedatet werden.

Meine Frage ist nun, bietet die Shopware 6 API eine vernünftige Lösung für dieses Problem?

Ich möchte zum Beispiel alle Customfields/Properties/Visibilities etc… eines Produktes durch die Customfields/Properties/Visibilities etc… ersetzen, die ich per Payload sende.

Es scheint als würde Shopware 5 sogenannte „merge-modes“ anbieten. Mit denen sich das Ganze zumindest teilweise umsetzen ließe.

Gibt es in Shopware 6 so etwas Ähnliches? Oder zumindest die Möglichkeit, ein Produkt teilweise zu löschen? Ohne jedes Property/Customfield/Image etc… manuell löschen zu müssen.

Letzteres ist meine aktuelle Lösung. Dieser Ansatz bringt viele Nachteile mit sich, einer davon ist der dadurch entstehende Overhead.

Vielleicht habe ich etwas übersehen. Ich bin dankbar für jeden Input.

Beste Grüße, Dennis

Ich häng mich hier mal ran. Das Updaten von Produkten in Shopware 6 per API ist echt nicht optimal gelöst. Bei Custom Fields ist es ja noch wirklich einfach, da kann man die Werte per Payload überschreiben. Bei den Relations wie Eigenschaften (product_property) und Bildern (media) ist das wieder eine ganz andere Nummer.
Das mit dem Löschen und komplett neu anlegen funktioniert bei uns wiederum nicht, da man beim Anlegen den Stock mitgeben muss und der kommt von einem Drittsystem. D.h. wenn wir den Weg des Löschen und Neuanlegen gehen würden, müssten wir bei jedem Update ein Dummy Stock mitgeben, der dann für eine gewisse Zeit im Shop rumschwirrt.

Daher verfolge ich aktuell den Weg, beim Update die Artikel vorher abzufragen, die zurückgemeldeten Werte der PropertyIds per „delete“ Payload zurückzusetzen und dann das Produkt upzudaten.

Wäre mal interessant zu wissen, ob es andere Best-Practice Ansätze gibt.

Viele Grüße
Ramin