Wiresphere Docs
Alles, um mit Wiresphere zu arbeiten — gegliedert nach Zielgruppe: Endnutzer (Verwaltungssystem), DevOps & Architekten (Plattform, Betrieb, Konzepte) und Entwickler (SDK, CLI, APIs).
/images geladen.Das Verwaltungssystem
Die Admin-Oberfläche für den Arbeitsalltag: Bestellungen, Produkte, Kontakte und Einstellungen — ohne technische Vorkenntnisse.
Zugang & Login
So melden Sie sich im Verwaltungssystem an:
- Öffnen Sie Ihre Admin-URL im Browser (z. B.
https://ihre-domain.de/admin/login) - Geben Sie Benutzername und Passwort aus Ihrer Begrüßungs-E-Mail ein — Groß-/Kleinschreibung beachten
- Über das Augensymbol können Sie das Passwort sichtbar machen; „Login speichern" merkt sich Ihre Anmeldung
- Passwort vergessen? Über „Passwort zurücksetzen" unter dem Login-Button erhalten Sie einen Reset-Link
Dashboard
Das Dashboard bietet eine Übersicht über die Leistung Ihres Unternehmens und hilft, die wichtigsten Kennzahlen zu verfolgen. Die meisten Widgets lassen sich per Dropdown auf wöchentliche, monatliche oder jährliche Zeiträume umstellen.
| Widget | Zweck |
|---|---|
| Tagesumsatz | Durchschnittliche Einnahmen — umschaltbar wöchentlich/monatlich/jährlich |
| Bestellungen je Tag | Durchschnittliche Verkaufszahlen im gewählten Zeitraum |
| NFC-Nutzerzuwachs | Trend der Käufe über NFC — Akzeptanz kontaktloser Zahlung |
| Gewinn- & Umsatzverlauf | Rentabilität und saisonale Schwankungen im Blick behalten |
| Kanalgewichtung | Einfluss der Vertriebskanäle auf den Umsatz — Basis für Kanal-Entscheidungen |
| Verhältnis Zahlungsarten | Verteilung der genutzten Zahlungsarten |
| Meistverkaufte Produkte | Topseller nach Verkaufszahlen oder Umsatz — für Promotions und Planung |
Prozessübersicht
Die Prozessübersicht zeigt alle Transaktionen und deren Status. Prozesse lassen sich filtern (Sortierung, Typ, Kanal, Zeitraum), analysieren und verwalten.
- Tabelle: Transaktionsnummer, Kunde, Datum, Betrag (netto), Zahlungsstatus, Kanal, Typ-Nummer und Typ (Angebot, Rechnung, Auftrag)
- Zahlungsstatus: Bezahlt (grün) · Warten auf Zahlung (gelb) · Ausstehend (orange) · Fällig/überfällig (rot)
- Aktionen: „+ Transaktion hinzufügen", „Auswahl exportieren" und „Filter anwenden"
Prozess-Details
Ein Klick auf einen Prozess in der Übersicht öffnet die Detailansicht mit allen Informationen zum Prozessverlauf.
- Kunden- & Zahlungsdetails: Name, Kundennummer, E-Mail; Rechnungsstatus und Bezahlmethode (z. B. NFC Payment)
- Adressen: Rechnungs- und Lieferadresse sind über das Bearbeiten-Symbol anpassbar
- Artikeltabelle: Artikelnummer, Bezeichnung, Menge, Einzelpreis, MwSt., Gesamtgewicht, Gesamtpreis
- Preiszusammenfassung: Zwischensumme, Rabatt, Versandkosten, MwSt., Gesamtsumme
- Aktionen: Artikel hinzufügen, Auswahl stornieren, QR-Code drucken, Prozess löschen, Speichern
Produkte verwalten
Die Produktübersicht (Menü „Warenwirtschaft" → „Produktübersicht") listet alle Produkte mit Artikelnummer, Nettopreis, Lagerbestand und Status.
Produkt anlegen & bearbeiten
Neue Produkte legen Sie über „+ Produkt hinzufügen" an (Artikelname, Artikelnummer, Kategorie, Preis, Lagerbestand → Speichern). Bestehende Produkte bearbeiten Sie über das Stift-Icon in der Tabellenzeile.
Preisstaffeln
Im Tab „Staffelpreise" der Produkt-Detailansicht hinterlegen Sie je Staffel Mindestmenge und Preis; über „+ hinzufügen" ergänzen Sie weitere Staffeln.
Add-On-Sellings
Zusatzverkäufe (Zubehör, Upgrades, Garantien) lassen sich direkt einem Hauptprodukt zuordnen und werden bei der Bestellung automatisch vorgeschlagen — das erhöht den Warenkorbwert und unterstützt Cross-Selling.
Produkte exportieren / importieren
Exportieren: Alle Produktdaten (Name, Artikelnummer, Preise, Lagerbestand, Kategorien) als XLS- oder CSV-Datei — für Analysen, externe Bearbeitung oder Dokumentation.
Importieren: Überarbeitete oder neue Produktdaten im XLS-/CSV-Format. Das System erkennt bestehende Produkte an der Artikelnummer und aktualisiert geänderte Informationen; neue Produkte werden ergänzt, ohne Bestehendes zu überschreiben.
Kategorien
Unter „Kategorien" teilen Sie Ihre Produkte in Gruppen ein — das erleichtert Verwaltung und Auffindbarkeit im Sortiment.
- Name: aussagekräftig und eindeutig
- Slug: URL-freundliche Version des Namens (klein, ohne Sonder-/Leerzeichen) — wichtig für Links und SEO
- Filter-Eigenschaften & Navigation: werden nach dem Speichern automatisch vom System ergänzt
- Speichern / Löschen: Löschvorgänge werden zur Sicherheit noch einmal bestätigt
QR-Code erstellen
Über „Warenwirtschaft" → „Bestellübersicht" → „QR-Code erstellen" generieren Sie einen QR-Code als PDF zum Download.
- Bis zu 5 Artikel über die Suche und das „+"-Zeichen hinzufügen; Reihenfolge per Drag-and-Drop anpassen
- Menge per Eingabe oder +/− ändern — e-Preis ist der Einzelpreis, g-Preis der Gesamtpreis (Menge × Einzelpreis)
- Rechnungsadresse über das Quadrat neben dem Adressfeld ergänzen
- Die Zusammenfassung prüfen und mit „QR-Code generieren" das PDF erstellen
CRM: Kontakte & Organisationen
Das CRM-Modul verwaltet Ansprechpartner (Personen) und Organisationen zentral — erreichbar über den Reiter „CRM" in der Hauptnavigation.
- Kontakt anlegen: „+ Kontakt hinzufügen" → Person oder Organisation wählen → Daten erfassen → Person optional Organisationen zuordnen → Speichern
- Bearbeiten: Stift-Icon neben dem Eintrag — dort auch Hinzufügen und Löschen (Achtung: Löschen ist endgültig)
- Suchen & Filtern: über die Suchleiste nach Namen, E-Mail-Adressen und weiteren Kriterien
Kontakte exportieren / importieren
Exportieren: Alle Kontakte als XLS- oder CSV-Datei — für Weiterverarbeitung, Archivierung oder Analyse.
Importieren: Überarbeitete oder neue Kontaktdaten im XLS-/CSV-Format. Geänderte Daten werden automatisch erkannt und bestehende Einträge aktualisiert — ohne doppelte Datensätze. Ideal für regelmäßige Datenpflege und das Zusammenführen aus verschiedenen Quellen.
Konten aktivieren / deaktivieren
Unter CRM → Personen → Person bearbeiten findet sich der Schalter „Konto ist deaktiviert" — hilfreich bei Abteilungswechsel, Abwesenheit oder Ausscheiden.
Ist der Schalter aktiv, kann sich die Person nicht mehr anmelden; wird er deaktiviert, hat sie wieder regulären Zugriff. Änderungen mit „Speichern" bestätigen. Die Deaktivierung löscht keine Daten — das Konto lässt sich jederzeit reaktivieren.
Einstellungen
Über das Zahnrad-Icon oben rechts erreichen Sie die zentralen Konfigurationen — links gegliedert in Shop (Bezahlmethoden, Plugins, Währungen), Benutzer (Rollen und Berechtigungen), Steuersätze und Einheiten.
Plattform, Konzepte & Betrieb
Architektur der Plattform, Deployment-Optionen, Funktionsweise und das Admin-Handbuch für den technischen Betrieb.
Was ist Wiresphere?
Wiresphere ist eine modulare Runtime für Enterprise-Software. Anwendungen werden nicht einmal gebaut und dann gewartet, sondern zur Laufzeit aus austauschbaren Modulen komponiert. Der Stack besteht aus drei Schichten: Die Runtime lädt, isoliert und orchestriert Module. Das Module SDK definiert, wie Module gebaut werden — contract-first, type-safe, versioniert. Der Marketplace übernimmt Discovery, Lizenzierung und automatische Updates geprüfter Module.
Der Kern ist Open Source und läuft in der EU-Cloud oder auf eigener Infrastruktur. Es gibt keine Lizenzen und keine GMV-Beteiligung — bezahlt wird nur Infrastruktur.
Kernkonzepte
Modul
Die Grundeinheit von Wiresphere. Ein Modul kapselt eine fachliche Fähigkeit (z. B. Checkout, Lager-Anbindung, Konfigurator) in einem isolierten Scope mit einem explizit typisierten Contract. Was nicht im Contract steht, existiert für andere Module nicht.
Scope
Der Isolationsraum eines Moduls. Scopes begrenzen Zugriff und Fehlerwirkung: Ein Modul kann nicht auf fremden State zugreifen, und ein Fehler bleibt im eigenen Scope. Scopes sind bewusst klein — klein genug, dass auch ein Coding-Agent mit begrenztem Kontext sie vollständig erfassen kann.
Contract
Die typisierte, semantisch versionierte Schnittstelle eines Moduls. Contracts werden beim Kompilieren erzwungen: Inkompatible Kombinationen schlagen im Build fehl, nicht in Produktion.
Komposition
Der Zustand einer Anwendung: welche Module in welcher Version aktiv sind und wie sie verbunden sind. Kompositionen werden zur Laufzeit geändert — Module laden, ersetzen, deaktivieren — ohne Redeploy.
Glossar
| Begriff | Bedeutung |
|---|---|
| Runtime | Ausführungsschicht: lädt Module, isoliert Scopes, orchestriert Kommunikation |
| Module SDK | TypeScript-SDK zum Bauen von Modulen gegen typisierte Contracts |
| Marketplace | Katalog geprüfter Module mit Lizenzierung und Auto-Update-Kanälen |
| Update-Kanal | Versionierter Pfad (z. B. stable/beta), über den Modul-Updates in Anwendungen fließen |
| Wiresphere Cloud | Die offizielle Cloud-Hosting-Plattform: One-Click-Deployment, verwaltete Updates, EU-Hosting |
| Zertifizierung | Review-Prozess (Typprüfung, Kompatibilität, Qualität), bevor ein Modul in den Katalog kommt |
Deployment-Optionen
- Wiresphere Cloud (EU): Vorkonfigurierte, automatisch skalierende Infrastruktur. 1-Click-Deploy auf Wiresphere Cloud — Einstieg kostenlos.
- Self-Hosting: Die Open-Source-Runtime läuft auf eigener Infrastruktur — On-Prem oder in der Cloud Ihrer Wahl. Voller Funktionsumfang, volle Datenhoheit.
- Hybrid: Runtime on-prem, Marketplace-Anbindung für Module und Updates über kontrollierte Kanäle.
Unabhängig vom Deployment bleiben Quellcode und Daten in Ihrer Hand — die Plattform ist exit-fähig by design.
Live-Komposition
Module werden in die laufende Anwendung eingesetzt, ersetzt oder deaktiviert — ohne Downtime und ohne Wartungsfenster. Die Runtime prüft vor jeder Änderung die Contract-Kompatibilität der Ziel-Komposition; inkompatible Änderungen werden abgelehnt, bevor sie wirken.
Ablauf einer Änderung
- Neue Modulversion wird geladen und im Scope initialisiert
- Runtime verdrahtet Contracts und leitet Aufrufe atomar auf die neue Version um
- Alte Version wird entladen; bei Fehlern greift automatischer Rollback pro Modul
Isolierte Scopes
Jedes Modul läuft in einem eigenen Scope mit definierten Grenzen. Das begrenzt den Blast Radius von Fehlern, verhindert versteckte Kopplungen und macht Module unabhängig entwickel-, test- und wartbar — auch durch Coding-Agents, deren Kontext für einen Monolithen nie reichen würde.
Updates & Rollback
Module beziehen Updates über versionierte Kanäle aus dem Marketplace. Vor dem Einspielen prüft die Runtime semantische Kompatibilität gegen die aktive Komposition. Jedes Update ist pro Modul rückrollbar — ein fehlerhaftes Update erfordert keinen Restore der Anwendung.
stable-Kanal pinnen und neue Modulversionen zunächst in einer Staging-Komposition validieren.Frontends
Frontends sind von den Modulen entkoppelt und konsumieren dieselben Contracts — ob Web, App, B2B-Backoffice oder Kiosk-Hardware ohne Browser-Kontext. Der Frontend-Stack ist frei wählbar; ein Wechsel erfordert keine Backend-Migration.
Channels & Checkout Handler
Wiresphere arbeitet in Channels: eigenständigen Kanälen, über die Aufträge und Bestellungen platziert werden. Verfügbare Channels sind E-Commerce, Kiosk, Kasse, Live Chat und AI Chat. Alle Channels speisen dieselben Module — die Auftragslogik existiert nur einmal.
Rollen & Berechtigungen
Jeder Channel unterliegt einem eigenen Rollen- und Berechtigungskonzept. Rechte werden pro Kanal vergeben — ein Chat-Agent, ein Kassierer und ein AI-Assistent agieren mit unterschiedlichen Berechtigungen, ohne globale Freigaben.
Checkout Handler
Flexible Checkout Handler bestimmen, wie der Bestellablauf im jeweiligen Channel funktioniert. Derselbe Auftrag kann so je nach Kanal eine völlig andere Strecke durchlaufen:
| Channel | Typischer Checkout-Ablauf |
|---|---|
| E-Commerce | Mehrschrittiger Checkout mit Warenkorb, Rechnungs- und Versandadresse |
| Kiosk | Verkürzter Ablauf — kommt im Kern nur mit dem Payment aus |
| Kasse | Kassiergeführte Erfassung am Point of Sale |
| Live Chat | Auftrag wird vom beratenden Mitarbeiter im Chat platziert |
| AI Chat | Der AI-Assistent platziert den Auftrag — im Rahmen seiner Channel-Berechtigungen |
Admin-Konsole
Die Admin-Konsole ist die Betriebszentrale einer Wiresphere-Anwendung. Sie zeigt die aktive Komposition — alle Module, Versionen, Update-Kanäle und Contract-Verbindungen — und protokolliert jede Änderung.
- Kompositions-Übersicht: Welche Module laufen in welcher Version, seit wann, aus welcher Quelle
- Änderungsprotokoll: Wer hat wann welches Modul eingesetzt, aktualisiert oder zurückgerollt
- Umgebungen: Getrennte Kompositionen für Produktion, Staging und Entwicklung
Module verwalten
- Installieren: Modul aus dem Marketplace wählen, Lizenz bestätigen, Ziel-Komposition wählen — die Kompatibilitätsprüfung läuft automatisch
- Aktualisieren: Update-Kanal pro Modul festlegen (
stable/beta); Updates fließen automatisch oder nach manueller Freigabe - Zurückrollen: Jede Modulversion lässt sich einzeln auf den vorherigen Stand zurücksetzen
- Deaktivieren: Module lassen sich aus der Komposition nehmen, ohne sie zu deinstallieren
Benutzer & Rechte
Der Zugriff auf die Admin-Konsole ist rollenbasiert. Typische Rollen: Owner (alles, inkl. Abrechnung), Operator (Komposition ändern, Updates freigeben), Auditor (lesender Zugriff auf Komposition und Protokolle). Änderungen an Produktions-Kompositionen können eine Vier-Augen-Freigabe erfordern.
Betrieb & Monitoring
- Zustand pro Scope: Health, Auslastung und Fehler werden je Modul erfasst — Störungen sind dem Verursacher direkt zuordenbar
- Audit & Compliance: Kompositionsstand und Änderungshistorie sind jederzeit exportierbar (relevant für NIS2-Nachweise)
- Deployment-Kontrolle: EU-Region oder On-Prem; Daten verlassen die gewählte Jurisdiktion nicht
SDK, CLI & APIs
Vom ersten Modul bis zur REST-API-Referenz — contract-first, type-safe, versioniert.
Quickstart
Lokale Runtime starten, Modul-Skeleton generieren, komponieren — ohne Registrierung:
# Lokale Runtime starten npx wiresphere dev # Modul-Skeleton generieren (TypeScript, Contract-first) npx wiresphere create module my-checkout # Modul in die laufende Anwendung komponieren — kein Rebuild npx wiresphere compose add ./my-checkout
Die Dev-Runtime läuft standardmäßig unter localhost:4200 und zeigt die aktive Komposition inklusive aller geladenen Module und ihrer Contract-Versionen.
Module SDK
Module werden in TypeScript gegen das SDK gebaut. Der Contract ist der Kern — er definiert, was das Modul anbietet und konsumiert:
import { defineModule } from "@wiresphere/sdk";
import { CartContract, PaymentContract } from "./contracts";
export default defineModule({
name: "checkout",
version: "1.4.2",
contracts: { cart: CartContract, payment: PaymentContract },
scope: { isolation: "strict" },
setup({ runtime, config }) {
runtime.expose("checkout.session", createSession(config));
},
});
| Option | Typ | Beschreibung |
|---|---|---|
name | string | Eindeutiger Modulname im Katalog |
version | semver | Semantische Version; Major-Sprünge signalisieren Contract-Brüche |
contracts | Record | Typisierte Interfaces, die das Modul anbietet/konsumiert |
scope | ScopeConfig | Isolationsgrad und Ressourcen-Grenzen des Moduls |
setup | Funktion | Initialisierung; erhält Runtime-Handle und Konfiguration |
Runtime-API
| Methode | Beschreibung |
|---|---|
runtime.expose(key, impl) | Stellt eine Implementierung unter einem Contract-Schlüssel bereit |
runtime.resolve(key) | Löst einen Contract auf — typisiert, Version wird geprüft |
runtime.on(event, handler) | Reagiert auf Lifecycle-Ereignisse (load, swap, unload) |
runtime.compose(change) | Programmatische Kompositionsänderung (z. B. aus Admin-Tools) |
Contracts & Versionierung
Contracts sind semantisch versioniert. Die Runtime akzeptiert Minor- und Patch-Updates automatisch (abwärtskompatibel); Major-Updates erfordern eine explizite Kompositionsänderung. Inkompatibilitäten werden zur Build-Zeit (SDK) und zur Kompositionszeit (Runtime) abgefangen — nie erst in Produktion.
CLI
| Befehl | Beschreibung |
|---|---|
wiresphere dev | Lokale Dev-Runtime mit Live-Komposition starten |
wiresphere create module <name> | Modul-Skeleton mit Contract-Vorlage generieren |
wiresphere compose add|remove|swap | Komposition der Ziel-Umgebung ändern |
wiresphere test | Modul isoliert gegen seine Contracts testen |
wiresphere publish | Modul zur Zertifizierung beim Marketplace einreichen |
REST-API
Neben SDK und CLI stellt Wiresphere eine mandantenfähige REST-API bereit. Die vollständige Endpunkt-Referenz mit allen Request-/Response-Schemas ist als eigene Seite verfügbar:
Vollständige API-Referenz öffnen
Authentifizierung
Die API nutzt Token-basierte Authentifizierung (Bearer JWT). Tokens werden über POST /api/v1/auth/token-auth mit username und password angefordert und sind 24 Stunden gültig. Ein abgelaufener oder ungültiger Token führt zu 409 Conflict.
Authorization: Bearer <dein-token>
Tenant-Konzept
Die API ist mandantenfähig: Nahezu jede Anfrage muss den Shop-Kontext über den tenant-id-Header identifizieren — ohne ihn werden Anfragen abgewiesen. Ausnahme: die Authentifizierung als Admin-Nutzer (dort darf der Header nicht mitgeschickt werden).
tenant-id: mein-shop-id
Pagination, Filter & Sortierung
Alle Listen-Endpunkte unterstützen einheitliche Query-Parameter:
| Parameter | Default | Beschreibung |
|---|---|---|
p | 0 | Seitennummer (0-basiert) |
s | 10 | Einträge pro Seite |
f | — | Filterausdruck |
o | — | Sortierausdruck |
# Einfacher Filter (Substring-Suche) f=fieldName::value # Mehrere Werte (ODER-verknüpft) f=fieldName::val1~~val2 # Ausschließen (Präfix --) f=fieldName::--ausgeschlossenValue # Zeitraum-Filter (ISO 8601) f=min_createdAt::2024-01-01T00:00:00.000Z # Sortierung o=createdAt::DESC,name::ASC
Endpunkt-Gruppen
| Bereich | Inhalt | Referenz |
|---|---|---|
| Authentifizierung | Token anfordern (JWT) | api.html#ep-auth |
| Inventar | Produkte anlegen, lesen, aktualisieren; Operationen registrieren | api.html#ep-inventory |
| Transaktionen | Transaktionslisten mit doctype-, Filter- und Sortier-Parametern | api.html#ep-transactions |
| Personen (CRM) | Personen verwalten, Relationen pflegen | api.html#ep-persons |
| Organisationen (CRM) | Organisationen verwalten, Relationen pflegen | api.html#ep-organisations |
| Katalog / Slugs | Slug-Verwaltung für den Katalog | api.html#ep-catalog |
| Kategorien & Navigation | Sortierung und Navigations-Updates | api.html#ep-categories |
| Einstellungen | Settings lesen und schreiben | api.html#ep-settings |
| Dateiverwaltung | Uploads (multipart), Downloads | api.html#ep-files |
| Payment / Stripe | Stripe-Webhooks und Status-Endpunkte | api.html#ep-payment |
| Import / Export | Datenimport und -export | api.html#ep-import-export |
| Datenmodelle | Schemas: PersonDTO, AddressDTO, ProductDataDTO, Slug u. a. | api.html#schemas |
Guide: Shop komponieren
Ein Headless-Shop entsteht aus vier Katalog-Modulen — ohne eigene Entwicklung:
checkout— Warenkorb, Zahlung, Fulfillmentlager-interface— Bestände und Verfügbarkeiten aus der Warenwirtschaftsubscription-management— optional für Abos und wiederkehrende Zahlungen- Frontend Ihrer Wahl — Web, App oder Kiosk, angebunden über dieselben Contracts
Eigene Anforderungen (z. B. Preislogik) ergänzen Sie als eigenes Modul — der Rest der Komposition bleibt unberührt.
Guide: Modul publizieren
- Entwickeln: Modul gegen das SDK bauen, lokal mit
wiresphere devundwiresphere testvalidieren - Einreichen:
wiresphere publish— Typprüfung, Kompatibilitäts- und Qualitäts-Review laufen im Zertifizierungsprozess - Vertreiben: Lizenzierung und Auto-Updates übernimmt der Marketplace — mit fairem Revenue Share
Details zum Partner-Programm und zur Zertifizierung: Entwickler → Modul publizieren.