Skip to content

[Feature-Request] Fallback-Workflow bei nicht erreichbarem TSE-Service #11

Description

@Rocket-Quack

Problem / Motivation

Aktuell ist der POS-Workflow so aufgebaut, dass eine POS Invoice nur dann submitted werden kann,
wenn eine verknüpfte Fiskaly TSE-Transaktion erfolgreich erstellt und mit dem Status FINISHED
abgeschlossen wurde.

Dieses Verhalten ist fachlich korrekt, führt aber zu einem operativen Problem:
Wenn Fiskaly temporär nicht erreichbar ist (Netzwerkprobleme, Timeout, Fiskaly-Ausfall),
wird der komplette POS-Workflow blockiert.

In der Praxis kann das bedeuten:

  • Kasse nicht nutzbar
  • Verkauf nicht möglich
  • Problem liegt außerhalb der eigenen Infrastruktur

Aktuelles Verhalten

  • POS Invoice benötigt eine verknüpfte TSE Transaction mit Status FINISHED
  • Ist Fiskaly nicht erreichbar:
    • TSE Transaction kann nicht erstellt oder abgeschlossen werden
    • POS Invoice Submit schlägt fehl
  • Es existiert kein kontrollierter Fallback- oder Offline-Mechanismus

Ziel / Wunschverhalten

Ein konfigurierbarer Fallback-Workflow, der es erlaubt,
bei temporärer Nichterreichbarkeit von Fiskaly weiter zu kassieren,
ohne die fiskalische Nachvollziehbarkeit zu verlieren.

Wichtig:

  • Keine stille Umgehung der TSE
  • Alle betroffenen Belege müssen klar gekennzeichnet sein
  • Nachträgliche Signierung muss möglich sein

Grobe Lösungsidee

1. Neue Einstellung (TSE Settings)

Neue Option, z. B.:

  • Fallback erlauben, wenn Fiskaly nicht erreichbar ist
  • Standard: deaktiviert (Strict Mode)

2. Neuer TSE-Status

Erweiterung der möglichen transaction_status Werte, z. B.:

  • PENDING_FISKALY
  • OFFLINE_PENDING
  • TEMPORARY_FAILED

Dieser Status bedeutet:

  • Fiskaly war nicht erreichbar
  • Transaktion ist noch nicht fiskalisch abgeschlossen
  • Kein technischer Fehler der Anwendung

3. Verhalten im POS (Fallback aktiv)

Wenn Fiskaly nicht erreichbar und Fallback aktiviert ist:

  • POS Invoice darf submitted werden
  • POS Invoice wird klar gekennzeichnet, z. B.:
    • tse_fallback_used = 1
  • Warnhinweis im POS:

    „Fiskaly aktuell nicht erreichbar – Beleg wird automatisch nachsigniert.“

  • Kassenabschluss nicht Möglich solange nicht alle POS Invoices Signiert

Wenn Fallback deaktiviert ist:

  • aktuelles striktes Verhalten bleibt bestehen

4. Nachträgliche Signierung (Recovery)

  • Pending TSE Transactions werden später erneut signiert:
    • Background Job
    • Scheduler
    • oder manueller „Erneut signieren“-Button
  • Nach erfolgreicher Signierung:
    • Status → FINISHED
    • POS Invoice gilt als vollständig fiskalisch gesichert

5. Audit & Transparenz

  • Übersicht / Report:
    • „POS Invoices mit ausstehender TSE-Signierung“
  • Keine automatische Löschung oder stille Korrektur
  • Klare Nachvollziehbarkeit für Prüfer

Nutzen

  • Kein POS-Stillstand bei externen Fiskaly-Problemen
  • Klare Trennung zwischen:
    • technischer Erreichbarkeit
    • fiskalischem Status
  • Betreiber kann zwischen:
    • striktem Modus
    • kontrolliertem Fallback entscheiden

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions