Zum Hauptinhalt springen

Empfangsbestätigung

Der letzte Schritt zum Empfang einer Einreichung ist die Bestätigung des Empfangs und damit auch der Gültigkeit der Einreichung. Mit Gültigkeit ist hier gemeint, dass alle Informationen erfolgreich heruntergeladen, entschlüsselt und im Falle der Metadaten validiert werden konnten.

Wie auf der Event Log Übersichtsseite zu sehen, gibt es für ein empfangendes System ein festes Set an Events, die dem Zustelldienst gesendet werden können.

EventAutorBedeutung
https://schema.fitko.de/fit-connect/events/forward-submissionEin nachgelagertes System hat die Einreichung zur Weiterleitung übernommen.
https://schema.fitko.de/fit-connect/events/reject-submissionEmpfangendes SystemDie Einreichung wurde durch den Empfänger zurückgewiesen.
https://schema.fitko.de/fit-connect/events/accept-submissionEmpfangendes SystemDie Einreichung wurde durch den Empfänger akzeptiert.

Um diese Events bzw. ein entsprechendes Event korrekt an den Zustelldienst zu versenden, muss es in Form eines SETs an diesen gesendet werden.

Erstellung und Versand eines Security Event Token (SET)

Ein Security Event Token (SET) kann dann über den Endpunkt POST /v1/cases/{caseId}/events im zugehörigen Vorgang hinterlegt werden und ist anschließend für sendende Systeme abrufbar. Bei der Übermittlung des SETs an den Zustelldienst wird dieses vom Zustelldienst syntaktisch und auf eine korrekte Signatur geprüft. Sind alle Prüfungen erfolgreich durchlaufen, wird das SET im Event Log abgespeichert.

Der öffentliche Schlüssel des hierbei verwendeten Schlüsselpaares muss zuvor über das Self-Service-Portal oder über die Submission API im Zustelldienst hinterlegt werden. Die öffentlichen und privaten Schlüssel des verwendeten Schlüsselpaares MÜSSEN dabei den Vorgaben für Signaturschlüssel entsprechen. Der private Schlüsel (signaturePrivateKey) MUSS sicher vom empfangenden System gespeichert werden und DARF das empfangende System NIEMALS verlassen.

Weiterhin ist es notwendig, dass die Id der Einreichung (submissionID) und des zugehörigen Vorgangs (caseId) bekannt sind.

Der Ausstellzeitpunkt des SET muss nach den bereits im Event Log befindlichen Einträgen, aber in der Vergangenheit liegen. Sofern Sie den Fehler "'iat' must not be after ..." (https://schema.fitko.de/fit-connect/submission-api/problems/security-event-token-validation) bekommen, prüfen Sie bitte folgendes:

  • Ist die Systemzeit auf Ihrem System korrekt?
  • Ist die Zeitzone auf Ihrem System korrekt?
  • Wurde die Zeitzone richtig angewendet (UTC + Zeitzone = lokale Zeit)?
  • Wird die Systemzeit mit einem NTP-Server synchronisiert?

Das folgende Beispiel zeigt, wie Sie das .NET-SDK nutzen, um den Empfang einer Einreichungen zu bestätigen:

 await receivedSubmission.AcceptSubmissionAsync();

Das Beispiel ruft die Methode AcceptSubmissionAsync() an der Einreichung (Submission) auf, die zuvor vom Zustelldienst heruntergeladen wurde. Der Aufruf der Methode setzt den Status dieser Einreichung im Zustelldienst auf accepted.
Der Quellcode ist ein Auszug aus einem Beispiel, das zeigt, wie Sie mit dem .NET-SDK Submissions vom Zustelldienst laden. Dieses Beispiel finden Sie hier. Der Quellcode ist dem Projekt ConsoleAppExample entnommen, das im Repository Codebeispiele - examples der FITKO hinterlegt ist.


Event Log abfragen

Auch empfangende Systeme können das Event Log abfragen. Die Abfrage des Event Log erfolgt analog zur Abfrage für sendende Systeme und ist im Artikel Status abfragen beschrieben.