Neu Erfahrungen gesucht: Custom Shop (Next.js/React) an JTL-Wawi anbinden

JoeKyx

Mitglied
7. Februar 2025
19
1
Hallo zusammen,

ich wende mich mit einer Frage an euch, die an der Schnittstelle zwischen Softwareentwicklung und JTL-Wawi liegt, und hoffe auf eure Erfahrungen und Tipps.

Unsere aktuelle Situation:

Wir betreiben eine Ankaufsplattform für Videospiele, Konsolen und Zubehör. Die Website habe ich komplett selbst in Next.js (React / JavaScript) entwickelt. Der Prozess sieht so aus:

  1. Kunden verkaufen ihre Artikel über die Website an uns.
  2. Nach Wareneingang und Prüfung werden die Artikel automatisch per API (zukünftig eventuell per Ameise) in unsere JTL-Wawi übertragen.
  3. Aus der Wawi heraus verkaufen wir die Artikel aktuell über eBay und Amazon.
Unser Vorhaben:

Nun möchten wir den nächsten logischen Schritt gehen und unsere Ankaufsplattform um einen eigenen Verkaufsshop erweitern. Die in der JTL-Wawi gepflegten Artikel sollen also direkt auf unserer Website zum Verkauf angeboten werden. Einen Umweg über ein externes Shopsystem wie Shopify möchten wir bewusst vermeiden, um alles aus einem Guss zu halten und eine nahtlose Integration zwischen An- und Verkauf zu schaffen. Den Shop-Teil würde ich ebenfalls selbst in unserem bestehenden Next.js-Stack programmieren.

Meine konkreten Fragen:

Hat jemand von euch bereits einen "Headless"-Shop oder eine Eigenentwicklung auf Basis von JavaScript (idealerweise React / Next.js) an die JTL-Wawi angebunden?

Mich würden eure Erfahrungen zu folgenden Punkten brennend interessieren:

  • JTL-Connector: Wie gut lässt sich der Standard-JTL-Connector für solche Custom-Anbindungen nutzen? Gibt es hier Stolpersteine oder Best Practices?
  • Alternative Wege: Wäre eine direkte Kommunikation mit der JTL-Wawi API vielleicht der bessere Weg? Oder gibt es andere Lösungsansätze, die ihr empfehlen könnt?
  • Allgemeine Tipps: Gibt es generelle "Dos & Don'ts" bei der Anbindung eines externen, selbst programmierten Frontends an die Wawi?
Ich freue mich über jede Idee, jeden Tipp und Erfahrungsbericht!

Vielen Dank im Voraus und liebe Grüße,
Joe
 

dapole

Sehr aktives Mitglied
27. Oktober 2014
134
27
-> Sehr interessantes Thema ....

Wäre auch interessiert an sowas, bzw., an der Umsetzung.
-> Hintergrund: Es gibt Anbieter (z.B Zahlengrafik) -> Diese bieten ja auch eine 'eigene' Schnittstelle für den ShopifyShop an.

-> Mich würde interessieren, wie das denn geht? Also, kann man in der Verkaufskanalverwaltung:

Verkaufskanal: Drittshop - JTL Connector

-> Gibt es dazu ne Dokumentation? Ist / soll das überhaupt zugänglich sein?

Um aber auch etwas zum Thema beizutragen:

Also: Da ich keine Ahnung habe3, ob mir jemand die Frage oben beantworten kann, würde ich versuchen, dass über die API der WaWi zu realisieren.

Ist zwar momentan in der Beta, aber läuft eingetl ganz rund. Mittlerweile machen wir recht viel damit. Von Triggern von Workflows bis hin zu 'Auftragssplitt' ( Was nie produktiv eingesetzt wurde )

-> Was momentan noch nicht per API geht, zumindest hab ich es nicht gefunden:

- Sendungsdaten per API in die wawi übertragen ( Was aber bei einer Anbindung eines Shops ja nicht notwendig wäre, da ja Sendung-Daten aus der wawi in Shop müssen)
- Produktlisting müsste wie folgt ablaufen: Der Shop 'ruft' Produkte ab ( Standard: Wawi sendet)

API kann ja abgesprochen werden und 'gibt' antworten, ob man mit dem Prinzip alle Anforderungen abbilden kann, ist nur schwierig einzuschätzen ...
( Beispiel: Artikel wird über anderen Verkaufskanal verkauft: Wie bekommt der Shop das mit ? ; Natürlich könnte man alle 5 Minuten ne Art Prüfung durchführen - Serverseitig ...


Möglich per API: Bestimmt! Aber man muss schon kreativ sein, um das umzusetzen :)

Auf jeden fall spannendes Projekt! Ich würde gerne den Shop sehen ... :)
Aus reiner Neugier :)

Hoffe ich konnte zumindest etwas Input geben :)
 
  • Gefällt mir
Reaktionen: JoeKyx

john vick

Neues Mitglied
29. August 2025
2
0
Hi Joe,


spannendes Vorhaben – und du bist nicht der Erste, der JTL-Wawi als zentrales Warenwirtschaftssystem nutzen und ein eigenes, modernes Frontend (Next.js) davorstellen möchte. Ich gebe dir mal ein paar Impulse und Stolperfallen, die sich aus ähnlichen Projekten ergeben haben:




1. JTL-Connector


  • Der Standard-Connector ist eigentlich auf bestehende Shopsysteme wie Shopware, Shopify, WooCommerce etc. ausgelegt.
  • Für eine Eigenentwicklung musst du quasi einen Custom-Connector bauen, der sich an die JTL-Connector-Architektur hält (es gibt Doku dazu).
  • Vorteil: Du profitierst von den bereits etablierten Prozessen in JTL (Produktpflege, Bestandsführung, Bestellabwicklung).
  • Nachteil: Der Connector-Standard ist relativ strikt. Ohne Anpassung stößt man bei individuellen Features schnell an Grenzen. Viele Entwickler berichten, dass man am Ende doch deutlich mehr selbst programmieren muss, als man anfangs denkt.



2. Direkte API-Kommunikation


  • Die JTL-Wawi selbst hat keine offizielle, vollumfängliche REST-API.
  • Es gibt aber die JTL-Wawi Ameise (eher für Im-/Export, nicht für Live-Integration).
  • Häufig genutzt wird die JTL-Wawi RemoteApp/Worker-API (SOAP-basiert, kein modernes REST, aber nutzbar).
  • Vorteil: Mehr Flexibilität, du bist nicht an Connector-Konventionen gebunden.
  • Nachteil: Du musst viel selbst modellieren (Bestellprozesse, Zahlungsabgleich, etc.), also höherer Entwicklungsaufwand.



3. Mögliche Hybrid-Lösung


  • Viele machen es so: Artikel, Bestände und Preise via Connector/Ameise nach außen geben, aber Bestellungen über eine eigene API-Schnittstelle zurück in die Wawi schreiben.
  • Dadurch kannst du dein Frontend (Next.js) sauber aufbauen, musst aber nicht alles komplett neu erfinden.



4. Dos & Don’ts


Do:


  • Von Anfang an genau definieren, welche Datenflüsse du brauchst (Artikel → Shop, Bestellung → Wawi, Kunde → Wawi etc.).
  • Auf Caching setzen: Wawi ist nicht für „Realtime-Requests“ gebaut, sondern für synchrone Abgleiche in Intervallen.
  • Trenne strikt Frontend (Next.js) und Integration-Layer (z. B. eine Middleware-API in Node.js) – so bleibt dein Code sauber.

Don’t:


  • Keine direkte DB-Abfrage gegen die Wawi-SQL-DB – das macht dich extrem update-anfällig.
  • Nicht erwarten, dass JTL „API-first“ ist – es ist ein klassisches Warenwirtschaftssystem, d. h. viele Prozesse sind auf Windows/Client ausgerichtet.



5. Community-Erfahrung


Die meisten, die sowas umgesetzt haben, berichten:


  • Machbar ja, aber du brauchst einen klaren Integrationslayer, sonst baust du dich in eine Sackgasse.
  • Langfristig lohnt sich der Aufwand, wenn du die volle Kontrolle über dein Frontend willst.



👉 Mein Tipp für den Start:
Teste zunächst, wie weit du mit einem Custom-Connector kommst. Wenn du merkst, dass deine Use-Cases zu speziell sind, bau dir eine eigene Node.js-Middleware, die Bestände/Artikel aus der Wawi zyklisch zieht (z. B. alle 15 Min) und Bestellungen zurückschreibt.
 

no80

Sehr aktives Mitglied
28. Juni 2023
459
57
Es gibt mehrere Wege.
Du solltest nah an JTL Standard bleiben, Update sicher.
Wir haben ein einfachen „ connector“ für Auftragsimport und Bestand/Preis Sync gemacht.

import der Aufträge via Ameise und Sync über die DB.
 

ple

Sehr aktives Mitglied
20. August 2019
724
147
Durch Zufall drauf gekommen, also mir bauen gerade was ähnliches bzgl. Ankaufshop. Jedoch bleiben wir in der wawi Welt.
Wir haben die Advanced Edition, da gibt es den Cfe Shop gratis zum Full Shop , also 500 Artikel.
Den cfe Shop nutzen wir für Ankäufe.
Wawi 2ten Mandanten, der sich um den cfe Shop kümmert mit den ankaufsartikeln.
Die Artikel, die man ankauft müssten dann halt nur angelegt werden, oder irgendwie anders.
Naja, ist vielleicht nur ein Denkanstoß, vielleicht kann man was draus machen
 

merres

Aktives Mitglied
28. März 2024
96
74
@john vick Nice try, AI-John, aber wenn du schon AI verwendest, um deine Beiträge zu schreiben, schau bitte auch, dass du aktuelle Infos verwendest. Natürlich hat JTL-Wawi mittlerweile eine Rest-API ;)

@OP: Ich habe es selbst noch nicht umgesetzt, würde aber dazu tendieren ein ordentliches Shop-Backend wie https://github.com/medusajs/medusa mit Next zu connecten. Dann über Medusa direkt an die Wawi per API oder auf die DB (wenn man weiß, was man tut).
Ist skalierbarer als selbst was zu basteln.