Zum Inhalt springen

Für SIGN DE-Kunden

Dieser Leitfaden erklärt die wichtigsten Unterschiede zu SIGN DE und unterstützt Sie bei der erfolgreichen Integration der fiskaly SIGN IT API. Er beschreibt alle notwendigen Schritte für Sie und Ihre Händler.

SIGN IT ist Teil von fiskalys Unified API-Ansatz. Das bedeutet, dass Sie durch die Integration von SIGN IT bereits vorbereitet sind, SIGN FR (Frankreich) sowie andere zukünftige Länder mit minimalem Zusatzaufwand zu nutzen.

Im Gegensatz zu SIGN DE erfordert SIGN IT keine separate Management API. Alle notwendigen Endpoints für Authentifizierung, Organisationserstellung, Konfiguration und die Verwaltung von Steuerbelegen sind direkt in SIGN IT enthalten — was die Integration schneller und einfacher macht.

In SIGN IT gibt es zwei separate Basis-URLs für die verschiedenen Umgebungen:

  • TEST-Umgebung: https://test.api.fiskaly.com
  • LIVE-Umgebung: https://live.api.fiskaly.com

Dies unterscheidet sich von SIGN DE, wo es nur eine Basis-URL gibt, die für beide Umgebungen verwendet wird.
In SIGN DE bestimmt der API Key selbst, ob TEST- oder LIVE-Ressourcen erstellt werden.
Ein Token, der mit einem LIVE API Key erstellt wird, erzeugt LIVE-Ressourcen.
Ein Token, der mit einem TEST API Key erstellt wird, erzeugt TEST-Ressourcen — auch wenn die URL gleich bleibt.

In SIGN IT wird die Umgebung über die Basis-URL ausgewählt.
Sie müssen jeden Endpoint mit der richtigen Basis-URL aufrufen (test.api.fiskaly.com oder live.api.fiskaly.com), je nachdem, ob Sie mit der TEST- oder LIVE-Umgebung interagieren möchten.

Im Unified API-Ansatz wurden einige neue HTTP-Header eingeführt, um Ihre Prozesse zu vereinfachen.
Sie bieten Flexibilität, gewährleisten Datenintegrität und machen Integrationen einfacher und zuverlässiger.

Für alle Unified API-Lösungen muss jede Anfrage den X-Api-Version-Header enthalten.
Der Wert entspricht dem Veröffentlichungsdatum der Version. Dies gibt Ihnen die volle Kontrolle darüber, wann Sie zu einer neueren Version wechseln möchten, um neue Funktionen zu nutzen.

Sie können Änderungen zunächst in der TEST-Umgebung testen und erst dann zur neuen Version migrieren, wenn alles überprüft wurde. Dies ermöglicht es Ihnen auch, einige Kunden auf einer älteren Version zu betreiben, wenn nötig, während Sie neue Kunden direkt mit der neuesten Version einbinden.

Hauptvorteil: keine Breaking Changes mehr in Ihrer laufenden Version.


Da Ressourcen-IDs nicht mehr von Ihnen definiert werden müssen, sondern von der API generiert werden, garantiert der X-Idempotency-Key, dass ein API-Aufruf idempotent verarbeitet wird.

Das bedeutet, dass wiederholte identische Anfragen mit demselben X-Idempotency-Key dasselbe Ergebnis liefern und doppelte Erstellungen verhindern.

Der X-Idempotency-Key ist für alle POST- und PATCH-Anfragen erforderlich.


Der X-Scope-Identifier-Header ersetzt die Pfadparameter, die zuvor in der Management API verwendet wurden, um Beziehungen zwischen Ressourcen herzustellen.

Er macht Integrationen sauberer und flexibler, da der Header explizit den Scope definiert (zum Beispiel, zu welcher Organization::UNIT ein API Key gehört).

SIGN ITSIGN DEErklärung
Organization::ACCOUNT(kein Äquivalent)Übergeordnete Struktur im fiskaly HUB. Repräsentiert das gesamte Kundenkonto.
Organization::GROUPorganization (mit billing_options)Repräsentiert die Hauptorganisation, unter der Steuerpflichtige verschachtelt sind.
Organization::UNITmanaged_organizationRepräsentiert einen einzelnen Händler oder Steuerpflichtigen. Jede Organization::UNIT ist mit einem Taxpayer verknüpft.
Taxpayer::COMPANY oder Taxpayer::INDIVIDUALIn Deutschland Teil der managed_organization (DSFINVK DE) oder taxpayer (SUBMIT DE)Definiert den Steuerpflichtigen für die verknüpfte Organization::UNIT, erforderlich zur Erfüllung steuerlicher Pflichten.
LocationVergleichbar: establishment (SUBMIT DE)Repräsentiert physische Standort(e) (z. B. Filialen) des Steuerpflichtigen.
System::FISCAL_DEVICEclientRepräsentiert das POS-System / die Kasse, die für die Fiskalisierung verwendet wird.
Subject::API_KEYAPI keyAPI-Key-Authentifizierungsobjekt, zur Autorisierung des Zugriffs verwendet.
RecordtransactionRepräsentiert einen auf der Kasse durchgeführten Vorgang. Erfordert immer zwei Aufrufe: ein Record::INTENTION und ein Record::TRANSACTION.
Record::INTENTIONStart-TransactionMarkiert den Beginn eines Kaufvorgangs oder eines anderen einzelnen Ereignisses, das auf der Kasse verarbeitet wird.
Record::TRANSACTIONFinish-TransactionMarkiert den Abschluss eines Kaufvorgangs.

Zunächst müssen Sie im fiskaly HUB eine separate Organization speziell für Italien und einen dedizierten API Key für die italienische Integration erstellen.

Von diesem Punkt an werden alle Integrationsschritte direkt über SIGN IT abgewickelt. Im Gegensatz zu SIGN DE müssen Sie nicht mehr die Management API verwenden, um Organisationsstrukturen zu erstellen oder zu verwalten. Alle erforderlichen Funktionen sind Teil von SIGN IT selbst.

Verwenden Sie diesen Token, um die Erstellung der Organisationsstruktur für Italien zu authentifizieren.
Er funktioniert genauso wie der Token in SIGN DE (Management API), der mit dem API Key der (Haupt-)Organisation erstellt und dann zur Erstellung von managed_organizations verwendet wurde.
In SIGN IT wird dieser Token nun benötigt, um Organization::UNIT-Ressourcen zu erstellen.

Erstellen Sie eine Organization::UNIT (Organization vom Typ Unit), die Ihren ersten Kunden repräsentiert. Dies entspricht der managed_organization, die über die Management API für SIGN DE erstellt wurde.

In diesem Schritt ist nur der Name der Organization::UNIT erforderlich.
Im Gegensatz zu SIGN DE gehören die Steuerpflichtigendaten zur Taxpayer-Ressource, die vom Typ COMPANY oder INDIVIDUAL sein kann, je nachdem, ob der Steuerpflichtige eine juristische oder natürliche Person ist. Diese Details definieren Sie im Schritt Taxpayer (COMPANY / INDIVIDUAL) weiter unten.

Jeder Ihrer Kunden benötigt einen eigenen API Key, um Ressourcen im Scope seiner spezifischen Organization::UNIT zu erstellen.
Daher muss ein Subject::API_KEY (Subject vom Typ API Key) erstellt werden.

Verknüpfen Sie Ihren API Key mit der Organization::UNIT über den X-Scope-Identifier-Header.

Im Gegensatz zu SIGN DE werden die Informationen, zu welcher Unit der API Key gehört, nicht mehr über den Pfadparameter, sondern über den Header-Parameter X-Scope-Identifier bereitgestellt.
Dieser Header muss die ID der Organization::UNIT enthalten, zu der der API Key gehört.

Dieser Token ist auf die Organization::UNIT beschränkt. Verwenden Sie ihn für alle steuerpflichtigenspezifischen Operationen.

Mit dem zuvor erstellten API Key für die Organization::UNIT müssen Sie diesen beschränkten Token erstellen.
Er wird für alle Operationen verwendet, die innerhalb dieser spezifischen Organization::UNIT durchgeführt werden müssen.

Definiert die Steuerpflichtigenrepräsentation für die entsprechende Organization::UNIT.

Ein Taxpayer vom Typ COMPANY oder INDIVIDUAL repräsentiert entweder eine juristische Person (Unternehmen) oder eine natürliche Person (Einzelunternehmer).
Jeder Steuerpflichtige muss erstellt werden, bevor steuerliche Operationen durchgeführt werden können.

Da SIGN IT dem Unified API-Ansatz folgt, ist die Taxpayer-Struktur standardisiert und in zwei Hauptteile unterteilt:

  • Allgemeine Informationen (länderübergreifend geteilt):
    Enthält gemeinsame Attribute wie Name und Adresse des Steuerpflichtigen.

  • Fiskalisierungsinformationen (länderspezifischer Abschnitt):
    Enthält steuerliche Attribute, die durch nationale Vorschriften erforderlich sind, wie die Steuerpflichtigenkennzahl und steuerliche Zugangsdaten.
    In Italien umfasst dies steuerliche Attribute wie die Steuernummer (Codice Fiscale) und die Mehrwertsteuernummer (Partita IVA), die durch nationale Vorschriften erforderlich sind.

Aktualisieren Sie den Zustand von ACQUIRED zu COMMISSIONED, um den Taxpayer zu aktivieren.

Im Gegensatz zu SIGN DE haben Taxpayer in SIGN IT ein state-Attribut.
Wenn ein Taxpayer erstellt wird, ist sein anfänglicher Zustand ACQUIRED.
Bevor er verwendet werden kann, muss der Taxpayer auf den Zustand COMMISSIONED aktualisiert werden.

Dieser Schritt ist irreversibel. Von diesem Punkt an wird die Ressource gemäß dem geltenden Abrechnungsmodell abgerechnet.

Wenn ein Taxpayer nicht mehr genutzt wird, kann er auf den Zustand DECOMMISSIONED aktualisiert werden.
Dieser Schritt ist ebenfalls irreversibel und sollte nur durchgeführt werden, wenn sicher ist, dass der Kunde diesen Taxpayer nicht mehr verwenden wird.

Zusätzlich zu Zuständen hat jeder Taxpayer in SIGN IT ein mode-Attribut, das seinen Betriebsstatus definiert.

  • Wenn der Taxpayer sich im Zustand ACQUIRED oder DECOMMISSIONED befindet, ist sein Modus immer INACTIVE.
    In diesem Modus kann die Ressource nicht verwendet werden.

  • Wenn der Taxpayer auf den Zustand COMMISSIONED aktualisiert wird, validiert der SIGN IT-Dienst automatisch alle erforderlichen Konfigurationen.
    Bei Erfolg wechselt der Modus zu OPERATIVE.

  • Wenn es ein Problem mit dem Taxpayer oder einer seiner abhängigen Ressourcen gibt, wechselt der Modus automatisch zu DEGRADED (noch nicht implementiert), bis das Problem behoben ist.
    Sobald das Problem behoben ist, setzt der SIGN IT-Dienst den Modus auf OPERATIVE zurück.

  • Der Modus SUSPENDED kann für Taxpayer im Zustand COMMISSIONED manuell über den updateTaxpayer-Endpoint gesetzt werden.
    Dies ist nützlich, um steuerliche Operationen vorübergehend zu pausieren, zum Beispiel beim Aktualisieren von Zugangsdaten oder bei Wartungsarbeiten.


Zusammenfassung:

  • INACTIVE: Standardmodus für ACQUIRED und DECOMMISSIONED
  • OPERATIVE: Normaler Produktivmodus
  • DEGRADED (noch nicht implementiert): Automatisch vom SIGN IT-Dienst aufgrund eines Problems gesetzt
  • SUSPENDED: Manueller Wartungsmodus

Definiert den physischen Geschäftsstandort. Beginnt ebenfalls im Zustand ACQUIRED.

Für jeden Standort eines Steuerpflichtigen sollte eine separate Location erstellt werden.
In der SIGN IT-Lösung erfordert dies keine separate Organization::UNIT.
Alle Standorte eines Steuerpflichtigen werden innerhalb derselben Organization::UNIT dargestellt und sind mit dem entsprechenden Taxpayer::COMPANY oder Taxpayer::INDIVIDUAL verknüpft.
Jeder Steuerpflichtige sollte mindestens eine zugehörige Location haben.

Aktualisieren Sie den Zustand der Location auf COMMISSIONED.

Wie bei Taxpayer::COMPANY oder Taxpayer::INDIVIDUAL muss auch die Location auf den Zustand COMMISSIONED aktualisiert werden, bevor sie verwendet werden kann.
Erst nach diesem Schritt wird der Standort aktiv und kann genutzt werden.

Ein System vom Typ FISCAL_DEVICE repräsentiert ein POS-System oder eine Kasse.
Es entspricht dem Client in SIGN DE.
Jedes System ist mit einer Location verknüpft.

Im Gegensatz zu SIGN DE müssen beim Erstellen eines FISCAL_DEVICE zusätzliche Informationen über das elektronische Aufzeichnungssystem selbst angegeben werden.
Die meisten dieser Details werden in der Regel vom POS-Anbieter definiert.
In Deutschland werden diese Informationen üblicherweise später im Rahmen von DSFinV-K DE oder Submit DE hinzugefügt — in SIGN IT erfolgt dies jedoch in einem einzigen Schritt bei der Systemerstellung.

Aktualisieren Sie das System vom Zustand ACQUIRED auf COMMISSIONED, um es zu aktivieren.

Die System-Ressource folgt derselben Zustands- und Moduslogik wie ein Taxpayer.
Sobald es auf COMMISSIONED gesetzt wird, wird das System aktiv und die Abrechnung gilt automatisch (bei Nutzung in der LIVE-Umgebung).
Wenn es nicht mehr genutzt wird, kann es auf DECOMMISSIONED gesetzt werden, was — wie in SIGN IT generell — irreversibel ist.

Das mode-Attribut spiegelt den Betriebszustand des Systems wider (zum Beispiel OPERATIVE, SUSPENDED oder DEGRADED). DEGRADED ist noch nicht implementiert.


Mit dem erfolgreich in Betrieb genommenen System ist die anfängliche Einrichtungsphase abgeschlossen.
Alle organisatorischen und steuerlichen Strukturen — von Organization::UNIT über Taxpayer bis hin zu System — sind nun aktiv und bereit für den Produktionseinsatz.

Von diesem Punkt an beschreiben die folgenden Schritte die täglichen Steuervorgänge an der Kasse.
Dazu gehört die Erstellung und Verarbeitung von Steuerbelegen, die Verkäufe, Rückgaben und andere Ereignisse repräsentieren — äquivalent zu Transaktionen in SIGN DE, jedoch mit erweiterten Steuerdaten, wie es in Italien erforderlich ist.

Sobald die Einrichtung abgeschlossen ist und alle Ressourcen in Betrieb genommen wurden, setzt sich der Fiskalisierungsprozess in SIGN IT mit dem täglichen Betrieb fort.
Diese Vorgänge repräsentieren die täglichen Geschäftsaktivitäten an der Kasse — wie die Ausstellung von Belegen, die Bearbeitung von Rückgaben oder die Handhabung von Stornierungen.

Während das Gesamtkonzept ähnlich wie bei SIGN DE ist, führt SIGN IT ein einheitliches und datumreicheres Record-Modell ein.
Jede Transaktion wird als ein oder mehrere Records dargestellt, die digital signiert, protokolliert und archiviert werden, um die vollständige Steuerkonformität zu gewährleisten.

In SIGN IT wird jede steuerliche Transaktion als ein oder mehrere Records dargestellt.
Dieses Modell ersetzt den zweistufigen Transaktionsaktualisierungsprozess von SIGN DE (ACTIVEFINISHED) durch zwei unabhängige Ressourcen: ein Record vom Typ INTENTION und ein Record vom Typ TRANSACTION.


In SIGN DE beginnt eine Transaktion mit einem Start-Transaction-Ereignis, das den Beginn eines Steuervorgangs markiert und später auf einen abgeschlossenen Zustand aktualisiert wird.
In SIGN IT wird diese Logik durch eine dedizierte Ressource ersetzt: ein Record vom Typ INTENTION.

Ein Record vom Typ INTENTION markiert den Beginn eines Steuervorgangs.
In Italien ist die unterstützte Intention-Operation TRANSACTION.


In SIGN DE wird eine Transaktion durch ein Finish-Transaction-Update der Transaktionsressource abgeschlossen.
In SIGN IT wird dieser Schritt durch eine separate Ressource dargestellt: ein Record vom Typ TRANSACTION.

Ein Record vom Typ TRANSACTION schließt den Steuervorgang ab und verweist auf den zuvor erstellten Record vom Typ INTENTION.
Er enthält alle steuerlichen und transaktionalen Daten, die für den Vorgang erforderlich sind.
Im Vergleich zu SIGN DE sind der Datenumfang und die Struktur breiter und orientieren sich stärker an den Informationen, die in einer Transaktion innerhalb eines Kassenabschlusses (DSFinV-K DE) enthalten sind.


ÜbergangBeschreibung
POST → AcceptedDer Record wird erstellt und geht vorübergehend in den Accepted-Zustand über, wenn die Validierung erfolgreich ist.
POST → RejectedDer Record schlägt die interne Validierung fehl und wechselt automatisch zu Rejected, wobei Fehlerprotokolle bereitgestellt werden.
Accepted → CompletedAutomatisch gesetzt, wenn die Verarbeitung erfolgreich abgeschlossen wird.
Accepted → FailedGesetzt, wenn die Verarbeitung aufgrund einer externen Komponente fehlschlägt.
Processing → FinishedGibt an, dass die Verarbeitung abgeschlossen wurde, unabhängig vom Erfolg oder Misserfolg.

Im täglichen Betrieb ersetzt SIGN IT den einfachen „Start → Abschluss”-Transaktionsablauf von SIGN DE durch ein multi-ressourcenbasiertes, ereignisgesteuertes Record-Modell.
Jeder Vorgang — ob Verkauf (RECEIPT), Rückgabe (CORRECTION) oder Stornierung (CANCELLATION) — wird einzeln signiert, protokolliert und archiviert, was eine vollständige Rückverfolgbarkeit und Konformität mit dem italienischen Steuerrecht gewährleistet.

Was this page helpful?