ED01 - Motivation: Why an Entrepreneur Keeps Their Diary in Git

Problem

An entrepreneur founds an organization - and faces an unclear picture of future risks. Which obligations arise when? Which records must be retained for how long? Which deadlines are at risk of being missed? Which authorities announce which audit when?

Today's practice in the SME sector is characterized by:

%%{init: {'theme':'base','themeVariables':{'primaryColor':'#FBFAF7','primaryTextColor':'#0F1B33','primaryBorderColor':'#6B7280','lineColor':'#6B7280'}}}%% flowchart LR A["Gründung
Tag 0"] --> B["Pflichten
unklar"] B --> C["Heute cheap
ignoriert"] C --> D["Morgen teuer
Bußgeld/Aberkennung"] D --> E["Risiko
realisiert"] style A fill:#D1FAE5,stroke:#0A7F5C,color:#0F1B33 style B fill:#DBEAFE,stroke:#1D4ED8,color:#0F1B33 style C fill:#FDBA74,stroke:#C2410C,color:#0F1B33 style D fill:#FDBA74,stroke:#C2410C,color:#0F1B33 style E fill:#FF3333,stroke:#0F1B33,color:#FBFAF7

Key statement

Not only documents must be audit-proof - decisions, deadlines and record references must also be traceable, reproducible and auditable. A Git-native diary does exactly that: it transforms facts captured today cheaply (inexpensively) (a JSON entry with V7GUID + SHA-256 record reference) into future audit-proof evidence. Compliance becomes a lever, not a brake.

Compliance by Design: The "unclear picture" of future risks is mitigated by GitCover techniques (OSCAL, OPA, V7GUID, Git hooks) from the outset, not only when the auditor rings the doorbell.

The diary as an entrepreneurial work agenda

The diary is not a private notebook and not a retrospectively maintained working time calendar. It is the temporal SSoT of work: The agenda shows which service, decision or clarification arose when and to which record, contract or process it traces back. As a result, the same proof of work can serve different purposes without building a new story for each audit:

The rule is simple: The diary describes the agenda; the repositories preserve the proof. An agent may derive from the diary only what the linked original docs and sidecars support. Thus compliance is not treated as later additional work, but as a normal workflow.

Genesis: The social insurance audit as a practical trigger

The GitCover idea was not born in an ivory tower, but from concrete practical experience: most recently from a social insurance company audit at a micro-UG (anonymized here as ORG-V for "predecessor organization") for the period 2021–2023; which took place in the period 02/2024–03/2025. The audit revealed pain points that GitCover techniques address.

Timeline of the social insurance audit

%%{init: {'theme':'base','themeVariables':{'primaryColor':'#FBFAF7','primaryTextColor':'#0F1B33','primaryBorderColor':'#6B7280','lineColor':'#6B7280'}}}%% timeline title SV-Prüfung ORG-V - Genese der GitCover-Idee section 2024 - Prüfung angekündigt Feb 2024 : DRV kündigt BP nach § 28p SGB IV an Dez 2024 : Unterlagen-Anforderung (Lohnkonten 2021–2023) Dez 2024 : Versand als PDF/ZIP per E-Mail section 2025 - Prüfung abgeschlossen Feb 2025 : DRV übermittelt Prüfergebnisse (Anhörung § 24 SGB X) Feb 2025 : Akzeptanz ohne Einwände Mär 2025 : SV-Prüfung abgeschlossen : GitCover-Idee geboren section 2025 - Ableitungen Q1 2025 : AuditPrep-Modul konzipiert Q2 2025 : Intensive F&E Q3 2025 : V7GUID/GCEP DPMA-Anmeldungen

What happened?

Date Event Status
02/2024 DRV announces company audit pursuant to § 28p SGB IV ⏳
12/2024 DRV requests audit documents (payroll accounts 2021–2023, questionnaire, cover letter) ⏳
12/2024 Documents are compiled as PDF/ZIP and sent by email ✅
02/2025 DRV transmits audit results (hearing § 24 SGB X, total summary sheet, attachments HEK/Minijob-Zentrale) ✅
02/2025 Acceptance without objections; refund application submitted to KK ✅
03/2025 Social insurance audit completed - GitCover idea born ✅

Financial result (net)

Position Amount
Refund of overpaid U1 contributions +121 EUR
Additional demand for KV flat-rate contributions −30 EUR
Net refund +91 EUR
Service provider costs >100 EUR
Effort several days of manual compilation

Pain points - what the audit revealed

%%{init: {'theme':'base','themeVariables':{'primaryColor':'#FBFAF7','primaryTextColor':'#0F1B33','primaryBorderColor':'#6B7280','lineColor':'#6B7280'}}}%% flowchart LR P1["Kein Büro/Fax/Mitarbeiter
Prüfung nur per E-Mail"] P2["Beleg-Echtheit unklar
PDFs ohne kryptographische Verankerung"] P3["Keine Nachweiskette
Lohnkonten/SV/Erstattung an verschiedenen Orten"] P4["Fristen ad-hoc
manuell im Kalender gepflegt"] P5["Audit-Export fehlt
euBP/eXTra, Z3 nur mit Spezialsoftware"] P6["Lohn-Account pausiert
nach Mitarbeiter-Ausscheiden
Extra-Kosten > Erstattung"] P7["Alte Sicherungen
alter Software-Stand
GoBD-Auflage verletzt"] P1 --> G["GitCover-Idee
geboren"] P2 --> G P3 --> G P4 --> G P5 --> G P6 --> G P7 --> G G --> S["GitCover-Lösungen
SHA-256+V7GUID, Hooks, Fristen-Check
Evidence-Packages, Git-Bundles self-contained"] style P1 fill:#FDBA74,stroke:#C2410C,color:#0F1B33 style P2 fill:#FDBA74,stroke:#C2410C,color:#0F1B33 style P3 fill:#FDBA74,stroke:#C2410C,color:#0F1B33 style P4 fill:#FDBA74,stroke:#C2410C,color:#0F1B33 style P5 fill:#FDBA74,stroke:#C2410C,color:#0F1B33 style P6 fill:#FDBA74,stroke:#C2410C,color:#0F1B33 style P7 fill:#FDBA74,stroke:#C2410C,color:#0F1B33 style G fill:#DBEAFE,stroke:#1D4ED8,color:#0F1B33 style S fill:#D1FAE5,stroke:#0A7F5C,color:#0F1B33
  1. No office operation, no fax, no employee - and nevertheless a company audit had to be handled purely by email with PDF and ZIP files. The tools did not exist for this micro case.
  2. Record authenticity unclear - PDFs by email have no cryptographic anchoring. Who changed what and when? Evidentiary value was given only through manual traceability.
  3. No end-to-end chain of evidence - payroll accounts, social insurance notifications, contribution records and refund documents were in different places, without cross-references. Every follow-up question required a new search.
  4. Deadline management ad hoc - hearing deadlines, refund deadlines, objection deadlines were maintained manually in the calendar. No warning when they were about to expire.
  5. Audit export was missing - the DRV requested data in euBP format (eXTra V3.4.0); the tax office would have required a Z3 data carrier. Both were possible only with special software or manual preparation.
  6. Employee departure → payroll account paused - after the departure of the then employee, the payroll accounting account at the service provider was paused. Who would unnecessarily keep a cloud account running at cost when the reason no longer exists (employee left, no more payroll accounting needed)? However, compiling the document package for the audit then required additional extra costs at the service provider, which in the end were higher than the small "refund" at the end of the audit.
  7. Reactivation of old backups with an old software version - to make the payroll accounts 2021–2023 accessible again, the old backups had to be reactivated with the old software version - a considerable practical problem. Formally, this is a rule violation against the GoBD requirement to also technically ensure that access is always possible during the long retention period (10 years). In practice, this obligation conflicts with the business pressure not to keep unused cloud accounts running at cost. Precisely this tension is a core motive for GitCover: Git bundles are self-contained - they need no cloud accounts, no service provider contracts, no software versions. A git clone is enough, and the retention period is technically fulfilled.

The "rule violation against the GoBD requirement" mentioned in point 7 has a clear legal basis - in the Fiscal Code (AO) and in the GoBD (Principles for the proper keeping and retention of books, records and documents in electronic form and for data access, BMF letter).

AO § 146 Abs. 5 - Availability during the retention period

"When books and other required records are kept on data carriers, it must in particular be ensured that during the retention period the data are available at all times and can be made readable without delay."

This is the core provision: Anyone who books electronically must ensure, throughout the entire retention period (10 years for books/records, 8 years for accounting records, § 147 Abs. 3 AO), that the data are available at all times and readable without delay. A paused cloud account that is reactivated only against extra costs violates this obligation - the data are not "available at all times", but only against payment and with delay.

AO § 147 Abs. 2 - Retention on data carriers

"With the exception of annual financial statements [...] the documents listed in paragraph 1 may also be retained as a reproduction on an image carrier or on other data carriers if this complies with the principles of proper bookkeeping and it is ensured that the reproduction or the data [...] are available at all times during the retention period, can be made readable without delay and can be evaluated by machine."

Again: "available at all times", "readable without delay", "machine-evaluable". An old software version that first has to be reactivated does not fulfill "without delay".

AO § 147 Abs. 5 - Aids at the taxpayer's expense

"Anyone who presents documents to be retained in the form of a reproduction on an image carrier or on other data carriers is obliged to provide, at their own expense, the aids that are necessary to make the documents readable."

This means: If the service provider no longer maintains the old system, the entrepreneur must provide the aids (software, licenses, hardware) themselves in order to make the data readable. That was exactly the practical problem in the genesis case: old backups, old software version, no aids available anymore.

AO § 147 Abs. 6 - Data access during external audit

"If the documents referred to in paragraph 1 were created with the help of a data processing system, the tax authority may, in the context of an external audit [...] require that the data be made available for machine evaluation in accordance with its specifications."

During an external audit, the entrepreneur must make the data available in a machine-evaluable form - not as a PDF printout, but as structured data. A paused cloud account that offers only PDF export is not enough.

GoBD - Procedural documentation and system change

The GoBD specify these AO provisions for electronic systems. Central requirements:

Theoretical consequences of violation

%%{init: {'theme':'base','themeVariables':{'primaryColor':'#FBFAF7','primaryTextColor':'#0F1B33','primaryBorderColor':'#6B7280','lineColor':'#6B7280'}}}%% flowchart LR V["Verstoß gegen
AO § 146/147 + GoBD"] V --> K1["Verspätungszuschlag
§ 152 AO
bis 25.000 EUR"] V --> K2["Schätzung
§ 162 AO
bei nicht verwertbaren Daten"] V --> K3["Verzögerungsgeld
§ 146 Abs. 2c AO
2.500–250.000 EUR"] V --> K4["Beweislastumkehr
FA schätzt, Unternehmer
muss widerlegen"] V --> K5["Ordnungswidrigkeit
§ 379 AO
Bußgeld bis 50.000 EUR"] V --> K6["Steuerstrafverfahren
§ 370 AO
bei vorsätzlicher Verkürzung"] style V fill:#FF1A1A,stroke:#0F1B33,color:#FBFAF7 style K1 fill:#FDBA74,stroke:#C2410C,color:#0F1B33 style K2 fill:#FDBA74,stroke:#C2410C,color:#0F1B33 style K3 fill:#FDBA74,stroke:#C2410C,color:#0F1B33 style K4 fill:#FDBA74,stroke:#C2410C,color:#0F1B33 style K5 fill:#FDBA74,stroke:#C2410C,color:#0F1B33 style K6 fill:#FDBA74,stroke:#C2410C,color:#0F1B33
Consequence Legal basis Amount/risk
Late payment surcharge § 152 AO up to EUR 25,000 (individual case)
Estimation of the tax base § 162 AO tax office estimates if data are not usable - often to the detriment of the entrepreneur
Delay penalty § 146 Abs. 2c AO EUR 2,500–250,000 (for outsourcing without approval)
Reversal of the burden of proof § 162 AO, § 90 AO entrepreneur must rebut the estimate - hardly possible with missing data
Administrative offense § 379 AO fine up to EUR 50,000 (intentional or negligent)
Tax criminal proceedings § 370 AO imprisonment up to 5 years (for intentional tax evasion)

Practical assessment: In the genesis case, the social insurance audit was accepted without objections - there were no consequences. But that was luck: If the DRV had not accepted the data as PDF but had insisted on machine evaluation (§ 147 Abs. 6 AO), the entrepreneur would have been at a loss for an explanation. GoBD-compliant retention is not a theoretical obligation - it becomes real in every external audit.

Why Git solves the problem

Git fulfills the AO/GoBD requirements by design:

AO/GoBD requirement How Git fulfills it
"available at all times" (§ 146 Abs. 5) git clone possible at any time - no cloud account, no license
"readable without delay" (§ 147 Abs. 2) plain-text files (Markdown, JSON) - no software version needed
"machine-evaluable" (§ 147 Abs. 6) JSON schema first - structured data, no PDF export needed
"aids at the entrepreneur's expense" (§ 147 Abs. 5) Git is OSS, free of charge - no service provider costs
Immutability (GoBD Rz. 146) tags, protected branches, obsolescence marking
Procedural documentation (GoBD Rz. 64–91) the repo itself is procedural documentation - git log shows the procedure
System change/migration (GoBD Rz. 146–150) Git is version-independent - git clone on any system

E-invoicing: XML formats are original documents under the AO

Since January 1, 2025, e-invoicing has been mandatory for transactions between domestic companies (§ 14 UStG, Growth Opportunities Act). An e-invoice exists only if it is issued, transmitted and received in a structured electronic format and enables electronic processing (§ 14 Abs. 1 Satz 3 UStG). A simple PDF document no longer falls under this - since 2025 it is an "other invoice".

%%{init: {'theme':'base','themeVariables':{'primaryColor':'#FBFAF7','primaryTextColor':'#0F1B33','primaryBorderColor':'#6B7280','lineColor':'#6B7280'}}}%% flowchart LR P["Papierrechnung
vor 2025"] --> U["Übergang
2025–2027"] PDF["PDF per E-Mail
vor 2025 'elektronisch'"] --> U U --> E["E-Rechnung
ab 2025 verpflichtend
strukturiert, maschinenlesbar"] E --> X["XRechnung
XML-basiert
EN 16931"] E --> Z["ZUGFeRD
hybrid: PDF + XML
ab v2.0.1"] style P fill:#E5E7EB,stroke:#6B7280,color:#0F1B33 style PDF fill:#E5E7EB,stroke:#6B7280,color:#0F1B33 style U fill:#FDBA74,stroke:#C2410C,color:#0F1B33 style E fill:#DBEAFE,stroke:#1D4ED8,color:#0F1B33 style X fill:#D1FAE5,stroke:#0A7F5C,color:#0F1B33 style Z fill:#D1FAE5,stroke:#0A7F5C,color:#0F1B33

XML is the original document - not the PDF

The decisive point for retention: In an e-invoice, the structured part (XML) is the original document within the meaning of the AO, not any attached PDF or a human-readable image. The BMF clarifies (FAQ on e-invoicing, question 13):

"In the case of an e-invoice, at least its structured part must be retained in such a way that it is available intact in its original form."

This means:

AO § 147 - E-invoice as accounting record

E-invoices are accounting records within the meaning of § 147 Abs. 1 Nr. 4 AO and must therefore be retained for eight years (§ 147 Abs. 3 AO). As electronic documents, the AO/GoBD requirements apply:

EU-wide regulations: EN 16931 and Richtlinie 2014/55/EU

E-invoicing is based on EU law:

Why Git is ideal for e-invoices

E-invoicing requirement How Git fulfills it
XML as original document XML file is stored unchanged in the repo - git diff shows no change
Intact (§ 14b UStG) SHA-256 hash per commit - any change would be visible
Retain for 8 years (§ 147 Abs. 3) Git bundle as self-contained archive - no cloud account needed
Machine-evaluable (§ 147 Abs. 6) XML is machine-readable by definition - git grep is enough
EN 16931 validation Pre-commit hook can call XRechnung/ZUGFeRD validator
Visualization (BMF FAQ 12a) XML + human-readable Markdown sidecar - both in the repo
Transition period 2025–2027 Repo can retain both "other invoices" (PDF) and e-invoices (XML) in parallel

Practical tip: A Git repo can retain e-invoices (XML) and other invoices (PDF) in parallel - with clear separation by document type in the sidecar (v7g_taxonomy). The pre-commit hook checks whether e-invoices have a valid XML structure (XRechnung/ZUGFeRD schema). This bridges the transition period 2025–2027 without a media break.

Direct derivations in GitCover

Pain point GitCover concept Series article
Record authenticity unclear SHA-256 + V7GUID + sidecar .gc.md per record ED03, ED08
No chain of evidence Git repo with functionally dedicated hooks, land register as JSON ED06, ED07
Deadlines ad hoc checks/FRISTEN_CHECK.md + auto-warning ED09
Audit export missing GoBDExport (Z3), EuBPExport (eXTra), evidence packages ED08, ED36
Payroll account paused, extra costs Git bundles self-contained, no cloud accounts ED08, ED09
Old backups/old software version, GoBD violation Git repo as self-contained retention medium, git clone is enough ED08, ED09
Who is behind the company? Transparency Register: determine, document, report beneficial owners (wB) ED04, ED12, ED18, ED19
No OSS for special cases GitCover covers FZul/BSFZ, nonprofit status, working time, BEM ED25–ED34

Note - Micro-entrepreneur obligations from the 1st employee: Often even micro-entrepreneurs are subject to such obligations from the 1st employee onward - working time recording (ArbZG), minimum wage documentation (MiLoG), vacation/sickness/BEM (BUrlG/EFZG/SGB IX), social insurance registration (SGB IV). The obligations from the 1st employee discussed in Part IV are therefore not large-company special topics, but affect precisely micro and small businesses that hire staff for the first time. GitCover deliberately targets this threshold - the transition from solo entrepreneur to employer is the critical moment in which compliance obligations rise abruptly. Obligations from business registration (sphere classification, VBG exemption, flat rates) are already discussed in Part II - they arise without employees.

Why Git as a diary medium?

Git is originally a version control system - but it brings three properties that make it suitable by design for compliance:

%%{init: {'theme':'base','themeVariables':{'primaryColor':'#FBFAF7','primaryTextColor':'#0F1B33','primaryBorderColor':'#6B7280','lineColor':'#6B7280'}}}%% flowchart LR G["Git als
Tagebuch-Medium"] G --> U["Unveränderbarkeit
nach Freigabe
(Tags, Protected Branches)"] G --> N["Nachvollziehbarkeit
Autor + Zeitstempel
+ kryptographische Integrität"] G --> D["Dezentralität
Git-Bundles + GCEP
Multi-Site, Off-Site"] U --> GoBD["GoBD Rz. 146
konform"] N --> Audit["Audit-Ready
reproduzierbar"] D --> Backup["Kein SPOF
verteilt"] style G fill:#0F1B33,stroke:#0F1B33,color:#FBFAF7 style U fill:#DBEAFE,stroke:#1D4ED8,color:#0F1B33 style N fill:#DBEAFE,stroke:#1D4ED8,color:#0F1B33 style D fill:#DBEAFE,stroke:#1D4ED8,color:#0F1B33 style GoBD fill:#D1FAE5,stroke:#0A7F5C,color:#0F1B33 style Audit fill:#D1FAE5,stroke:#0A7F5C,color:#0F1B33 style Backup fill:#D1FAE5,stroke:#0A7F5C,color:#0F1B33
  1. Immutability after approval - tags and protected branches guarantee that approved diary entries are not subsequently changed (GoBD Rz. 146). Corrections are made as new commits with an obsolescence marker.
  2. Traceability - every commit carries author, timestamp and cryptographic integrity. The entire history is reproducible.
  3. Decentralization - Git bundles and GCEP (advisory locks) allow distributed storage (multi-site, off-site backup) without a central single point of failure.

Compliance by Design - the GitCover techniques

The series shows how the following techniques mitigate the "unclear picture" of future risks from the outset:

%%{init: {'theme':'base','themeVariables':{'primaryColor':'#FBFAF7','primaryTextColor':'#0F1B33','primaryBorderColor':'#6B7280','lineColor':'#6B7280'}}}%% flowchart TD CBD["Compliance by Design"] CBD --> OSCAL["OSCAL
maschinenlesbare
Compliance-Statements"] CBD --> OPA["OPA/Rego
Policy as Code
automatisierte Prüfung"] CBD --> V7["V7GUID Uniqueness
zeitstabile
eindeutige IDs"] CBD --> HOOKS["Git-Hooks
funktional dediziert
Pre/Post-Commit"] CBD --> ART["Code-Artefact-Typen
JSON-Schema-First
Sidecar-Pflicht"] OSCAL --> ZERT["Zertifizierungsreife
ISO 27001, AI Act, BSI GS++"] OPA --> POLICY["Sphären, Fristen,
Beitragsgruppen-Plausibilität"] V7 --> UNIQ["Kollisionsfrei,
sortierbar, dateiname-unabhängig"] HOOKS --> CHECK["Schema, Sphären,
Obsoleszenz geprüft"] ART --> SIG["Temporale Signatur
SHA-256-Belegreferenzen"] style CBD fill:#10A987,stroke:#0A7F5C,color:#FBFAF7 style OSCAL fill:#D1FAE5,stroke:#0A7F5C,color:#0F1B33 style OPA fill:#D1FAE5,stroke:#0A7F5C,color:#0F1B33 style V7 fill:#D1FAE5,stroke:#0A7F5C,color:#0F1B33 style HOOKS fill:#D1FAE5,stroke:#0A7F5C,color:#0F1B33 style ART fill:#D1FAE5,stroke:#0A7F5C,color:#0F1B33 style ZERT fill:#DBEAFE,stroke:#1D4ED8,color:#0F1B33 style POLICY fill:#DBEAFE,stroke:#1D4ED8,color:#0F1B33 style UNIQ fill:#DBEAFE,stroke:#1D4ED8,color:#0F1B33 style CHECK fill:#DBEAFE,stroke:#1D4ED8,color:#0F1B33 style SIG fill:#DBEAFE,stroke:#1D4ED8,color:#0F1B33

Core principle of temporal traceability: The capture time is not a separate field, but anchored in the uuidV7 itself, as a 48-bit timestamp according to RFC 9562 §5.7. The uuidV7 is generated from a specified time mark (not now()) via the GitCover helper (gc-v7guid), with the rest filled with randomness. This cryptographically links the capture time to the identity of the artifact and makes it unchangeable afterward. A separate datetime/date string representation is redundant and is not kept in the facts - string representation for DTO/HTMX is the harness's responsibility.

RFC reference: The 48-bit timestamp component of uuidV7 corresponds to RFC 9562 §5.7 (UUIDv7) - Unix milliseconds since epoch (1970-01-01T00:00:00Z), 48 bits, value range 0 … 2⁴⁸−1 (range up to approximately year 10889). The V7GUID specification is normatively stored in work/OSS/TOP/.gitcover/specs/v7guid/; the associated patent application is DPMA Az. 10 2025 003 091.6.

Helper routines (GitCover OSS Tools): In work/OSS/gc-v7guid there is an OSS helper that provides two central operations:

  • gen - generates a uuidV7 via Guid.CreateVersion7() (.NET) (with a specified time mark when needed, not only now()) and returns label, UUID and decoded ISO timestamp.
  • decode - extracts the 48-bit timestamp component from a given uuidV7 and returns it as an ISO 8601 timestamp.

These helpers are crucial for creating a valid uuidV7 key from foreign keys (e.g., a time mark in the data or in the file name) - and at the same time documenting the temporal requirements of the GoBD (prompt capture, traceability). The 48-bit value is the only factor in the TenantId derivation and can be an explicitly specified point in time instead of the system time (e.g., from a time mark of an ELSTER certificate, date of a receipt with TSE, etc.) - the interpretation follows the procedural documentation.

Sidecar principle (.gc.md): Every sidecar carries a composite key V7GUID:uuidV7:

  • V7GUID (class identifier) - classifies the sidecar based on the .gitcover registry (what/which type)
  • uuidV7 (object ID) - identity of the sidecar itself, generated with a specified time mark/48-bit timestamp anchored in the GUID
  • v7g_taxonomy[].v7guid - object ID of the classified document
  • sha256 - identity of the classified original document — the proof of originality, always and everywhere (even if the document moves: independent of path/name, calculated from the content)

Thus not only is the document uniquely identified (via its SHA-256), but also the classification act itself - including the point in time (in uuidV7), who classified it and in what role. No separate datetime field.

Risk leverage - what is inexpensive (cheap) today and becomes audit-proof tomorrow

Risk leverage: Facts captured today at minimal cost (minutes, by 'agents' only moments) become future audit-proof evidence (hours of audit). The entrepreneur "raises" an evidentiary burden position - compliance as leverage.

Today (cheap, ~minutes/seconds) Tomorrow (audit-proof, ~hours of audit) Risk reduced
JSON diary entry with V7GUID + SHA-256 GoBD-compliant evidence (10 years) retention period violation
source field per fact burden of proof in tax/social insurance audits downgrading of evidentiary value
Deadline check file missed deadlines avoided late payment surcharges § 152 AO
Sphere tag per entry nonprofit status defended revocation § 51 AO
FZul hourly evidence diary BSFZ certificate obtainable loss of FZul (up to EUR 1 million)
Sidecar .gc.md per record authenticity of records provable contestation of evidentiary value
Working time JSON per day ArbZG conformity provable fine § 22 ArbZG
Git bundle instead of cloud account retention without service provider costs loss of GoBD access after account pause
git clone instead of reactivating software versions self-contained retention, no version dependency GoBD violation through non-reactivatable legacy systems

What this series shows

The series follows a fictional entrepreneur (E1) who runs an organization KMU (placeholder, legal form open) and keeps their diary in a Git repo. The structure is based on a real SSoT concept but is fully anonymized - all personal, company, HRB, IBAN, tax number data are replaced by placeholders.

DSGVO note: All personal/company references in this series are fictitious or anonymized. Similarities to real organizations are accidental and not intended.

Preview of the series

%%{init: {'theme':'base','themeVariables':{'primaryColor':'#FBFAF7','primaryTextColor':'#0F1B33','primaryBorderColor':'#6B7280','lineColor':'#6B7280'}}}%% flowchart LR I["Teil I
Grundlagen
ED01–ED04"] II["Teil II
GoBD, AO, Finanzamt
+ Pflichten ab Gewerbeanmeldung
ED05–ED12"] III["Teil III
Behörden & Verbände
ED14–ED20"] IV["Teil IV
Mitarbeiter & Lohn
+ Pflichten ab 1. Mitarbeiter
ED21–ED28"] I --> II --> III --> IV style I fill:#E5E7EB,stroke:#6B7280,color:#0F1B33 style II fill:#D1FAE5,stroke:#0A7F5C,color:#0F1B33 style III fill:#DBEAFE,stroke:#1D4ED8,color:#0F1B33 style IV fill:#DBEAFE,stroke:#1D4ED8,color:#0F1B33
%%{init: {'theme':'base','themeVariables':{'primaryColor':'#FBFAF7','primaryTextColor':'#0F1B33','primaryBorderColor':'#6B7280','lineColor':'#6B7280'}}}%% flowchart LR V["Teil V
Besondere Herausforderungen
FZul/BSFZ, Gemeinnützigkeit
ED29–ED32"] VI["Teil VI
Harness-Anforderungen
ED33–ED36"] VII["Teil VII
Anhang
ED37–ED38"] V --> VI --> VII style V fill:#D1FAE5,stroke:#0A7F5C,color:#0F1B33 style VI fill:#FDBA74,stroke:#C2410C,color:#0F1B33 style VII fill:#E5E7EB,stroke:#6B7280,color:#0F1B33
Part Topic Articles
I Foundations (this article) ED01–ED03
II Corporate management: GoBD, AO, tax office + obligations from business registration (spheres, VBG, flat rates) ED05–ED11
III Authorities & associations ED14–ED20
IV Employees & payroll + obligations from the 1st employee (working time, MiLoG, vacation/sickness/BEM) ED21–ED28
V Special challenges (FZul/BSFZ, nonprofit status) ED29–ED32
VI Harness requirements ED33–ED36
VII Appendix (glossary, sources) ED37–ED38

Harness requirement (preview)

Derivable from ED01:

ID Requirement Priority
FA-1.1 Diary entries as JSON artifacts (schema-first) MUST
FA-1.2 Composite key V7GUID (class) : uuidV7 (object) - no separate datetime/date field; time in uuidV7 (RFC 9562 §5.7) MUST
FA-1.3 uuidV7 generated from specified time mark (not now()) via helper MUST
FA-2.1 SHA-256 as record ID MUST
FA-2.2 .gc.md sidecar obligation MUST
FA-4.1 Deadline check file MUST
TA-2.1 Pre-commit: JSON schema validation MUST

The complete requirements list is in Harness-Anforderungen.md.

Sources

Role Location Purpose
Primary / SSoT git.gitcover.org/GCC Canonical storage (GPG-signed, versioned)
Public OSS Mirror / CDN codeberg.org/gitcover-commons Read-only mirror; FLOSS discovery
Community Hub github.com/gitcover-commons Issues & Discussions; source code reference on Codeberg

Note: This mapping of sources, mirror and community hub reflects the current state and may change. Please check the respective canonical source under git.gitcover.org/GCC for the current state. canonical source on gitcover.org for the current state.