Zum Inhalt springen

Leitfaden für Neukunden

Dieser Leitfaden führt Sie durch den vollständigen Prozess der Einrichtung Ihres Systems mit fiskaly SIGN DE, unter Verwendung einer Kombination aus dem fiskaly HUB und API-Anfragen. Am Ende werden Sie über eine vollständig funktionsfähige TSS mit einem Client verfügen, der bereit ist, Transaktionen zu signieren.

Bevor wir mit der Einrichtung beginnen, ist hier, was Sie konfigurieren werden:

🏢

Organisation

Ihre übergeordnete Einheit bei fiskaly. Verwaltete Organisationen repräsentieren einzelne physische Standorte.

🔑

API-Schlüssel und -Geheimnis

Im HUB generierte Anmeldeinformationen, die zur Authentifizierung aller nachfolgenden API-Anfragen verwendet werden.

🔐

Authentifizierung

Verwenden Sie Ihren API-Schlüssel und Ihr Geheimnis, um ein Zugriffstoken zu generieren, das in allen weiteren API-Aufrufen verwendet wird.

🛡️

TSS (Technische Sicherheitseinrichtung)

Die zentrale Signierkomponente. Muss erstellt, mit einer Admin-PIN konfiguriert und initialisiert werden.

💻

Client

Repräsentiert ein Kassensystem oder eine Anwendung, die Transaktionen gegen eine TSS erstellt.

🧾

Transaktion

Ein signierter Fiskalbeleg. Sobald Ihre TSS und Ihr Client bereit sind, können Sie Transaktionen erstellen und signieren.

Schauen Sie sich unsere Video-Einführung für eine visuelle Erklärung des Einrichtungsprozesses an.

Sie benötigen außerdem ein Tool zum Durchführen von HTTP-Anfragen – zum Beispiel cURL (Befehlszeile), Postman oder Ihren eigenen Anwendungscode.

  1. Eine Organisation erstellen

    Wenn Sie sich zum ersten Mal bei HUB anmelden, werden Sie aufgefordert, eine Organisation zu erstellen. Dies ist Ihre Hauptorganisation, und alle verwalteten Organisationen werden darunter erstellt.

    Im Allgemeinen entspricht jede verwaltete Organisation einem physischen Standort (z. B. einem Geschäft oder Restaurant).

    HUB-Organisationserstellung

    Nach dem Erstellen Ihrer Organisation zeigt HUB Ihre aktuelle Einrichtung – zunächst mit 0 TSS und 0 Clients.

    HUB-Übersicht
  2. Einen API-Schlüssel und ein Geheimnis generieren

    Navigieren Sie zum Abschnitt „API-Schlüssel” im fiskaly HUB und erstellen Sie einen neuen API-Schlüssel.

    API-Schlüsselerstellung

    Sie erhalten einen API-Schlüssel und ein API-Geheimnis. Speichern Sie diese sicher – Sie benötigen sie für alle nachfolgenden API-Anfragen.

    Unser Video-Tutorial demonstriert den Prozess der Generierung eines API-Schlüssels und -Geheimnisses.

  3. Mit der API authentifizieren

    Verwenden Sie Ihren API-Schlüssel und Ihr Geheimnis, um ein Zugriffstoken zu erhalten. Dieses Token ist für alle nachfolgenden Anfragen erforderlich.

    curl -X POST https://kassensichv-middleware.fiskaly.com/api/v2/auth \
      -H "Content-Type: application/json" \
      -d '{
        "api_key": "your_api_key",
        "api_secret": "your_api_secret"
      }'
    Beispielantwort (200 OK)
    {
    "access_token": "eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9...",
    "access_token_claims": {
    "env": "TESTING",
    "organization_id": "your-org-id"
    },
    "access_token_expires_in": 86400,
    "access_token_expires_at": "2026-03-02T12:00:00Z",
    "refresh_token": "eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9...",
    "refresh_token_expires_in": 172800,
    "refresh_token_expires_at": "2026-03-03T12:00:00Z"
    }

    Die Antwort enthält ein access_token, das Sie als Bearer-Token im Authorization-Header aller folgenden Anfragen angeben müssen.

  4. Eine TSS erstellen

    Erstellen Sie eine neue Technische Sicherheitseinrichtung (TSS), indem Sie eine PUT-Anfrage mit einer eindeutigen TSS-ID (UUID) senden.

    TSS_ID=$(uuidgen)
    
    curl -X PUT "https://kassensichv-middleware.fiskaly.com/api/v2/tss/${TSS_ID}" \
      -H "Authorization: Bearer ${ACCESS_TOKEN}" \
      -H "Content-Type: application/json" \
      -d '{
        "description": "My first TSS"
      }'
    Beispielantwort (200 OK)
    {
    "_id": "your-tss-id",
    "_type": "TSS",
    "_env": "TESTING",
    "_version": 1,
    "admin_puk": "initial-puk-from-creation",
    "state": "CREATED",
    "certificate": "-----BEGIN CERTIFICATE-----\n...\n-----END CERTIFICATE-----",
    "serial_number": "a1b2c3d4e5f6...",
    "public_key": "BHxw...",
    "signature_algorithm": "ECDSA",
    "signature_timestamp_format": "ISO8601",
    "transaction_data_encoding": "UTF-8",
    "max_number_registered_clients": 100,
    "max_number_active_transactions": 1000,
    "time_creation": "2026-03-01T10:00:00Z",
    "metadata": {}
    }

    Nach der Erstellung müssen Sie die TSS initialisieren. Dies umfasst drei Teilschritte:

    a) Admin-PIN ändern

    Die TSS wird im Status UNINITIALIZED erstellt. Sie müssen eine neue Admin-PIN festlegen, bevor die Initialisierung erfolgt.

    curl -X PATCH "https://kassensichv-middleware.fiskaly.com/api/v2/tss/${TSS_ID}/admin" \
      -H "Authorization: Bearer ${ACCESS_TOKEN}" \
      -H "Content-Type: application/json" \
      -d '{
        "admin_puk": "initial-puk-from-creation",
        "new_admin_pin": "your-secure-admin-pin"
      }'

    b) Als Admin authentifizieren

    curl -X POST "https://kassensichv-middleware.fiskaly.com/api/v2/tss/${TSS_ID}/admin/auth" \
      -H "Authorization: Bearer ${ACCESS_TOKEN}" \
      -H "Content-Type: application/json" \
      -d '{
        "admin_pin": "your-secure-admin-pin"
      }'

    c) TSS initialisieren

    TSS-Status auf INITIALIZED aktualisieren:

    curl -X PATCH "https://kassensichv-middleware.fiskaly.com/api/v2/tss/${TSS_ID}" \
      -H "Authorization: Bearer ${ACCESS_TOKEN}" \
      -H "Content-Type: application/json" \
      -d '{
        "state": "INITIALIZED"
      }'
  5. Einen Client erstellen

    Mit der initialisierten TSS erstellen Sie einen Client, der Ihr Kassensystem oder Ihre Anwendung repräsentiert.

    CLIENT_ID=$(uuidgen)
    
    curl -X PUT "https://kassensichv-middleware.fiskaly.com/api/v2/tss/${TSS_ID}/client/${CLIENT_ID}" \
      -H "Authorization: Bearer ${ACCESS_TOKEN}" \
      -H "Content-Type: application/json" \
      -d '{
        "serial_number": "POS-001"
      }'
  6. Eine Transaktion erstellen

    Jetzt können Sie Ihre erste signierte Transaktion erstellen. Transaktionen folgen einem Lebenszyklus: Transaktion starten, dann beenden.

    a) Transaktion starten

    TX_ID=$(uuidgen)
    
    curl -X PUT "https://kassensichv-middleware.fiskaly.com/api/v2/tss/${TSS_ID}/tx/${TX_ID}?tx_revision=1" \
      -H "Authorization: Bearer ${ACCESS_TOKEN}" \
      -H "Content-Type: application/json" \
      -d '{
        "state": "ACTIVE",
        "client_id": "your-client-id"
      }'

    b) Transaktion beenden

    curl -X PUT "https://kassensichv-middleware.fiskaly.com/api/v2/tss/${TSS_ID}/tx/${TX_ID}?tx_revision=2" \
      -H "Authorization: Bearer ${ACCESS_TOKEN}" \
      -H "Content-Type: application/json" \
      -d '{
        "state": "FINISHED",
        "client_id": "your-client-id",
        "schema": {
          "standard_v1": {
            "receipt": {
              "receipt_type": "RECEIPT",
              "amounts_per_vat_rate": [
                {
                  "vat_rate": "NORMAL",
                  "amount": "10.00"
                }
              ],
              "amounts_per_payment_type": [
                {
                  "payment_type": "CASH",
                  "amount": "10.00"
                }
              ]
            }
          }
        }
      }'

    Die Antwort enthält die signierten Transaktionsdaten mit einer kryptographischen Signatur der TSS.

  7. Admin abmelden

    Melden Sie den Admin-Benutzer nach Abschluss der Einrichtung von der TSS ab.

    curl -X POST "https://kassensichv-middleware.fiskaly.com/api/v2/tss/${TSS_ID}/admin/logout" \
      -H "Authorization: Bearer ${ACCESS_TOKEN}"

Sie können diese Anfragen auch mit Postman durchführen. Laden Sie die Sammlung und die Umgebungsdateien herunter, um schnell loszulegen:

Postman-Sammlung herunterladen

 

Postman-Umgebung herunterladen

Weitere Anweisungen finden Sie im Postman-Tutorial.

Was this page helpful?