Bulk update für Stock

Hallo,

da wir unsere Produkte bei verschiedenen Onlineshops anbieten müssen wir unseren zentralen Bestand stetig in unserem Shop aktualisieren.
Dafür haben wir eine Schleife welche regelmäßig den Bestand abgleicht und entsprechend die Produkte aktualisiert.
Zur Zeit unserer Implementierung war mir dafür kein besserer weg bekannt, als alle Produkte einzeln zu aktualisieren.

Durch unsere Große Menge an Produkten braucht diese Aktualisierung allerdings ewig.
Dadurch ist der Bestand in unserem Shop quasi nie aktuell.
Jetzt habe ich gehofft das ganze über den Sync Endpunkt besser umsetzen zu können.

Habe gehofft das ganze mit einer möglichst minimalistischen Payload zu machen.
Hier meine Testpayload:

{
  "update-stock": {
    "entity": "product",
    "action": "upsert",
    "payload": [
      {
        "productNumber": "<meine produkt nummer",
        "stock": 10,
      }
    ]
  }
}

Bekomme aber immer die Fehlermeldung, dass Preis, Name und TaxId fehlen.
Ich will ja nur den Stock updaten…
Kann mir hier wer helfen?

Du musst die id angeben, nicht die productNumber. Ansonsten möchte die api einen neues Produkt anlegen und dafür werden dann auch tax usw. benötigt.
Und dann klappt das auch mit mehreren Produkten gleichzeitig, so wie du es vor hast.

Ah super vielen Dank!
Jetzt klappt es!
Dann mach ich mich mal dran meine Implementierung anzupassen :smiley:

Hallo,
ich versuche gerade auch einen Bulk Update der Bestande:

{
  "update-stock": {
    "entity": "product",
    "action": "upsert",
    "payload": [
      {
        "productNumber": "bbef100e9d8f979b5c1062be572a8d90",
        "stock": 1
      },
      {
        "productNumber": "6b5b06aa8749075888e9cadeb36280ba",
        "stock": 2
      },
      {
        "productNumber": "5f1e17e39851613bac7f5cad7a4fc23e",
        "stock": 3
      }
    ]
  }
}

Allerdings bekomme ich eine Fehlermeldung:

"errors": [
        {
            "code": "c1051bb4-d103-4f74-8988-acbcafc7fdc3",
            "status": "400",
            "detail": "This value should not be blank.",
            "template": "This value should not be blank.",
            "meta": {
                "parameters": {
                    "{{ value }}": "null"
                }
            },
...
Anscheinend soll noch die TaxId und der price mitgegeben werden.
Ist das richtig?