Zum Hauptinhalt springen

JTL-Wawi Anbindung & Rechnungskauf

BIS ERP mit JTL-Wawi verbinden — und Rechnungskauf an der Kasse vollautomatisch abrechnen lassen.

Überblick

BIS ERP kann sich vollständig in eine bestehende JTL-Wawi integrieren — bidirektionaler Datenabgleich, POS-Verkäufe als JTL-Aufträge und automatische Rechnungsstellung über JTL-Workflows.

Im typischen Setup behält JTL-Wawi die führende Rolle für Buchhaltung, OP-Verwaltung, DATEV-Export und Rechnungsdruck. BIS ERP übernimmt die operativen Aufgaben (Artikelpflege via BISView, Lagerstandsabgleich, Multi-Channel-Listings) und schreibt jeden POS-Verkauf als regulären JTL-Auftrag.

Rechnungskauf an der Kasse

Wenn ein Kunde an der BISpicy POS-Kasse auf Rechnung kauft, druckt JTL die Rechnung automatisch per Workflow — ohne dass jemand SQL anfassen oder etwas manuell anstoßen muss. Die Einrichtung dauert ca. 5 Minuten und ist unten Schritt für Schritt beschrieben.

Voraussetzungen

  • JTL-Wawi 1.8 oder 2.0+ mit REST-API-Server (für Artikel-/Bestandssync) und/oder MSSQL-Direktzugriff (für POS-Auftragsanlage). Der Code adressiert beide Schema-Varianten automatisch (in 2.0 liegen die Auftrags-Tabellen im Verkauf.-Schema, in 1.x direkt unter dbo.). Live im Echteinsatz getestet auf 2.0.2 — auf 1.8 erwartet kompatibel, da die Workflow-Engine-Tabellen seit Jahren stabil sind.
  • BISConnect-Client (Tauri/Windows) installiert auf demselben Rechner wie JTL-Wawi. BISConnect ist die kostenlose Brücke zwischen Ihrer lokalen JTL-Datenbank und der BISpicy-Cloud — Download im Kundencenter.
  • BIS ERP Kundencenter-Zugang mit aktiviertem Modul „JTL-Integration".
  • Für Rechnungskauf-Workflow: JTL-Wawi-Workflow „Rechnung Drucken" oder gleichwertig (siehe weiter unten).

Verbindung einrichten

Im BIS ERP unter Einstellungen → Schnittstellen → JTL-Wawi (bzw. im Kundencenter) die Verbindung anlegen. Die ausführliche Schritt-für-Schritt-Anleitung mit Screenshots gibt es zusätzlich in der POS-Dokumentation: bispos.app/docs/jtl-integration.html.

JTL-Wawi Integration in BISpicy ERP unter Einstellungen Schnittstellen: Verbindung mit Status Aktiv, Verbindungsname JTL-Wawi (SQL), JTL-Wawi Host mit IP und Port, Schalter für JTL-Wawi Cloud und Verbindung aktiv
Einstellungen → Schnittstellen → JTL-Wawi: Verbindung anlegen (Host, Modus, Status)
1BISConnect installieren und koppeln

Den BISConnect-Client auf dem JTL-Wawi-Server installieren und mit Ihrem BISpicy-Konto verbinden. BISConnect übernimmt das Long-Polling zwischen Cloud und lokaler Datenbank.

2JTL-Verbindung anlegen

In der JTL-Integration auf „Neue Verbindung" klicken. Sync-Modus „Direct SQL" wählen (empfohlen für Rechnungskauf-Szenarien, da MSSQL-Zugriff für die Auftragsanlage und Workflow-Queue-Insert nötig ist).

3API-Key und Datenbankname hinterlegen

JTL-API-Key (für Artikel-/Bestandsabgleich) und Datenbankname (typisch eazybusiness) eintragen. BISConnect testet die Verbindung automatisch.

4Sync-Richtungen wählen und speichern

Festlegen, welche Datenarten in welche Richtung synchronisiert werden — siehe nächster Abschnitt.

Sync-Richtungen

Pro Datentyp lässt sich getrennt einstellen, in welche Richtung synchronisiert wird.

DatentypEmpfehlungHinweis
Artikel/ProdukteVon JTLStammdaten in JTL pflegen, BIS ERP übernimmt sie
BestandBidirektionalBestand wird aus JTL gezogen, POS-Verkäufe reduzieren ihn in JTL
KundenBidirektionalPOS-Neukunden landen in JTL, JTL-Kunden in BIS ERP für die Kasse
AufträgeZu JTLPOS-Verkäufe werden in JTL als Aufträge angelegt — Voraussetzung für den Rechnungs-Workflow
RechnungenAus — JTL macht dasJTL erstellt Rechnungen per Workflow, BIS ERP greift nicht ein

Zahlungsarten-Zuordnung

Im Kundencenter unter JTL-Integration → Zahlungsarten-Zuordnung (JTL ↔ POS) wird festgelegt, welche JTL-Zahlart welcher POS-Zahlart entspricht. Jede JTL-Zahlart kann zusätzlich als „Rechnungskauf" markiert werden — das ist das Signal, anhand dessen BIS ERP einen POS-Verkauf als Rechnungskauf erkennt und entsprechend verarbeitet.

1JTL-Zahlarten abrufen

Auf „Zahlungsarten neu abrufen" klicken — BIS ERP liest die Tabelle dbo.tZahlungsart live aus JTL und zeigt sie in der Tabelle.

2Mapping setzen

Jeder JTL-Zahlart (Bar, EC-Karte, Rechnung, Vorkasse, etc.) eine POS-Zahlart zuordnen. Die Rechnungs-Zahlart (in JTL z. B. „Rechnung" oder eine eigene Bezeichnung wie „Rechnung by Asia-In") auf „rechnung" mappen.

3Rechnungskauf markieren

Bei der Rechnungs-Zahlart das Häkchen „Rechnungskauf" setzen. Ohne dieses Häkchen wird der Verkauf als Sofortzahlung behandelt — der Rechnungs-Workflow läuft dann nicht.

Was BIS ERP technisch macht

Bei Rechnungskauf-Verkäufen wird in JTL kein tZahlung-Eintrag angelegt, nIstExterneRechnung bleibt auf 0, und die Positionen werden mit fAnzahlAufRechnung = 0 angelegt — damit der „Rechnung erstellen"-Workflow eine offene Menge findet.

Rechnungskauf-Workflow im Kundencenter

Unter JTL-Integration → Workflow für Rechnungskauf an der Kasse lässt sich aus einer Dropdown-Liste der JTL-Workflow auswählen, der nach jedem Rechnungskauf-Verkauf automatisch ausgelöst werden soll — typischerweise „Rechnung Drucken". Die Liste wird live aus Ihrer JTL geladen.

1Workflow wählen

Aus dem Dropdown den gewünschten JTL-Workflow auswählen (z. B. „Rechnung Drucken"). „— Kein Workflow —" deaktiviert das Feature; dann muss die Rechnung manuell in JTL erstellt werden.

2Verzögerung festlegen

Wählen Sie zwischen Sofort (empfohlen) und 1 Minute. Mit „1 Minute" hat JTL eine Pufferzeit, um alle Eckdaten zu indexieren, bevor der Workflow läuft. In den meisten Setups funktioniert „Sofort" zuverlässig.

3Speichern

Speichern. Ab dem nächsten Rechnungskauf-Verkauf legt BIS ERP automatisch einen Eintrag in dbo.tWorkflowQueue an — JTL führt den Workflow aus.

Ablauf eines Rechnungskauf-Verkaufs (End-to-End)

1
An der Kasse: Kassierer wählt Zahlart „Rechnung". Kunde muss zugewiesen sein (kein Laufkunde).
2
POS → BIS ERP: Bon wird in die Cloud gepusht mit isInvoicePayment = true.
3
BIS ERP → JTL: Auftrag wird in Verkauf.tAuftrag angelegt — Plattform „BISpicy POS", offener Posten = Bruttobetrag, Positionen offen für Rechnung.
4
BIS ERP → Workflow-Queue: Eintrag in dbo.tWorkflowQueue mit Event „Auftrag erstellt", konfigurierte Workflow-ID und Verzögerung.
5
JTL-Worker: Zieht den Queue-Eintrag, prüft Bedingungen, führt die Aktionen aus (Rechnung erstellen + Drucken).
6
Kunde nimmt die gedruckte Rechnung mit. Zahlungseingang wird in JTL über OP-Liste oder Bank-Import gebucht.

JTL-Workflow konfigurieren

In JTL-Wawi den Workflow unter Admin → Workflows → Aufträge → Auftrag - Erstellt anlegen. Empfohlene Konfiguration:

EigenschaftWertErläuterung
Anlegen unterAufträge → Auftrag - ErstelltIn der Workflow-Übersicht links auf „Aufträge" klappen, „Auftrag - Erstellt" wählen, dann „Neuer Workflow".
Namez. B. „Rechnung Drucken"Frei wählbar. Dieser Name erscheint anschließend im BIS-ERP-Dropdown unter Workflow für Rechnungskauf an der Kasse.
Bedingung Modus: Alle Bedingungen erfüllen
Pfad: Auftrag\Sonstiges\Plattform\Name
Operator: Enthält
Wert: BIS
Filtert auf alle BISpicy-POS-Aufträge (die Plattform heißt BISpicy POS, der Substring „BIS" matched zuverlässig). Damit feuert der Workflow nicht für Shop-Aufträge oder manuelle JTL-Aufträge.
Aktion 1Rechnung erstellen → Rechnung erstellenErstellt das Dokument tRechnung aus den offenen Positionen.
Aktion 2Ausgabe → Ausgabemodus: Drucken, Formular: RechnungDruckt auf den hinterlegten Drucker. Alternativ E-Mail oder PDF speichern.
AusführungsplanZeitverzögert oder Sofort ausführen„Zeitverzögert" läuft über die Workflow-Queue (passend zum BIS-ERP-Trigger mit 0/1-Minuten-Verzögerung). „Sofort ausführen" wird direkt vom Application-Code ausgeführt — beides ist kompatibel.
AktivHäkchen „Workflow deaktivieren" leer lassenNur aktive Workflows erscheinen im BIS-ERP-Dropdown.
Workflow-Bedingung in der JTL-UI
Sonstiges.Plattform.Name enthält BIS
Im Bedingungs-Editor: Dropdown 1 = Auftrag\Sonstiges\Plattform\Name · Dropdown 2 = Enthält · Texteingabe = BIS
Wichtig: Bedingung nicht weglassen

Ohne die Plattform-Bedingung würde der Workflow für jeden neu erstellten Auftrag in JTL laufen — auch Shop-Aufträge und manuell angelegte. Die Bedingung filtert auf POS-Aufträge.

Zahlungseingang verbuchen

Nach dem Rechnungskauf bleibt die Rechnung in JTL als offener Posten in der OP-Liste stehen. Sobald der Kunde überweist, wird der Zahlungseingang in JTL gebucht — auf eine der drei üblichen Arten:

  • Manuell: OP-Liste öffnen, Rechnung suchen, „Zahlung erfassen" klicken, Betrag/Datum/Konto eintragen.
  • Bank-Import: CAMT/MT940-Datei aus dem Online-Banking in JTL importieren — JTL ordnet die Zahlung anhand der Verwendungszweck-Referenz (Rechnungsnummer) automatisch zu.
  • DATEV-Anbindung: Bei DATEV-Schnittstelle erfasst Ihr Steuerberater die Zahlung in DATEV; sie wird über die OP-Synchronisation an JTL zurückgespielt.
BIS ERP greift nicht ein

Da der Auftrag mit nIstExterneRechnung = 0 angelegt wurde, ist die Rechnung eine reine JTL-Rechnung. BIS ERP synchronisiert keine OPs zurück und ändert auch nichts an dieser Rechnung. JTL ist allein zuständig.

Häufige Fehler

Meldung „Es existieren keine offenen Positionen mehr"

Diese Meldung erscheint, wenn der Workflow „Rechnung erstellen" keine Position findet, für die noch keine Rechnung geschrieben wurde. Mögliche Ursachen:

  • BIS ERP < Version 0.0.0.61 setzte fAnzahlAufRechnung fälschlich auf die volle Menge. Lösung: BIS ERP aktualisieren.
  • Die JTL-Zahlart ist in der Zahlungsarten-Zuordnung nicht als „Rechnungskauf" markiert — BIS ERP behandelt den Verkauf dann als Sofortzahlung und setzt fAnzahlAufRechnung = qty.

Workflow läuft nicht / kein Druck

  • Steht der gewünschte Workflow im BIS-ERP-Dropdown auf aktiv? Nur aktive Workflows (nIstAktiv = 1) erscheinen in der Liste.
  • Ist die Workflow-Bedingung erfüllt? Prüfen Sie das Workflow-Log in JTL (Admin → Hintergrundprozesse → Workflow Log).
  • Läuft der JTL-Worker? Ohne Worker werden „Verzögert"-Workflows nicht abgearbeitet.

Auftrag landet als „Laufkunde" in JTL

Rechnungskauf braucht einen zugewiesenen Kunden im Bon. Ist niemand zugewiesen, fällt der Verkauf auf den POS-Laufkunden zurück und kann nicht auf Rechnung abgewickelt werden. Bitte vor dem Kassieren den Kunden im POS auswählen oder neu anlegen.

Workflow druckt doppelt

Wenn der Workflow in JTL bereits eine Bedingung „Plattform = BISpicy POS" hat und in BIS ERP zusätzlich ein Trigger gesetzt ist, kann es zu Doppel-Triggern kommen, falls JTL den Auftrag selbst als „neu erstellt" erkennt. In der Praxis tritt das nur auf, wenn der Workflow versehentlich auch für Connector-Imports konfiguriert ist. Lösung: Workflow-Bedingung auf Plattform und Zahlart einschränken.

Mehr Hilfe

Detaillierte Anleitung mit Screenshots zur JTL-Verbindung selbst: bispos.app/docs/jtl-integration.html. Bei spezifischen Fragen Support-Ticket im Kundencenter eröffnen.

Häufig gestellte Fragen

Über den JTL-Connector wird BISpicy mit Ihrer JTL-Wawi-Datenbank verbunden. Nach der Authentifizierung synchronisiert BISpicy Artikel, Preise, Bestände und Aufträge bidirektional. Bestandsbuchungen werden lagertyp-sicher (Standard vs. WMS) übertragen.

Beim Rechnungskauf an der POS-Kasse wird statt einer Barzahlung eine Rechnung über JTL erzeugt: BISpicy legt einen Workflow-Eintrag in der JTL-Workflow-Queue an, woraufhin JTL die Rechnung automatisch druckt/versendet. Dadurch entsteht keine doppelte Erlösbuchung im POS-DATEV-Export.

Ja. Artikel/Preise/Bestände gleichen sich in beide Richtungen ab; POS- und Web-Verkäufe werden als Aufträge nach JTL geschrieben, Versand und Bestandsabgang zurückgemeldet. Ein Reconciliation-Wächter prüft regelmäßig auf Abweichungen.