x-session übermittelt werden. Mehr dazu hier.
Unterstützte Methoden
Angabe aller Unterstützten Methoden.| Befehl | Endpunkte | GET | PUT | POST | DELETE |
|---|---|---|---|---|---|
| Warenkorb lesen | basket/item/get | ||||
| Produkt(e) hinzufügen | basket/item/add | ||||
| Warenkorbposition ändern | basket/item/update | ||||
| Warenkorbposition entfernen | basket/item/delete |
Methoden für den Warenkorb
Diese Methoden steuern den Warenkorb im Shop. Sie können den aktuellen Warenkorb auslesen, Produkte in der gewünschten Menge hinzufügen, bestehende Positionen ändern oder wieder entfernen.GET basket/item/get
Der folgende Aufruf liefert den aktuellen Warenkorb mit allen Positionen und Summen (Netto/Brutto/Steuer). Die Daten unter „items[].product” repräsentieren den Zustand des Produkts zum Zeitpunkt, als es in den Warenkorb gelegt wurde. Ändert sich beispielsweise der Preis während des Bezahlvorgangs, wird die Bestellung trotzdem zum ursprünglichen, im Warenkorb gespeicherten Preis abgeschlossen. So werden Fehler oder Nachberechnungen verhindert.
Welche Produktdaten in „items[].product” enthalten sind, wird in der Konfiguration der benutzerdefinierten Produktfelder festgelegt.
Mehr dazu hier: content - Katalog (Kategorien & Produkte).Dieser Befehl kann zum Anzeigen des Warenkorbs verwendet werden. Beispiel-Aufruf für das Anzeigen des aktuellen Warenkorbs
Parameterübersicht
Header-Parameter
| Parameter | Typ | Beschreibung |
|---|---|---|
x-session | string | Pflichtfeld ID der aktuellen Session. Mehr Informationen dazu: Storefront API Basics |
Beispiel Response
POST basket/item/add
Mit diesem Aufruf wird ein Produkt in der gewünschten Menge in den Warenkorb gelegt. Durch mehrmaliges Ausführen des Befehls können mehrere Produkte hinzugefügt werden. Der Befehl kann verwendet werden, um ein Produkt zum Warenkorb hinzuzufügen. Falls mehrere Produkte hinzugefügt werden sollen, muss der Befehl entsprechend oft ausgeführt werden. Beispiel-Aufruf für das Hinzufügen von drei Einheiten des Produktes mit der ID71-3953und der Geschenknachricht “Alles Gute!” zum Warenkorb
Beispiel Request
Parameterübersicht
Header-Parameter
| Parameter | Beschreibung |
|---|---|
x-session | Pflichtfeld ID der aktuellen Session. Mehr Informationen dazu: Storefront API Basics |
Body-Parameter
| Parameter | Typ | Beschreibung |
|---|---|---|
productId | string | ID des Produkts, das in den Warenkorb gelegt werden soll. |
quantity | int | Gibt an, wie oft das Produkt in den Warenkorb gelegt werden soll. |
freeFields | Objekt (String → String) | Freie Schlüssel/Wert-Paare, die an der Position angehängt und in die Bestelldaten exportiert werden können. |
Beispiel Response
Fehlercodes
| Fehlercode | Beschreibung |
|---|---|
invalidProductId | Das angefragte Produkt existiert nicht. |
invalidVariantId | Die angefragte Variante existiert nicht. |
insufficientAmount | Es sind nicht genügend Produkte auf Lager. |
quantityExceeded | Die maximal erlaubte Anzahl für dieses Produkt wurde überschritten (zusätzliche Details unter “details” - siehe unten). |
childProductOnly | Das Produkt kann nur als Bestandteil eines Sets bestellt werden. |
expressCheckoutNotAllowed | PayPal Express Checkout ist aktiv - der Warenkorb darf aktuell nicht verändert werden. |
noVariantFound | Für ein Variantenprodukt wurde keine Variante angegeben (Produkt-ID enthält keine Variantenauswahl). |
PUT basket/item/update
Mit folgendem Aufruf kann man eine bestehende Warenkorb-Position aktualisieren bzw. ändern, typischerweise die Menge. Er ist für Mengenänderungen im Warenkorb verwendbar. Beispiel-Aufruf für das ändern der Warenkorbposition mit der ID0921e5b44dcd6034248fauf die Menge 2
Beispiel-Request (Menge einer Position auf 2 reduzieren)
quantity auf 0 gesetzt wird, wird die Position aus dem Warenkorb entfernt. Alternativ kann die Position auch über DELETE basket/delete gelöscht werden.
Parameterübersicht
Header-Parameter
| Parameter | Beschreibung |
|---|---|
x-session | Pflichtfeld ID der aktuellen Session. Mehr Informationen dazu: Storefront API Basics |
Body-Parameter
| Parameter | Typ | Beschreibung |
|---|---|---|
basketItemId | string | Pflichtfeld ID der Warenkorb-Position (entspricht items[].id aus dem Warenkorb. |
quantity | int | Pflichtfeld Neue Menge der Position. |
productId | string | Ändert in einer bestehenden Warenkorb-Position das zugehörige Produkt (z.B. wechsel der Größe / Farbe / Variante). Beispiel: T-Shirt M → T-Shirt L (gleiches Modell, andere Variante) |
freeFields | Object (String → String) | Neue freie Schlüssel/Werte-Paare für die Position (werden in Bestelldaten exportiert). Beispiel: Personalisierung des Produkts. "freeFields": { "engraving": "A.K.", "giftMessage": "Alles Gute!", "costCenter": "MKT-2025-11", "configId": "cfg_7f2a9" } |
Beispiel-Response
Fehlercodes
| Fehlercode | Beschreibung |
|---|---|
invalidBasketItemId | Die angegebene Positions-ID gehört nicht zum aktuellen Warenkorb. |
insufficientAmount | Nicht genügend Bestand, um die gewünschte Menge zu setzen. |
quantityExceeded | Die maximal erlaubte Anzahl für dieses Produkt wurde überschritten. Zusätzliche Details siehe unten. |
itemNotChangeable | Die Position darf nicht verändert werden (z.B. automatisch hinzugefügter Artikel) |
invalidChildItem | Das angefragte Produkt ist ein Set und verweist auf ein nicht existentes Set-Unterprodukt (Datenfehler zum Produkt). |
expressCheckoutNotAllowed | Ein Express-Checkout ist aktiv - der Warenkorb darf aktuell nicht verändert werden. |
DELETE basket/item/delete
Mit folgendem Aufruf kann eine bestehende Warenkorb-Position dauerhaft entfernt werden. Mit diesem Befehl können Artikel aus dem Warenkorb entfernt werden. Beispiel-Aufruf für das Löschen des Produktes mit der Item-ID0d1b062c8225f817aa3e
Beispiel-Request
Parameterübersicht
Header-Parameter
| Parameter | Beschreibung |
|---|---|
x-session | Pflichtfeld ID der aktuellen Session. Mehr Informationen dazu: Storefront API Basics |
Body-Parameter
| Parameter | Typ | Beschreibung |
|---|---|---|
basketItemId | String | Pflichtfeld ID der Warenkorb-Position (entspricht items[].id im Warenkorb). |
Beispiel-Response
Fehlercodes
| Fehlercode | Beschreibung |
|---|---|
invalidBasketItemId | Die angegebene ID gehört nicht zum aktuellen Warenkorb. |
basketItemIsSetChild | Es wurde versucht, einen Set-Unterartikel einzeln zu entfernen. Unterartikel werden automatisch mit dem zugehörigen Set-Oberartikel entfernt und können nicht separat gelöscht werden. |
itemNotRemovable | Die Position darf nicht entfernt werden (z.B. automatisch hinzugefügter Artikel). |
expressCheckoutNotAllowed | PayPal Express ist aktiv - der Warenkorb darf derzeit nicht verändert werden. |
