Plenty Update Variations - Warning PriceCalculationId Pflichtspalte?

Hallo,


bei meinem Plenty UpdateVariations REST Step, welcher nur dafür zuständig sein soll Produkte auf Aktiv/Inaktiv zu setzen, sprich er enthält NUR die Felder: ItemID, VariantID und IsActive, erhalte ich die Fehlermeldung:


WARNING:PUT https://www.styledorado.de/rest/items/174848/variations/512801 HTTP/1.1
{"error":{"message":"validation error found"},"validation_errors":{"priceCalculationId":["price calculation id muss mindestens 1 sein."]}}


Für mich hört sich das so an, als wäre das Feld priceCalculationId ein Pflichtfeld?

Laut Synesty- und Plentymarketsdoku ist dieses Feld jedoch optional.

Ist das eventuell ein bekannter Fehler von Plenty? Synesty gibt ja nur die Meldung von Plenty wieder aus.

Ich wüsste auch nicht wieso ich jedes mal eine PreiskalkulationsId angeben müsste wenn ich diese gar nicht verändern möchte.



Hallo Florian,


ich habe den Step gerade nochmal mit ItemID, VariantID und IsActive getestet und es hat ohne Fehlermeldung funktioniert. Das Feld ist kein Pflichtfeld und die Fehlermeldung kommt im Normalfall nur, wenn die priceCalculationId nicht leer und <1 ist.

Ich habe im Plentyforum keinen aktuellen Eintrag zu dem Fehler gefunden und bisher hatten wir noch keine Probleme mit der priceCalculationId. Kannst du es bitte nochmal versuchen und falls es immer noch nicht funktioniert einen Support Nutzer anlegen.


Viele Grüße

Torsten


Hallo Torsten,


der Fehler besteht leider weiterhein.

Supportnutzer ist eingerichtet. Das ganze lässt sich im "Update-Flow" nachvollziehen.

Der Fehler tritt übrigends nur bei dem derzeit dort eingestellten Lieferanten/Datenbank auf.

Bei allen anderen funktioniert der Step problemlos was ich etwas merkwürdig finde, aber vielleicht seht ihr da ja als Admins etwas mehr als ich.


Viele Grüße

Florian

Hallo Florian,


die Varianten haben scheinbar schon eine ungültige price calculation id (=0) hinterlegt, was beim Update der Variante zu dem Fehler führt. Ich konnte das in unserem Testsystem nachstellen. Ich bin mir nicht sicher wie die 0 bei dir gesetzt wurde.


Du kannst im Plenty Backend bei den betroffen Varianten in der Selectbox für die Preiskalkulation den leeren Wert auswählen und speichern. Dann sollte das Update über die REST API auch wieder funktionieren.


Falls es sehr viele Varianten betrifft, könntest du auch den SpreadsheetUrlDownload mit folgenden Einstellungen verwenden:


host = ${shopurl_url}/rest/items/${ItemID}/variations/${VariationID}

method = PUT

requestBody = { "priceCalculationId" : null}

requestHeaders = Authorization=Bearer ${token}

bodyContentType = application/json; charset=UTF-8

evtl. noch rateLimitPerSecond = 1.2 falls der Shop nicht von der REST Limitierung ausgeschlossen ist


Den Token kannst du dir über den PlentyRESTAuthenticate holen.


Viele Grüße

Torsten

Hallo Torsten,


der Fehler besteht leider weiterhin. Ich habe das ganze nun nochmal probiert.

Leider wird mit der Angabe null der Wert nicht überschrieben, die 0 bleibt leider bestehen.

Ich habe das ganze nun nochmal manuell nachvollzogen. Scheinbar muss nur bei der Hauptvariante null gesetzt werden. Blöd, dass ich das nicht herausfinden kann würde Calls sparen. Letztlich klappt das null-setzen eigentlich. Warum es bei der mehrfachen Flowausführung nicht klappen wollte kann ich nicht sagen. Eventuell waren ja Zeilenumbrüche oder Leerzeichen bei der ItemID / VariantID das Problem ?
Ich habe diese vorsogrlicherweise mal mittles ?trim entfernt und gebe nochmal beschied ob nun alles klappt.