Skip to main content

Software Development Kit

info

this section will be revised and adapted for the certified version 2 of the the fiskaly Cloud-TSS!

Überblick#

Das Software Development Kit (SDK) wird von fiskaly bereitgestellt. Es besteht aus:

  • Schnittstelle zur Integration (siehe auch kassensichv.io, fiskaly TSS / TSE API)
  • CC-zertifizierte SMA-Komponente in binĂ€rer, ausfĂŒhrbarer Form
  • Optionale Komponenten: Kompensationsmechanismen fĂŒr Ausfallszenarien & Loging der Ausfallszenarien

Das SDK wird fĂŒr verschiedene Plattformen und Betriebssysteme bereitgestellt, darunter Linux, Windows, macOS, Android und iOS; fĂŒr 32-Bit- und 64-Bit-Architekturen.

Referenzimplementierungen sind fĂŒr die gĂ€ngigsten Sprachen und Laufzeitumgebungen verfĂŒgbar:

Diese sind alle Open Source und können auf github.com/fiskaly gefunden werden. Aufgrund der freizĂŒgigen MIT-Lizenz können die SDKs beliebig modifiziert, erweitert und verbreitet werden.

Auf Anfrage erstellen wir auch gerne Implementierungen fĂŒr andere Plattformen oder Sprachen.

Funktionsweise#

Konzeptionell stellt das SDK einen HTTP-Client dar, der explizit fĂŒr die Kommunikation mit unserer REST-API optimiert ist (KassenSichV-API).

Das SDK bietet die folgende FunktionalitÀt:

  • Die Authentifizierung mit unserer REST-API - Empfang und Erneuerung des JWT-Authentifizierungstokens - ist vollstĂ€ndig abstrahiert. Das bedeutet, dass der Integrator nur einen API key und das entsprechende API secret angeben muss.
  • Die Serialisierung und Deserialisierung von JSON-Anfragen und -Antworten geschieht automatisch.
  • KonformitĂ€t mit den Anforderungen des vom BSI spezifizierten Schutzprofils (BSI CC-PP-0105-2019). Dies erfordert, dass eine lokale SMA-Komponente, die in der Betriebsumgebung des Kassensystems ausgefĂŒhrt wird, die Inkrementierung des TransaktionszĂ€hlers und den Aufbau des vertrauenswĂŒrdigen Kanals zur entfernt angeschlossenen ZDA-Komponente ĂŒbernimmt. Die Aufgabe des SDKs ist es, die SMA-Komponente, die in binĂ€rer oder ausfĂŒhrbarer Form vorliegt, anzusprechen und die Nutzung der benötigten FunktionalitĂ€t fĂŒr den Anwender des SDKs (d.h. den Entwickler) möglichst vollstĂ€ndig zu abstrahieren.

Github overview

Subscribe to the Dev-Newsletter