JosmaJosma MemberComments: 3 Received thanks: 0 Member since: October 2019

Hallo Forum!

Da ich über die Suche hier und bei Google leider nicht fündig geworden bin versuche ich es einmal hier im Forum ob es eine klare Antwort dazu gibt.

Ich möchte per REST API den Status einer Bestellposition aktualisieren.

Ich bekomme von der orderResource zwar ein OK zurück, nur es wird nichts aktualisiert.

Ich verwende die REST API auch zum abgleichen der Bestellungen und Artikeldaten mit einer Warenwirtschaft. das funktioniert auch ganz gut. Ich finde nur keinen weg über die API den Status einer Bestellposition zu ändern. Hintergund wofür das gebraucht wird ist der, das durch das setzen des Status bei einer Bestellposition ja dann nur für diese Position der Bestellung eine Gutschrift ausgelöst wird zum Beispiel.

Für die ganze Bestellung klappt das ohne Probleme, aber nicht für eine einzelne Position.

Daher die Frage geht das überhaupt über die API?

Ich habe im Forum einen Beitrag über orderDetailsAttributes gefunden. leider konnte ich das aber nicht so anpassen, das er die orderdetails aktualisieren würde.

JSON string sieht folgendermasen aus:

{
  "id": 57,
  "details": [
    {
      "id": 81,
      "orderId": "57",
      "statusId": 3
    }
  ]
}

hta jemand so etwas schon gemacht bzw. weiß ob das über die API möglich ist?

Answers

  • NextMikeNextMike MemberComments: 2781 Received thanks: 441 Member since: December 2014

    Hast Du hier schon geschaut? https://developers.shopware.com/developers-guide/rest-api/examples/order/#example-4-creating-an-order

    Es gibt bei den Details das Feld "statusId"

  • JosmaJosma MemberComments: 3 Received thanks: 0 Member since: October 2019

    Hi NextMike!

    ja natürlich. das habe ich schon gesehen.

    Leider geht es da aber nur um eine Anlage einer kompletten Bestellung.

    das will ich gar nicht machen.

    ich möchte nur den status einer Bestellposition ändern. das Feld heißt statusId (siehe JSON oben) . Aber leider passiert nichts, wenn man den request absetzt. Bzw schon. es kommt OK 200 zurück. keine Fehlermeldung oder ähnliches...

    Aber es ändern sich keine Daten. es bleibt alles gleich.

    Ich befürchte fast, das man bei der Bestellposition den Status nicht ändern kann über die API...

    die Version von Shopware ist übrigens 5.6.1

     

     

  • ManeMane MemberComments: 1 Received thanks: 0 Member since: September 16

    Hi Josma.

    Hast du dazu weitere Infos herausgefunden? Ich versuche auch den Status von Positionen über die API zu setzen, was ja durchaus auch ein usecase ist, z.B. bei Teilstornierungen.

    Evtl. hast du auch einen Workaround gefunden, würde mich auf jeden Fall interessieren.

  • NextMikeNextMike MemberComments: 2781 Received thanks: 441 Member since: December 2014

    statusId ist doch unter details. Betrifft es nicht die Position?

  • JosmaJosma MemberComments: 3 Received thanks: 0 Member since: October 2019

    @ Mane:

    Nein, es hat nicht funktioniert. sprich die Positionen konnten nicht über die Api aktualisiert werden.

    Bzw habe ich bis dato keinen Weg gefunden.

    Sprich ich konnte das nicht lösen so wie ich es wollte.

    @NextMike:

    Ich denke schon. nur die API macht damit nichts...

Sign In or Register to comment.