2nd Brain

ImplementierungsplanDigitaleQuittung

/home/darth/Documents/Mardowns/10_Projekte/aktuell_27.11/docs/ImplementierungsplanDigitaleQuittung.md

Implementierungsplan Digitale Quittung

  1. Anforderungsanalyse & Datenbestand

    • Prüfen, welche Stammdaten (Unternehmer, Fahrzeuge, Fahrer) bereits in userPersData und den Settings existieren.
    • Definieren, welche zusätzlichen Felder nötig sind (z. B. GPS, Hash, Archivstatus) und welche Pflichtfelder vor Aktivierung geprüft werden müssen.
    • Neues Flag userPersData.role (z. B. driver / entrepreneur) einführen, damit die UI zwischen Fahrer-Workflow (Fahrtstart/Ende) und Unternehmer-Dashboard unterscheiden kann.
    • Fahrer-Liste je Unternehmen bereitstellen, inklusive Zuordnung zum Firmenprofil; Fallback: Anzeige eines Hinweises, wenn keine Zuordnung besteht.
    • Kontingentmodell definieren: Unternehmer kaufen im Voraus z. B. 1.500 Quittungen pro Fahrzeug/Fahrer. In userPersData oder einer Zuordnungstabelle wird gespeichert, welchen Fahrern welche Kontingente und Freischaltungen zugewiesen sind.
  2. Backend-Schema & APIs

    • Datenmodelle erweitern: neue Collection/Schema für DigitalReceipt, zusätzliche Felder in bestehenden User-/Fahrzeugmodellen.

    • REST-Endpunkte für Quittungserstellung, Abruf, Export und Archivstatus implementieren.

    • Hash-/Signaturlogik (SHA-256 über Firmen-/Fahrer-/Fahrtdaten) plus Speicherung im Archiv einbauen.

    • REST-Endpunkt zur Freischaltung eines Fahrers und zum Zuweisen eines Kontingents implementieren (inkl. Validierung, dass der Unternehmer ausreichend Quittungen besitzt).

    • Kontingent- und Freischaltstatus für Fahrer/Unternehmer in den API-Responses bereitstellen, damit die UI Buttons sperren bzw. einfärben kann.

  3. Frontend-Workflows

    • Im Profil/Adminbereich einen Setup-Wizard für Pflichtfelder (Firma, Fahrer, Fahrzeug) integrieren.
    • Neue UI zur Quittungserstellung (Fahrtauswahl, Formular, Vorschau, Versandoptionen) im Menü bereitstellen.
    • Statusanzeigen einbauen („Quittungsbereit“, „Fehlerhaft“, „Abgelaufen“).
    • Fahrer-Workflow: Auf der Startseite Button „Digitale Quittung“ → abhängig vom role-Flag und Kontingent:
      • Button erst aktiv, wenn der Unternehmer den Fahrer freigeschaltet und ein Kontingent zugewiesen hat. Der Button zeigt den Restbestand (grün >50, orange bei 50, rot bei 20 bzw. blinkend bei 10).
      • Fahrer sieht „Fahrtstart“ (GPS speichern, Uhrzeit), danach „Fahrtende“ (erneut GPS, ggf. Fahrtdauer).
      • Nach Fahrtende öffnet sich das Quittungsformular (Fahrpreis, Zuschläge, Trinkgeld als Prozent oder Fixbetrag, MwSt-Berechnung abhängig von Pflichtfahrgebiet/Kilometer).
      • Firmenstammdaten, Konzessionsnummer, Datum, Signatur und QR-Code werden automatisch eingefügt, Preview + QR-Anzeige verfügbar.
    • Unternehmer-Workflow: Zusätzlich zum Fahrer-Flow erscheint ein Dashboard-Button, der zum Quittungsarchiv, KPI-Übersicht und Verwaltung führt. Das Dashboard zeigt je Fahrer/Fahrzeug die verbleibenden Kontingente und sendet Erinnerungen, wenn der Bestand < 50 fällt.
    • Zahlungsart-Auswahl im Formular (Bar, Karte, Rechnung) – nur Barfahrten erlauben die digitale Quittung; bei anderen Zahlarten wird der Button deaktiviert oder zeigt den Hinweis, dass keine zusätzliche Quittung erforderlich ist.
  4. Authentifizierung & Berechtigungen

    • Rollenmodell erweitern (Unternehmer, Fahrer ).
    • Guards in Frontend und Backend ergänzen, damit nur berechtigte Nutzer Quittungen erstellen oder exportieren können.
    • Audit-Logs für jede Aktion (Erstellung, Versand, export(versand um Mittenacht zum Taxiunternehmen)) führen.
    • Protokollieren, welcher Unternehmer welchen Fahrer freigeschaltet hat und wie viele Quittungen zugewiesen/verbraucht wurden.
    • Feature-Bewertung: Solange einzelne Erweiterungen (z. B. Digi-Quittung, Marktplatz, Jobbörse) noch nicht vollständig implementiert sind, wird vor dem Rollout ein Feedback/Bewertungssystem eingebaut: Benutzer können Interesse/Ablehnung zu Funktionen äußern, z. B. über In-App-Polls oder Beta-Anmeldungen. Diese Daten fließen in die Priorisierung und bestimmen, ob eine Funktion aktiviert wird.
      • Integriertes Modal/Panel bei den „Mehr“- oder Info-Buttons mit 1–5-Sterne-Bewertung und Kommentar.
      • Backend-Endpoint POST /feature-feedback speichert Feature-ID, User-ID, Rating, Kommentar, Timestamp.
      • Dashboard-Auswertung für Admins zeigt aggregierte Nachfrage pro Feature sowie offene Beta-Anfragen.
  5. Fahrgast-Auslieferung

    • QR-Codes erzeugen, die eine Quittung auf einer sicheren Route abrufen lassen.
    • QR-Code direkt nach Erstellung in der Fahrersicht anzeigen; Fahrgast kann scannen oder alternativ Kurzlink/SMS/WhatsApp-Link erhalten.
    • PDF wird bei Abruf serverseitig generiert, im Firmenordner / Firmen-Datensatz gespeichert und der Download-Link im Fahrerdialog angeboten. Das Archiv vermerkt bei jedem PDF, ob es sich um „Durchschlag/Kopie“ handelt.
    • Öffnungszähler für QR/Shortlink mitführen: Ab dem zweiten Scan blendet das System auf der Kundenquittung den Hinweis „Kopie“ ein.
  6. Kosten & Abrechnung

    • Quittungszähler und Preis-Logik (z. B. 0,02 € pro Quittung) serverseitig speichern.
    • Frontend-Dashboard für Unternehmer mit Auswertung der Quittungskosten und Exportmöglichkeiten bauen.
    • Abo-/Kontingentverwaltung: Unternehmer kaufen Kontingente, Backend reduziert sie bei jeder Quittung. Fahrer sehen die Restanzahl auf dem Button; Unternehmer erhalten automatische Benachrichtigungen, wenn das Kontingent zur Neige geht.
  7. Compliance & Qualitätssicherung

    • GoBD-/DSGVO-Konformität dokumentieren, Backup- und Aufbewahrungskonzepte prüfen.
    • Tests für Hash-Berechnung, Archivierung, Exporte sowie Integrationstests (API ↔ Frontend) implementieren.
    • Pilotbetrieb und Behörden-/Steuerberater-Review einplanen.
Attachments
Noch keine.