Zum Hauptinhalt springen

Wie kann ich die Pickware API zur Automatisierung nutzen?

Pickware API für Shopware 6: Zugang zur GraphQL-API, REST-Endpunkte mit Postman-Collection und Bestandsbuchung aus externen Systemen.

In diesem Beitrag zeigen wir dir, wie du unsere API nutzen kannst, um verschiedene Lager- und Bestandsmanagement-Aufgaben zu automatisieren. Unsere API bietet dir flexible Möglichkeiten, um Bestellungen zu versenden, Lagerbestände zu verwalten und Produktinformationen abzurufen.

Hinweis: Die hier beschriebene REST-API soll langfristig durch die neue GraphQL-API abgelöst werden. Für Shopware 6 ist die GraphQL-API noch nicht freigeschaltet, bis dahin nutzt du die hier beschriebene REST-API.

API-Dokumentation und Postman-Collection

Um dir den Einstieg zu erleichtern, findest du anbei eine Postman-Collection. Postman ist ein kostenloses Tool für API-Entwicklung und -Testing, das Entwicklern ermöglicht, API-Anfragen zu erstellen und zu testen. Diese enthält detaillierte Informationen zu allen verfügbaren Endpunkten, Anfrageformaten und erwarteten Antworten. In der Collection befinden sich auch Beispielanfragen, die du in deiner Testumgebung ausführen kannst.

Den Downloadlink zur Collection findest du am Ende dieses Beitrags. Diese kannst du wie hier beschrieben in Postman importieren.

Um die REST-API über die Postman-Collection anzusprechen, legst du in der Shopware Admin eine neue Integration an. Die dabei erzeugte ID und den Sicherheitsschlüssel trägst du in der Postman-Collection ein.

Verfügbare Endpunkte

Unsere API für Lager- und Bestandsmanagement bietet dir aktuell Zugriff auf eine Reihe von Endpunkten, die speziell für die Optimierung von Lager- und Bestandsprozessen entwickelt wurden. Hier ist eine Übersicht der verfügbaren Endpunkte:

  1. POST Ship order completely: Dieser Endpunkt ermöglicht es dir, eine Bestellung als vollständig versendet zu markieren. Dabei werden die Bestände der Produkte aus der Bestellung ausgebucht.

  2. POST Move stock to and from stock locations: Mit diesem Endpunkt kannst du Bestände zwischen verschiedenen Lagerorten verschieben. Über diesen Endpunkt können auch Ein- und Auslagerungen vorgenommen werden.

  3. POST Get all stocks by bin location id: Dieser Endpunkt liefert dir eine Liste aller Bestände, sortiert nach der ID des Lagerplatzes, die sich auf spezifischen Lagerplätzen befinden.

  4. POST Get all stocks by bin location code: Ähnlich wie der vorherige Endpunkt, liefert dir dieser Endpunkt eine Liste aller Bestände auf einem Lagerplatz, jedoch erfolgt die Suche & Sortierung hier anhand des Lagerplatz-Codes.

  5. GET Get product stock: Mit diesem Endpunkt kannst du den aktuellen Bestand eines bestimmten Produkts abfragen.

  6. PATCH Update total product stock: Dieser Endpunkt ermöglicht es dir, den verfügbaren Bestand eines Produkts zu aktualisieren. Auf Basis des eingegebenen Bestands werden entweder Ein- oder Auslagerungen nach unserer Buchungsstrategie vorgenommen.

Bestände aus externen Systemen buchen

Soll ein externes System wie ein Fulfillment-Dienstleister oder ein Kassensystem Bestände in Pickware ändern, nutze dafür die Pickware-Endpunkte. Zwei naheliegende Wege führen nicht zur gewünschten Bestandsbuchung:

  • Lieferstatus auf Versandt setzen: Das ändert nur den Status. Ausgebucht wird nur beim Versand über den Button Bestellung versenden an der Bestellung, über die WMS App oder über den Endpunkt POST Ship order completely.

  • Shopware-Feld stock schreiben: Schreibt ein externes System über die Shopware-API in das Feld stock, setzt Pickware den verfügbaren Bestand auf diesen Wert und bucht dafür Bestand im Lager ein oder aus.

Für Bestandsänderungen aus externen Systemen nutze stattdessen POST Move stock to and from stock locations (/api/_action/pickware-erp/stock/move). Gib als source den Wert unknown an. Als Ziel gibst du destination.binLocation.id an, für den Standardlagerplatz eines Lagers destination.warehouse.id.

Achtung: Generische Endpunkte wie pickware-erp-goods-receipt sind nicht zum Anlegen oder Löschen gedacht. Folgeprozesse wie Preisermittlung und Bestandsbuchung laufen dabei nicht korrekt.

Support und Feedback

Solltest du Fragen haben oder Unterstützung bei der Nutzung der API benötigen, steht dir unser Support-Team gerne zur Verfügung. Zögere nicht, uns zu kontaktieren, falls du Vorschläge oder Feedback zur Verbesserung unserer API hast. Hier gelangst du zum Kontaktformular.

Hat dies deine Frage beantwortet?