HeyDierk! @Dierk
Schauen wir mal was wir finden können. Ihr wollt also den Bestellungsstatus von einer externen Quelle aus aktualisieren können übers Admin-Rest-API. Mit “Versendet” meinst du “Als ausgeführt markieren” nehme ich an… Und habt ihr das mit Testbestellungen getestet?
Und sollen die Bestellungen einzeln oder in Bulk “Als ausgeführt” markiert werden? Welchen Stack verwendet ihr, Python, Django, python shopify sdk? In diesem Leitfaden wird das auch besprochen allerdings handelt es sich da um digitale Produkte die anders als physische Produkte erfüllt werden.
Leider scheinen meine Angaben unten etwas Konfus zu sein - einerseits geht es scheinbar und doch geht es nicht… Im grossen und ganzen ist es schwierig , zu implementieren aufgrund folgender Würmer im System.
Dann muss man noch dazu beachten, dass die Bestellung als “ausgeführt markieren” übers Admin-Rest-API wird nicht unbedingt andere verwandte Statuse updaten wie “Sendungsdetails an Kunden versendet” oder “Bestand aktualisieren” (reassign_inventory) usw. Es kann auch in einer Bestellung mehrere Positionen geben von denen vielleicht nur eine erfüllt wird und die anderen erst später. Daher von der technischen Seite her vermute ich auch, dass eine der Einschränkungen darin besteht, dass eine Bestellung mehrere Erfüllungen haben kann, so dass auch die Bestellung selbst mehrere Versandstatuse haben kann. Das würde die Filterung erschweren und die Suche nach Bestellungen anhand des Status zu einer Herausforderung machen. Aber ggf. kann das Anlegen einer Erfüllung wie hier angegeben die Bestellung erfüllen.
Ein typischer POST Request und Endpoint wäre so was wie dieses Beispiel den man an https://meinTestShop.myshopify.com/admin/api/2021-01/orders/123456789123/fulfillments.json mit einem payload wie das folgende schickt:
{"fulfillment": {"location_id": 1234567890, "shipment_status": "fulfilled"}}
Endpoint: orders/123456789123/fulfillments
Params: {:fulfillment=>{:location_id=>"12345678", :tracking_number=>nil, :tracking_url=>"https://www.meinshop.de/?externalSearchQuery=ALQB133170", :line_items=>[{:id=>"1600080642091", :quantity=>1}]}}
Es scheint aber, als gäbe es keine native Shopify-Lösung, um die Bestellungen des Onlineshops als geliefert zu markieren. Der shipment_status ist eine Eigenschaft des Fulfillment object, so dass der Status “Geliefert” nicht in der Bestellung selbst angezeigt wird. Es scheint auch, dass beim Posting über unsere API an die Fulfillment Events API man den Status nicht als “zugestellt” im event_object markieren kann, und ich glaube nicht, dass dies derzeit über die API möglich ist.
Dieser Developer Guide beschreibt, wie externe Fulfillment-Service-Anbindungen die Admin-API nutzen können, um Fulfillments in Shopify zu verwalten. Wenn die Anbindung einen FulfillmentService-Standort verwaltet (z. B. ein Lager eines Drittanbieters, der Bestellungen im Auftrag des Ladenbesitzers vorbereitet und versendet), dann folge diesem Leitfaden. Wenn deine App keinen FulfillmentServiceLocation verwaltet, sondern Bestellungen zuweist, die vom Händler oder von Drittanbietern erfüllt werden sollen, dann kannst du unserem Leitfaden zur Verwaltung von Fulfillments als App zur Bestellverwaltung folgen.
Lass wissen, wenn du weitere Fragen hast zum obigen Thema oder generell zu deinem Shop und Business und gerne können wir das hier weiter besprechen!
2022 wird dein Jahr! Haltet Abstand und bleibt Gesund.