1. Allgemeine Beschreibung
1.1 Zweck des Systems
OrgPOS ist ein webbasiertes, GoBD-konformes Kassensystem für Selbstständige und Kleinunternehmen in Deutschland. Das System erfüllt die Anforderungen der GoBD (Grundsätze zur ordnungsmäßigen Führung und Aufbewahrung von Büchern, Aufzeichnungen und Unterlagen in elektronischer Form), der KassenSichV (Kassensicherungsverordnung) sowie der AO §§ 145–147.
1.2 Einsatzbereich
- Erfassung von Kasseneinnahmen und -ausgaben
- Erstellung von GoBD-konformen Kassenbelegen und Rechnungen
- Kassenbuchführung mit lückenloser Belegnummerierung
- Tagesabschlüsse (Z-Berichte) und Monatsabschlüsse
- DSFinV-K Export für das Finanzamt
- Steuerliche Auswertungen und DATEV-Export
1.3 Technische Grundlagen
| Komponente | Beschreibung |
|---|---|
| Hosting | IONOS SE, Deutschland (DSGVO-konform) |
| Datenbank | MariaDB 10.11 auf db5019572317.hosting-data.io |
| Frontend | HTML5 / JavaScript (Browser-basiert, keine lokale Datenspeicherung) |
| Backend | PHP 8 REST-API |
| Authentifizierung | Serverseitige Sessions (DB-backed), kein localStorage |
| TSE | fiskaly Cloud-TSE (BSI-zertifiziert nach TR-03153) |
| Zahlungsabwicklung | Stripe Inc. (PCI-DSS-zertifiziert) |
| Verschlüsselung | HTTPS/TLS auf allen Verbindungen, bcrypt für Passwörter |
2. Rechtliche Grundlagen
- §§ 145–147 AO (Abgabenordnung) – Aufbewahrungspflichten
- GoBD – Grundsätze ordnungsmäßiger Buchführung (BMF-Schreiben vom 28.11.2019)
- KassenSichV – Kassensicherungsverordnung (seit 01.01.2020)
- DSFinV-K v2.3 – Digitale Schnittstelle der Finanzverwaltung für Kassensysteme
- DSGVO – Datenschutz-Grundverordnung
2.1 Aufbewahrungsfristen
| Dokumentenart | Aufbewahrungsfrist | Löschung möglich? |
|---|---|---|
| Kasseneinträge (Belege) | 10 Jahre | Nein (gesetzlich) |
| Rechnungen | 10 Jahre | Nein (gesetzlich) |
| Tagesabschlüsse (Z-Berichte) | 10 Jahre | Nein (gesetzlich) |
| TSE-Signaturdaten | 10 Jahre | Nein (gesetzlich) |
| Audit-Log | 10 Jahre | Nein (append-only) |
| Verfahrensdokumentation | 10 Jahre | Nein |
| Monatliche Backups | Mind. 10 Jahre | Nach Ablauf |
3. Systemkonfiguration
3.1 Benutzerrollen und Berechtigungen
| Rolle | Berechtigungen |
|---|---|
| Administrator | Vollzugriff: Kassieren, Storno, Tagesabschluss, Einstellungen, Benutzerverwaltung, Exporte |
| Mitarbeiter | Kassieren, Einträge erstellen, Tagesabschluss (sofern freigeschaltet) |
3.2 TSE-Konfiguration (fiskaly Cloud-TSE)
Bei aktivierter TSE werden folgende Daten je Transaktion gespeichert und unveränderbar signiert:
- TSE-Transaktions-ID (eindeutig)
- Signatur-Zeitpunkt (Start und Ende der Transaktion)
- Signaturwert (Base64-kodiert)
- Signaturzähler (fortlaufend, lückenlos)
- TSE-Seriennummer
- Prozesstyp (RECEIPT, CANCELLATION, CLOSING)
4. Datenerfassung und -verarbeitung
4.1 Kasseneinträge
Jeder Kasseneintrag enthält mindestens:
| Feld | Beschreibung | Pflicht |
|---|---|---|
| Belegnummer | Format B-YYYY-000001 (lückenlos) | Ja |
| Datum & Uhrzeit | Automatisch (Serverseitig) | Ja |
| Transaktionstyp | Einnahme / Ausgabe / Storno | Ja |
| Betrag netto | Automatisch berechnet | Ja |
| MwSt.-Betrag | Automatisch berechnet | Ja |
| Betrag brutto | Eingabe durch Kassierer | Ja |
| MwSt.-Satz | 19%, 7% oder 0% | Ja |
| Zahlungsart | Bar, EC, Kreditkarte, PayPal, Rechnung, Überweisung | Ja |
| TSE-Signatur | Automatisch (bei aktiver TSE) | Bei TSE-Pflicht |
| Demo-Kennzeichen | Kennzeichnet Buchungen ohne TSE-Signatur | Ja |
4.2 Unveränderbarkeit (GoBD § 239 HGB)
OrgPOS verhindert technisch die Manipulation von Buchungsdaten:
- Keine Löschung von Belegen → Datenbank-Constraints, kein DELETE auf kasse_eintraege
- Keine nachträgliche Änderung abgeschlossener Belege → kein UPDATE auf Betragsfelder
- Lückenlose Nummerierung → atomare Transaktion mit FOR UPDATE Lock
- Append-only Audit-Log → kein UPDATE/DELETE auf kasse_audit_log
4.3 Storno-Verfahren
Bei fehlerhaften Einträgen gilt ausschließlich das Storno-Verfahren:
- Original-Beleg wird als „storniert" markiert (Feld: ist_storniert = TRUE)
- Neuer Storno-Beleg (ST-YYYY-000001) mit Gegenbuchung (negativer Betrag) wird erstellt
- Storno-Grund wird dokumentiert (Pflichtfeld)
- Audit-Log-Eintrag mit Vorher/Nachher-Werten wird erstellt
- Bei aktiver TSE: Storno wird mit Prozesstyp CANCELLATION signiert
5. Audit-Log (Änderungsprotokoll)
Alle Aktionen werden in der Tabelle kasse_audit_log unveränderbar protokolliert:
| Feld | Beschreibung |
|---|---|
| Zeitstempel | Exakter Zeitpunkt der Aktion (created_at) |
| user_id | Betroffener Nutzer |
| actor_user_id / actor_name | Wer hat die Aktion durchgeführt |
| aktion | create / storno / tagesabschluss / export / login / delete |
| tabelle / datensatz_id | Betroffene Tabelle und Datensatz-ID |
| beleg_nr | Beleg-Nummer bei Kassenvorgängen |
| vorher_json / nachher_json | Zustand vor und nach der Änderung (JSON) |
| ip_adresse / user_agent | Herkunft der Anfrage |
| session_id | Session-Referenz |
6. Tagesabschluss (Z-Bericht)
6.1 Inhalt des Z-Berichts
| Position | Beschreibung |
|---|---|
| Z-Nummer | Lückenlos, jahresweise (Z-2026-001) |
| Datum & Zeitraum | Von erster bis letzter Buchung des Tages |
| Anfangsbestand | Endbestand des Vortags (Barkasse) |
| Einnahmen (Bar) | Summe aller Barzahlungen |
| Einnahmen (EC/Kreditkarte) | Summe aller Kartenzahlungen |
| Einnahmen (Sonstige) | PayPal, Überweisung, Rechnung |
| Ausgaben | Summe aller Ausgaben |
| Stornos | Anzahl und Betrag |
| MwSt. 19% / 7% / 0% | Netto und Steuerbetrag je Satz |
| Endbestand Soll | Berechnet: Anfang + Bar-Einnahmen − Ausgaben |
| Anzahl Transaktionen | Alle Buchungen des Tages |
| TSE-Signatur | Signiert mit Prozesstyp CLOSING (bei aktiver TSE) |
6.2 Durchführung und Regeln
- Tagesabschluss soll täglich nach Geschäftsschluss erstellt werden
- Nur ein Abschluss pro Tag möglich (technisch erzwungen)
- Tagesabschlüsse sind unveränderbar und können nicht gelöscht werden
- Bei Ausfall der TSE: Z-Bericht wird als Demo-Modus markiert
7. Kassenmeldung beim Finanzamt
Gemäß § 146a AO müssen elektronische Kassensysteme dem zuständigen Finanzamt gemeldet werden. OrgPOS stellt hierfür die notwendigen Exportformate bereit:
| Format | Verwendungszweck | Verfügbar in |
|---|---|---|
| DSFinV-K JSON | Standardisierter Export für Betriebsprüfung | Alle Pläne |
| CSV-Export | Steuerberater / DATEV | Alle Pläne |
| DATEV-Export | Direkte DATEV-Übergabe | Pro / Business |
8. Datensicherung
8.1 Automatische Backups
- Tägliche automatische Backups der Datenbank (IONOS, Deutschland)
- Backups werden mindestens 10 Jahre aufbewahrt
- Alle Backups sind verschlüsselt
8.2 Empfehlung für den Betreiber
- Monatlich: CSV-Export herunterladen und lokal archivieren
- Jährlich: DSFinV-K Export erstellen und dem Steuerberater übergeben
- Bei Kündigung: Alle Daten innerhalb der 30-Tage-Frist exportieren
9. Betriebsanleitung
9.1 Tägliche Aufgaben
- Anmeldung in OrgPOS (orgpos.de/login.html)
- TSE-Status prüfen (grüner Badge = aktiv)
- Buchungen/Kassenvorgänge erfassen
- Bei Fehlern: Storno durchführen (niemals löschen)
- Am Tagesende: Tagesabschluss (Z-Bericht) erstellen
- Z-Bericht prüfen und bei Bedarf drucken / als PDF speichern
9.2 Monatliche Aufgaben
- Monatsauswertung prüfen (Auswertungen → Monat)
- CSV-Export für Steuerberater erstellen
- Lokales Backup der Exporte anlegen
9.3 Jährliche Aufgaben
- DSFinV-K Export für das abgelaufene Jahr erstellen und aufbewahren
- Verfahrensdokumentation aktualisieren und erneut unterzeichnen
- TSE-Zertifikat prüfen (fiskaly-Dashboard)
- Steuerberater mit allen notwendigen Exporten versorgen
10. Kontakt & Support
| Anliegen | Kontakt |
|---|---|
| OrgPOS Support | mail@orgpos.de · 0170 90 90 001 |
| TSE-Anbieter (fiskaly) | support@fiskaly.com · fiskaly.com |
| Steuerliche Fragen | Ihren Steuerberater kontaktieren |
| Finanzamt-Meldung | Über Steuerberater oder direkt beim zuständigen Finanzamt |
Unterschrift & Bestätigung
Diese Verfahrensdokumentation wurde zur Kenntnis genommen, inhaltlich geprüft und ist Bestandteil der steuerlichen Unterlagen des Unternehmens. Sie ist gemäß GoBD 10 Jahre aufzubewahren.
Firmenname:
Steuernummer / USt-IdNr.:
Ort, Datum:
Unterschrift (Betreiber):
