Aller au contenu

Démarrage rapide Allemagne

Ce démarrage rapide vous guide à travers l’authentification avec l’API SIGN DE, la création d’un TSS (système de sécurité technique) et la signature de votre première transaction. À la fin, vous disposerez d’un flux de signature fiscale fonctionnel.

  • Un compte fiskaly avec une organisation allemande (inscrivez-vous sur hub.fiskaly.com)
  • Une clé API et un secret générés dans l’environnement de TEST
  • Un outil pour effectuer des requêtes HTTP (cURL, Postman ou votre code d’application)
  1. S'authentifier

    Utilisez votre clé API et votre secret pour obtenir un token d’accès :

    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"
      }'

    La réponse contient un access_token (valide 24h) et un refresh_token (valide 48h).

  2. Créer et initialiser un TSS

    Créez un TSS, définissez le PIN administrateur, authentifiez-vous en tant qu’administrateur et initialisez :

    # Créer le TSS
    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": "Quickstart TSS"}'
    
    # Changer le PIN administrateur
    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": "ADMIN_PUK_FROM_RESPONSE", "new_admin_pin": "my-secure-pin"}'
    
    # S'authentifier en tant qu'administrateur
    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": "my-secure-pin"}'
    
    # Initialiser le TSS
    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"}'
  3. Créer un client

    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"}'
  4. Signer votre première transaction

    Démarrez une transaction, puis terminez-la avec les données du reçu :

    TX_ID=$(uuidgen)
    
    # Démarrer la transaction
    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": "'${CLIENT_ID}'"}'
    
    # Terminer la transaction avec le reçu
    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": "'${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"}]
            }
          }
        }
      }'

    La réponse inclut une signature cryptographique du TSS, le signature_counter et toutes les données nécessaires pour un reçu conforme à KassenSichV.

Was this page helpful?