Zum Inhalt springen

API & Entwickler

Verbinden Sie Ihre Projekte mit der Kasse

DiKAS ist offen gebaut: eine REST API mit über 200 Endpoints und ein Plugin-System machen aus dem Kassensystem eine Plattform. Warenwirtschaft, Online-Shop, Buchhaltung, eigene Apps – alles lässt sich sauber anbinden. Kein geschlossener Kasten, kein Lock-in.

erste-anfrage.sh
curl -X POST https://DEIN-SERVER/api/v1/auth/login \
  -H "Content-Type: application/json" \
  -d '{"username":"demo","password":"demo"}'

# → { "accessToken": "eyJhbGciOi..." }

curl https://DEIN-SERVER/api/v1/articles \
  -H "Authorization: Bearer eyJhbGciOi..."
200+

REST-API-Endpunkte – les- und schreibbar

JWT

& API-Key – Rechte fein steuerbar

OpenAPI

interaktive Swagger-Referenz inklusive

Linux

Self-Hosted als Appliance (ISO) möglich

API-Schnellstart

In 3 Schritten zur ersten Anfrage

Authentifizieren, Token nutzen, Daten holen – so wie Sie es von einer modernen API erwarten.

1

Anmelden & Token holen

Mit Benutzername und Passwort ein Access-Token anfordern. (Für Server-zu-Server-Anbindungen nutzen Sie einen API-Key.)

curl -X POST https://DEIN-SERVER/api/v1/auth/login \
  -H "Content-Type: application/json" \
  -d '{"username":"demo","password":"demo"}'
2

Token aus der Antwort lesen

Die Antwort enthält Ihr Bearer-Token (accessToken) und die Gültigkeit.

{
  "success": true,
  "data": {
    "accessToken": "eyJhbGciOi...",
    "expiresAt": "2026-06-09T22:00:00Z"
  }
}
3

Anfragen mit dem Token

Token im Authorization-Header mitschicken – fertig. Alle Endpoints stehen in der Swagger-Referenz.

curl https://DEIN-SERVER/api/v1/articles \
  -H "Authorization: Bearer eyJhbGciOi..."

Was die Plattform bietet

Offen statt geschlossen

REST API mit 200+ Endpoints

Sauberes JSON über HTTPS: Artikel, Bestellungen, Kunden, Belege, Tische, Lager, Berichte und mehr – les- und schreibbar. Was die Kasse kann, kann auch Ihre Anwendung.

Plugin-System für tiefe Integration

Reicht die API nicht? Baue eigene Feature-Module (IFeatureModule) mit eigenen Entities, Endpoints und Frontend – direkt in DiKAS, mit Entwickler-Guide.

Sichere Authentifizierung

Zugriff per JWT-Token oder API-Key. Rechte fein steuerbar, sodass jede Integration nur das darf, was sie soll.

Swagger / OpenAPI

Die komplette API ist als interaktive Swagger-Referenz dokumentiert – ausprobieren direkt im Browser, Client-Code generieren inklusive.

Wo Ihre Software andockt

Ihre Systeme

WWS · Online-Shop · Buchhaltung · BI · eigene Apps

REST API & Plugins

JSON über HTTPS · JWT/API-Key · IFeatureModule

DiKAS Kasse

Artikel · Bons · Kunden · TSE · Drucker · EC-Terminal

Anwendungsfälle

Was sich anbinden lässt

Warenwirtschaft

Artikel, Bestände und Bestellungen mit Ihrem ERP/WWS synchronisieren.

Buchhaltung

Umsätze und Belege automatisch in Ihre Buchhaltung übergeben.

Online-Shop

Online-Bestellungen direkt in die Kasse spielen – Preise und Artikel zentral pflegen.

Eigene App / Portal

Kundenportal, Mitarbeiter-App oder Self-Order an die Kassendaten anbinden.

Reporting & BI

Kassendaten in Ihr Dashboard/BI-Tool ziehen und eigene Auswertungen bauen.

Automatisierung

Wiederkehrende Abläufe per Skript anstoßen – Artikelpflege, Exporte, Abgleiche.

Noch mehr Tiefe

Eigene Module per Plugin-System

Wenn die API nicht reicht, gehen Sie eine Ebene tiefer: Mit dem Plugin-System bauen Sie eigene Feature-Module mit eigenen Entitäten, Endpoints und Oberflächen – als Systemintegrator erweitern Sie DiKAS für Ihre Kunden, ohne den Kern anzufassen.

  • REST API · JSON · über 200 Endpoints
  • JWT- & API-Key-Authentifizierung
  • Interaktive Swagger-/OpenAPI-Referenz
  • Plugin-System (IFeatureModule) mit Entwickler-Guide
  • Self-Hosted als Linux-Appliance möglich
MeinModul.cs
public class MeinModul : IFeatureModule
{
    public string Name => "MeinModul";

    public void RegisterServices(
        IServiceCollection services,
        IConfiguration configuration)
    {
        // eigene Services & Repositories
    }

    public IEnumerable<EntityRegistration>
        GetEntityRegistrations()
        => [ new(typeof(MeineEntity), "MeineEntity") ];
}

Legen Sie los mit der API

Alles dokumentiert – von der ersten Anfrage bis zum eigenen Plugin.