JTL reaktiviert keine Angebote mehr auf Otto

fashioncase

Sehr aktives Mitglied
6. Februar 2018
233
79
Wenn man den Otto Shop Hackne in JTL entfernt und das Angebot somit beendet, deaktiviert JTL diese Angebote auf Otto (das ist korrekt und ist auch die einzige Möglichkeit, weil man bei Otto die Angebote nicht endgültig löschen kann).

Setzt man später beim geleichen Artikel den Otto Shop Hackne in JTL, passiert nichts mehr. JTL aktiviert seit ca. Juni 2026 keine Angebote mehr bei Otto, die zuvor deaktiviert wurden. Die Angebote bleiben bei Otto deaktiviert.
 

neoautark

Neues Mitglied
28. September 2026
5
1
FFM/HH
Das passt zu der Umstellung, die JTL für Juni 2026 dokumentiert hat. Angebot beenden setzt den Bestand auf 0 und deaktiviert die SKU bei OTTO. Laut FAQ soll man dieselbe SKU danach einfach neu über die Wawi einstellen können, ohne Freigabe in OPC.

Bei OTTO ist für so einen Fall aber ein eigener Schritt vorgesehen. JTL nimmt die Offer-ID aus der Wawi als Produktreferenz bei OTTO. Wenn beim Neueinstellen eine neue Offer-ID entsteht, hängt dieselbe SKU danach an einer neuen Referenz. Für genau diesen Fall schreibt OTTO in der API-Doku, dass die SKU ausdrücklich wieder aktiv geschaltet werden muss. Neue Produktdaten allein holen sie nicht zurück. Nur komplett neue SKUs starten automatisch aktiv.

Prüfen könnt ihr das in OPC: Hängt die SKU jetzt unter einer anderen Produktreferenz als vor dem Beenden und steht sie auf inaktiv, fehlt genau dieser Aktivierungsschritt.

Mehr zu Lesen gibts hier..

https://guide.jtl-software.com/jtl-eazyauction/faqglossar/faq-zu-otto-market
https://api.otto.market/docs/about-the-api/best-practices
 

fashioncase

Sehr aktives Mitglied
6. Februar 2018
233
79
In den FAQ schreibt JTL ausdrücklich: "Nach dem Beenden eines Angebots können Sie dieselbe SKU für ein neues Produkt verwenden."

OK, wir verwenden dieselbe SKU wieder und setzen den Hacken beim Otto Shop in JTL.
Das Angebot wird auf die bei Otto bestehende (deaktivierte) SKU gemappt.
Nach dem Abgleichen wird in JTL der Status "Eingestellt" angezeigt. Aber das Angebot bleibt auf Otto deaktiviert.

Otto hat uns auf Nachfrage bestätigt, dann man die Angebote per API wieder aktivieren soll. Es ist also per API möglich.
JTL weigert sich aber jedoch, die Aktivierung vorzunehmen (wurde vom JTL Support ausdrücklich bestätigt, dass es ab jetzt auch so bleiben wird und diese Angebote nie mehr durch JTL per API aktiviert werden). Sehr enttäuschend.

Wie hab ihr das Problem gelöst?
 

neoautark

Neues Mitglied
28. September 2026
5
1
FFM/HH
Wir haben dafür Custom Software/Code entwickelt.

Wir schalten die SKUs direkt über die OTTO-API wieder aktiv, an JTL vorbei. Man benötigt natürlich auf Otto seitens die API. Ist einfach zu bekommen.

Der Aufruf ist POST /v5/products/active-status mit SKU und active: true, bis 500 SKUs je Aufruf. Zwei Stellen, an denen wir hängen geblieben sind:

1. Der Content-Type muss application/json;charset=UTF-8 sein, sonst kommt 415.
2. Die Antwort ist nur ein Auftrag. Erst wenn der fertig ist, mit GET /v5/products/active-status nachlesen, ob die SKU wirklich aktiv steht.

https://api.otto.market/docs/functional-interfaces/products/#product-active-status

Grüße, Minh
 

fashioncase

Sehr aktives Mitglied
6. Februar 2018
233
79
Wirklich enttäuschend, dass man sich solche grundlegende Sachen selbst programmieren muss, obwohl man monatlich ziemlich hohe Beträge an JTL zahlt (((
 

neoautark

Neues Mitglied
28. September 2026
5
1
FFM/HH
Falls ihr es selbst angehen wollt, hier ein kleiner Leitfaden.

Das haben wir so im Einsatz und damit schon mehrere hundert SKUs auf einmal wieder aktiv geschaltet.

1. Zugang: eigener API-Zugang bei OTTO (Client-ID und Secret). Den Token holt man über POST /v1/token mit grant_type=client_credentials und scope=products. Ohne scope kommt trotzdem ein Token zurück, der aber nichts darf. Das hat uns eine Stunde gekostet.

2. Betroffene SKUs finden: GET /v5/products/active-status bei OTTO liefert alle SKUs mit active true/false, 100 je Seite, weiter über die Links in der Antwort.

Auch ein Weg, aber den bin ich nicht gegangen:
Auf JTL-Seite gibt es ab Wawi 2.1 den Aufruf GET /v2/marketplace/offers, der alle Marktplatz-Angebote mit Kanal und Status liefert (Status 4 = eingestellt, noch als beta markiert). Was dort für OTTO auf 4 steht und bei OTTO false ist, muss wieder an. Mit einer älteren Wawi bleibt nur die Liste unter Plattformen > Weitere Verkaufskanäle > Laufende Angebote, gefiltert auf OTTO und "Eingestellt", die sich aber nicht exportieren lässt.

3. Aktivieren: POST /v5/products/active-status mit {"status":[{"sku":"...","active":true}]}, bis 500 SKUs je Aufruf.

4. Nachlesen: Die Antwort enthält nur einen Link auf den Vorgang (/v5/products/update-tasks/...). Den abfragen, bis state "done" ist. Es gibt nur "pending" und "done", also ein eigenes Zeitlimit setzen. Danach succeeded und failed prüfen und den Status nachlesen, für eine einzelne SKU über GET /v5/products/{sku}/active-status. Der Filter ?sku= auf der Liste nimmt nur eine SKU, mehrere liefern still eine leere Liste.

Täglich per Aufgabenplanung laufen lassen, dann bleibt nichts mehr hängen. Wenn ihr dabei hängen bleibt, meldet euch gern.
 

Ähnliche Themen