1. Dokumentenkontrolle und Geltungsbereich
| Merkmal | Angabe |
|---|---|
| Dokument | Verfahrensdokumentation (Systemdokumentation) EinDok |
| Version | 1.0 – Entwurf zur fachlichen Prüfung |
| Stand | 11. Oktober 2026 |
| Gegenstand | Webanwendung EinDok (eindok.de) zur Erstellung von Ausgangsrechnungen, Angeboten, Kostenvoranschlägen und Mahnungen sowie zur Erfassung von Ausgaben und Einnahmen |
| Betreiber | Turana Mamedova, Kadenstr. 16, 01237 Dresden, E-Mail: info@eindok.de |
| Verantwortlich für diese Dokumentation | Turana Mamedova, Betreiberin |
| Adressaten | Anwender (Steuerpflichtige), steuerliche Berater, Betriebsprüfer |
Die Verantwortung für die Ordnungsmäßigkeit der Buchführung und der Aufbewahrung liegt nach § 146 AO beim Steuerpflichtigen, also beim Anwender. Das Dokument beschreibt, welche Funktionen und Schutzmaßnahmen die Software dafür bereitstellt und wo die Mitwirkung des Anwenders erforderlich ist (Abschnitt 13).
2. Rechtlicher Rahmen und Zielsetzung
Maßgeblich sind insbesondere:
- §§ 145 bis 147 AO, insbesondere § 146 Abs. 4 AO (Unveränderbarkeit von Eintragungen) und § 147 AO (Aufbewahrung, Datenzugriff);
- §§ 238, 239 und 257 HGB;
- §§ 14, 14a und 14b UStG sowie die Abschnitte 14.5 und 14a.1 des Umsatzsteuer-Anwendungserlasses (Pflichtangaben und Aufbewahrung von Rechnungen);
- Grundsätze zur ordnungsmäßigen Führung und Aufbewahrung von Büchern, Aufzeichnungen und Unterlagen in elektronischer Form sowie zum Datenzugriff (GoBD), BMF-Schreiben vom 28. November 2019 in der jeweils geltenden Fassung, insbesondere zur Verfahrensdokumentation (Rz. 151 ff.);
- für elektronische Rechnungen: Europäische Norm EN 16931 und der Standard XRechnung (Version 3.0).
Ziel ist, einem sachverständigen Dritten in angemessener Zeit einen Überblick über das Verfahren zu ermöglichen und die Einhaltung der Grundsätze der Nachvollziehbarkeit, Vollständigkeit, Richtigkeit, zeitgerechten Erfassung, Ordnung und Unveränderbarkeit nachzuweisen.
3. Allgemeine Beschreibung des Verfahrens
3.1 Betriebsmodell und Funktionsumfang
EinDok wird als Software as a Service über den Webbrowser betrieben. Jeder Anwender arbeitet in einem eigenen Mandanten (Firmenprofil); sämtliche Daten sind diesem Mandanten zugeordnet. Funktionsumfang:
- Ausgangsdokumente: Rechnung, Stornorechnung, Angebot, Kostenvoranschlag, Mahnung;
- Erfassung von Ausgaben und Einnahmen mit Belegablage und Zuordnung zu Kategorien (SKR 03);
- Zahlungserfassung, Auswertung (GuV-Übersicht) und Export im DATEV-Format;
- Erzeugung, Versand und Archivierung elektronischer Rechnungen (XRechnung) sowie Import eingegangener elektronischer Rechnungen.
Die Software ist kein vollständiges Finanzbuchhaltungssystem nach den Regeln der doppelten Buchführung.
3.2 Systemarchitektur
| Komponente | Beschreibung |
|---|---|
| Frontend | Webanwendung im Browser des Anwenders (Next.js / React); die PDF-Darstellung wird im Browser aus den gespeicherten Daten erzeugt |
| Backend | Anwendungsserver (NestJS / Node.js) mit GraphQL-Schnittstelle; Geschäftslogik, Berechnung, Berechtigungsprüfung |
| Datenbank | Relationale Datenbank (PostgreSQL) mit Fremdschlüsseln und Eindeutigkeitsbedingungen; Versionierung des Schemas durch Migrationen |
| Dateiablage | Hochgeladene Belegdateien je Anwender getrennt im Dateisystem des Servers |
| Validierungsdienst | Offizieller KoSIT-Validator (Version 1.6.3) mit der XRechnung-Konfiguration 3.0.2 als eigener interner Dienst; wird für eingehende elektronische Rechnungen verwendet |
| Externe Dienste | Zahlungsabwicklung für Abonnements (Stripe), E-Mail-Versand; Einzelheiten und Auftragsverarbeitung in der Datenschutzerklärung |
4. Anwenderdokumentation
4.1 Ausgangsrechnung
- Entwurf: Der Anwender legt die Rechnung mit Kunde, Positionen, Steuersätzen und optional Rabatt und Versandkosten an. Der Entwurf trägt noch keine Rechnungsnummer und ist frei änderbar und löschbar.
- Festschreiben: Beim Versand bzw. Abschluss wird die Rechnung festgeschrieben. Erst dabei wird die Rechnungsnummer vergeben; der Status wechselt auf „Gesendet“. Bei elektronischen Rechnungen wird vorher geprüft, ob alle Pflichtangaben vorliegen; bei Mängeln wird das Festschreiben abgelehnt, ohne eine Nummer zu verbrauchen.
- Versand: Als PDF und/oder XRechnung (XML) per E-Mail oder zum Herunterladen.
- Zahlung: Zahlungseingänge werden erfasst; der Status wechselt auf „Teilweise bezahlt“ bzw. „Bezahlt“.
- Korrektur: Eine festgeschriebene Rechnung wird nicht geändert, sondern durch eine Stornorechnung mit eigener Nummer und Verweis auf das Original aufgehoben (Abschnitt 6).
- Mahnung: Aus einer offenen Rechnung kann eine Mahnung mit Verzugszinsen und Gebühr erzeugt werden.
4.2 Angebote und Kostenvoranschläge
Angebote und Kostenvoranschläge sind keine Buchungsbelege. Sie können auch nach dem Versand geändert und gelöscht werden und werden bei Annahme in eine Rechnung (Entwurf) überführt.
4.3 Ausgaben und Einnahmen
- Der Anwender lädt einen Beleg hoch (Bild, PDF oder elektronische Rechnung) und erfasst bzw. bestätigt Datum, Lieferant, Belegnummer, Beträge, Steuersätze und Kategorie. Die Kategorie wird nicht automatisch festgelegt.
- Der Datensatz wird als Entwurf gespeichert und anschließend festgeschrieben; danach sind Zahlungen erfassbar.
4.4 Kleinunternehmer
Ist im Firmenprofil die Kleinunternehmerregelung (§ 19 UStG) hinterlegt, wird keine Umsatzsteuer ausgewiesen; auf der Rechnung und in der XRechnung erscheint der entsprechende Hinweis.
5. Technische Systemdokumentation
5.1 Belegnummern
- Format: Präfix – Jahr – laufende Nummer(z. B. RE-2026-0001); der Präfix ist je Belegart konfigurierbar, der Nummernkreis läuft je Belegart und Jahr.
- Die Vergabe erfolgt beim Festschreiben innerhalb einer Datenbanktransaktion mit exklusiver Sperre je Mandant, Belegart und Jahr. Dadurch ist die Vergabe auch bei gleichzeitigen Zugriffen eindeutig.
- Die Eindeutigkeit wird zusätzlich durch eine Eindeutigkeitsbedingung (Mandant, Nummer) in der Datenbank erzwungen.
- Entwürfe erhalten keine Nummer; gelöschte Entwürfe verbrauchen daher keine Nummer. Stornorechnungen erhalten eine eigene Nummer aus demselben Nummernkreis.
- Der Anwender kann beim Festschreiben die laufende Nummer (ausschließlich Ziffern) vorgeben, etwa zur Fortführung eines bestehenden Nummernkreises. Die lückenlose Fortführung in diesem Fall liegt in seiner Verantwortung.
5.2 Berechnung
- Die Umsatzsteuer wird je Steuersatz auf die Summe der Bemessungsgrundlagen berechnet und kaufmännisch auf den Cent gerundet (Abschnitt 14.5 Abs. 20 UStAE).
- Ein Rabatt auf Positionen wird anteilig auf die Steuersätze verteilt; Versandkosten werden mit einem eigenen Steuersatz berücksichtigt und nicht rabattiert.
- Eine gemeinsame Berechnungslogik erzeugt die gespeicherten Summen, die Darstellung im PDF und die Werte der XRechnung; sie ist durch automatisierte Tests abgesichert.
- Steuerliche Behandlungen je Dokument: normal, steuerfrei, Reverse Charge, innergemeinschaftliche Lieferung, Ausfuhr, nicht steuerbar. Bei allen außer „normal“ wird das gesamte Dokument mit 0 % abgerechnet und der zugehörige Hinweis ausgegeben.
5.3 Datenhaltung
Dokumente, Positionen, Zahlungen, Kunden, Ausgaben und deren Beziehungen werden relational gespeichert. Je Datensatz werden Erstellungs- und Änderungszeitpunkt festgehalten. Belegdateien werden getrennt je Anwender abgelegt. Ein gesondertes Änderungsprotokoll wird nicht geführt (Abschnitt 13).
6. Unveränderbarkeit und Korrekturverfahren
Die Sperre festgeschriebener Belege wird in der Anwendungslogik des Servers durchgesetzt (Statusprüfung bei jeder Änderung). Für archivierte elektronische Rechnungen besteht zusätzlich eine Sperre auf Ebene der Datenbank.
| Objekt | Änderung | Löschung |
|---|---|---|
| Ausgangsrechnung – Entwurf | Frei änderbar | Möglich |
| Ausgangsrechnung – festgeschrieben | Nicht änderbar; zulässig sind nur Zahlungserfassung und Statuswechsel. Korrektur durch Stornorechnung | Nicht möglich |
| Stornorechnung | Eigene Nummer, Verweis auf das Original; das Original erhält den Status „Storniert“ | Nicht möglich |
| Angebot / Kostenvoranschlag | Auch nach dem Versand änderbar (kein Buchungsbeleg) | Möglich |
| Ausgabe / Einnahme – Entwurf | Frei änderbar | Möglich; enthält der Beleg eine archivierte elektronische Rechnung, ist eine ausdrückliche Bestätigung erforderlich |
| Ausgabe / Einnahme – festgeschrieben | Nicht änderbar; die Festschreibung kann vom Anwender aufgehoben werden (Rückkehr in den Status Entwurf), ohne Protokollierung | Nicht möglich, solange festgeschrieben |
| Archiviertes Original einer elektronischen Rechnung | Nach Anlage nicht änderbar (Datenbank verweigert jede Aktualisierung) | Nur gemeinsam mit dem zugehörigen Beleg (Entwurf) bzw. bei Kontolöschung |
7. Elektronische Rechnungen (E-Rechnung)
7.1 Ausgang
- Erzeugung als XRechnung 3.0 im Format UBL (Rechnung, Typ 380; Stornorechnung als Gutschriftsanzeige, Typ 381 mit Verweis auf die stornierte Rechnung).
- Vor dem Festschreiben werden die für eine gültige XRechnung erforderlichen Angaben geprüft (u. a. Anschrift, Kontakt, Steuernummer bzw. USt-IdNr., IBAN, Leitweg-ID, bei Reverse Charge und innergemeinschaftlicher Lieferung die USt-IdNr.). Fehlt etwas, wird das Festschreiben abgelehnt und die fehlenden Angaben werden aufgelistet.
- Beim Festschreiben wird das Original der XRechnung unverändert archiviert und mit einem SHA-256-Hashwert versehen. Bei jedem späteren Abruf und beim E-Mail-Versand wird dieses archivierte Original ausgegeben, nicht neu erzeugt.
- Die Erzeugung wurde in der Entwicklung mit 44 Testfällen gegen den offiziellen KoSIT-Validator geprüft. Zur Laufzeit wird die ausgehende XRechnung nicht erneut validiert.
7.2 Eingang
- Import von XML-Dateien (UBL, UN/CEFACT CII) und von ZUGFeRD-/Factur-X-PDF mit eingebettetem XML.
- Jede importierte Datei wird zur Laufzeit durch den offiziellen KoSIT-Validator geprüft; das Ergebnis (gültig, Beanstandungen, nicht anwendbar, nicht erreichbar) wird zusammen mit dem Beleg gespeichert. Eine Beanstandung verhindert den Import nicht.
- Dublettenprüfung: identische Dateien (Hashwert) können nicht erneut archiviert werden; gleicher Lieferant mit gleicher Rechnungsnummer wird als Warnung angezeigt.
- Es werden nur Rechnungen in Euro übernommen. Die Zuordnung zu Kategorien erfolgt durch den Anwender.
- Das empfangene Original (XML bzw. das im PDF eingebettete XML) wird unverändert mit Hashwert und Zeitpunkt archiviert und kann heruntergeladen werden.
7.3 Hinweise bei besonderer steuerlicher Behandlung
Bei Auswahl einer besonderen steuerlichen Behandlung wird ein Standardhinweis vorbelegt, den der Anwender vor dem Festschreiben ändern kann. Der Hinweis erscheint auf der Rechnung und in der XRechnung. Die Verantwortung für die Richtigkeit im Einzelfall liegt beim Anwender.
| Behandlung | Kategorie (XRechnung) | Standardhinweis |
|---|---|---|
| Steuerfrei | E | Steuerfreie Leistung gemäß § 4 UStG (Anwender ergänzt die konkrete Vorschrift) |
| Reverse Charge | AE | Steuerschuldnerschaft des Leistungsempfängers (Reverse Charge) – Gesetzesverweis (§ 13b UStG bzw. Art. 196 MwStSystRL) ergänzt der Anwender |
| Innergemeinschaftliche Lieferung | K | Steuerfreie innergemeinschaftliche Lieferung gemäß § 4 Nr. 1b i. V. m. § 6a UStG |
| Ausfuhr | G | Steuerfreie Ausfuhrlieferung gemäß § 4 Nr. 1a i. V. m. § 6 UStG |
| Nicht steuerbar | O | Nicht im Inland steuerbare Leistung (§ 3a Abs. 2 UStG) |
| Kleinunternehmer | E | Gemäß § 19 UStG wird keine Umsatzsteuer berechnet |
8. Zugriffs- und Datensicherheitskonzept
| Bereich | Maßnahme |
|---|---|
| Authentifizierung | Anmeldung mit E-Mail und Passwort (Passwörter werden ausschließlich als Argon2-Hash gespeichert), Bestätigung der E-Mail-Adresse, optional Zwei-Faktor-Authentifizierung (TOTP) und Passkeys (WebAuthn) |
| Missbrauchsschutz | Bot-Schutz (Cloudflare Turnstile) bei Anmeldung und Registrierung; Begrenzung der Aufrufhäufigkeit je Anwender für die rechenintensive Importfunktion |
| Mandantentrennung | Jeder lesende und schreibende Zugriff wird serverseitig auf den Mandanten des angemeldeten Anwenders geprüft; Belegdateien sind je Anwender getrennt abgelegt und nur dem Eigentümer zugänglich |
| Transport und Hosting | Verschlüsselte Übertragung (TLS); Betrieb auf Servern innerhalb der Europäischen Union (Datenschutzerklärung, Abschnitt 2) |
| Hosting-Anbieter und Standort | Hetzner Online GmbH (virtueller Server); Rechenzentrum in Nürnberg, Deutschland |
| Datensicherung (Intervall, Aufbewahrung, Wiederherstellungstest) | Automatische tägliche Sicherung der Datenbank um 06:40 Uhr; die Sicherungen werden getrennt vom Produktivsystem aufbewahrt und eine Woche (7 Tage) vorgehalten; die Wiederherstellung wird regelmäßig geprüft |
| Auftragsverarbeitung beim Hosting-Anbieter | Auftragsverarbeitungsvertrag nach Art. 28 DSGVO mit der Hetzner Online GmbH, abgeschlossen am 11. Oktober 2026. Der Vertrag und der Prüfbericht der TÜV Rheinland i-sec GmbH zu den technischen und organisatorischen Maßnahmen der Rechenzentren (Februar 2026) liegen vor und werden dem steuerlichen Berater oder der Aufsichtsbehörde auf Anfrage vorgelegt. Öffentlich einsehbar: Technische und organisatorische Maßnahmen (PDF), Zertifizierungen. |
| Administrativer Zugriff auf Produktivdaten | Ausschließlich der Betreiber bzw. Entwickler; Zugriff per SSH-Schlüssel; das Konto beim Hosting-Anbieter ist durch Zwei-Faktor-Authentifizierung geschützt |
| Protokollierung | Zugriffsprotokolle werden nach 90 Tagen gelöscht (Datenschutzerklärung, Abschnitt 7) |
9. Aufbewahrung, Löschung und Datenzugriff
9.1 Verantwortung für die Aufbewahrung
Die gesetzliche Aufbewahrungspflicht trifft den Anwender als Steuerpflichtigen (§ 147 AO; § 14b UStG). Nach geltendem Recht beträgt die Frist für Buchungsbelege 8 Jahre, für Handels- und Geschäftsbriefe 6 Jahre und für Bücher und Jahresabschlüsse 10 Jahre. EinDok ist ein Werkzeug zur Erstellung und Ablage; es übernimmt die Aufbewahrung nicht anstelle des Anwenders.
9.2 Löschung des Kontos
Löscht der Anwender sein Konto, werden sämtliche Daten dieses Mandanten einschließlich Rechnungen, Belege und archivierter Originale unwiderruflich gelöscht; der Betreiber bewahrt sie nicht weiter auf. Der Anwender wird im Löschdialog darauf hingewiesen, dass alle Daten unwiderruflich gelöscht werden. Er hat vor der Löschung alle aufbewahrungspflichtigen Unterlagen selbst zu sichern (Abschnitt 13).
9.3 Datenzugriff der Finanzverwaltung (§ 147 Abs. 6 AO)
Die Finanzverwaltung kann in den Formen des unmittelbaren (Z1), mittelbaren (Z2) und der Datenträgerüberlassung (Z3) Zugriff verlangen. Der Zugriff erfolgt über den Anwender als Inhaber der Daten. Zur Verfügung stehen:
- Einsicht und Filterung der Belege in der Anwendung (Anzeige, Suche, Statusfilter);
- Abruf einzelner Belege als PDF und – bei elektronischen Rechnungen – als XML im archivierten Original;
- Export von Buchungsdaten im DATEV-Format (CSV).
Ein gesammelter Export aller archivierten Originale in einem Vorgang ist derzeit nicht als Funktion vorhanden.
10. Internes Kontrollsystem
- Pflichtfeld- und Plausibilitätsprüfungen bei der Eingabe (z. B. Format der Leitweg-ID einschließlich Prüfziffer);
- Vollständigkeitsprüfung vor dem Festschreiben elektronischer Rechnungen, ohne dass eine Nummer verbraucht wird;
- Eindeutige Nummernvergabe mit Datenbanksperre und Eindeutigkeitsbedingung;
- Gleiche Berechnungslogik für Speicherung, Anzeige und XRechnung, geprüft durch automatisierte Tests;
- Prüfung eingehender elektronischer Rechnungen durch den offiziellen KoSIT-Validator und Dublettenerkennung;
- Manipulationsschutz für archivierte Originale (Hashwert, Sperre in der Datenbank);
- Bestätigungspflicht vor dem Löschen eines Belegs mit archiviertem Original.
11. Änderungsmanagement der Software
- Der Quelltext wird in einem Versionsverwaltungssystem (Git) geführt; Änderungen sind einzeln nachvollziehbar.
- Fachlich relevante Logik (Berechnung, Nummernvergabe, Festschreibung, Archivierung, XRechnung) ist durch automatisierte Tests abgesichert; die Erzeugung der XRechnung wird zusätzlich gegen den offiziellen KoSIT-Validator geprüft.
- Änderungen am Datenbankschema erfolgen ausschließlich über versionierte Migrationen.
- Freigabe und Rücknahme: Änderungen werden in den Branch „production“ des Versionsverwaltungssystems übernommen; das Einspielen auf den Produktivserver wird dadurch automatisch ausgelöst. Eine fehlerhafte Änderung wird im Branch „production“ rückgängig gemacht (Revert), was das Einspielen des vorherigen Stands erneut automatisch auslöst.
12. Erfüllung der GoBD-Grundsätze (Übersicht)
| Grundsatz | Umsetzung in EinDok | Bewertung |
|---|---|---|
| Nachvollziehbarkeit | Eindeutige Belegnummern; Verknüpfung von Storno und Original sowie von Zahlungen und Belegen; archivierte Originale mit Hashwert | Umgesetzt; kein Änderungsprotokoll (Abschnitt 13) |
| Vollständigkeit | Nummernvergabe nur beim Festschreiben, durch Sperre und Eindeutigkeitsbedingung gesichert; festgeschriebene Rechnungen nicht löschbar | Umgesetzt; manuelle Vorgabe der Nummer liegt beim Anwender |
| Richtigkeit | Zentrale, getestete Berechnung; Validierung elektronischer Rechnungen; Plausibilitätsprüfungen | Umgesetzt; Inhalt der Eingaben liegt beim Anwender |
| Zeitgerechte Erfassung | Festschreibung beim Versand, Erfassung von Erstellungs- und Änderungszeitpunkt | Teilweise; Rechnungs- und Leistungsdatum wählt der Anwender |
| Ordnung | Strukturierte Nummernkreise je Belegart und Jahr, Filter und Suche, Zuordnung der Belegdateien zu Datensätzen | Umgesetzt |
| Unveränderbarkeit | Sperre festgeschriebener Rechnungen und archivierter Originale; Korrektur nur durch Storno | Teilweise; Festschreibung von Ausgaben aufhebbar, kein Änderungsprotokoll |
13. Bekannte Einschränkungen und Mitwirkung des Anwenders
Zur Transparenz gegenüber dem steuerlichen Berater werden die folgenden Punkte ausdrücklich genannt:
- Es wird kein revisionssicheres Änderungsprotokoll geführt. Dokumentiert werden Erstellungs- und Änderungszeitpunkt, nicht der Verlauf einzelner Feldänderungen.
- Die Festschreibung von Ausgaben und Einnahmen kann vom Anwender aufgehoben werden; dieser Vorgang wird nicht protokolliert.
- Rechnungsdatum, Leistungsdatum und – auf ausdrücklichen Wunsch – die laufende Rechnungsnummer legt der Anwender fest. Die zeitgerechte und lückenlose Erfassung liegt in seiner Verantwortung.
- Erfasste Zahlungseingänge können vom Anwender korrigiert werden; die Änderung wird nicht protokolliert.
- Bei Kontolöschung werden alle Daten unwiderruflich gelöscht (Abschnitt 9.2). Die Sicherung und Aufbewahrung der Unterlagen für die gesetzliche Frist ist Pflicht des Anwenders.
- Die Sperre festgeschriebener Rechnungen wird in der Anwendungslogik durchgesetzt, nicht durch zusätzliche Datenbankmechanismen; ausgenommen sind archivierte elektronische Originale.
- Eine Softwarebescheinigung nach IDW PS 880 oder eine vergleichbare Zertifizierung liegt nicht vor.
- Der Datenzugriff der Finanzverwaltung (Abschnitt 9.3) erfolgt über Einzelabrufe und den DATEV-Export; ein Sammelexport aller Originale ist nicht vorhanden.
- Die Pflicht zur Aufbewahrung, die Kontierung, die Prüfung der steuerlichen Behandlung im Einzelfall und die Erstellung der eigenen Verfahrensdokumentation des Anwenders bleiben bei diesem.