ED09 - AO Basics: Taxation Procedure, Deadlines, Voluntary Disclosure
Problem
The Fiscal Code (AO) is the cornerstone of German tax law - but it is largely unknown in the SME sector:
- "AO? Never heard of it." - many entrepreneurs do not know the AO, even though they work with it every day (accounting, deadlines, audits)
- Missed deadlines - assessment periods, filing deadlines, limitation periods are missed because nobody monitors them
- Estimation as a threat - § 162 AO (estimation) is perceived as an abstract threat, without it being clear when it applies
- Voluntary disclosure as a last resort - § 371 AO (voluntary disclosure) is known as an "emergency brake", but the requirements are complex
- External audit as a bogeyman - § 193 AO (external audit) is feared, without it being clear what it means in practice
- No deadline monitoring - deadlines are in the calendar, but nobody automatically warns before they expire
Core Message
The AO governs the taxation procedure - and GitCover makes the obligations arising from it machine-readable and automatically monitorable:
- Deadlines as a Git artifact -
checks/FRISTEN_CHECK.mdwith auto-warning (see ED08) - External audit as an Evidence-Package - Z3/Z3+ export (see ED05)
- Avoiding estimation through GoBD compliance - complete, traceable, immutable accounting (see ED05–ED08)
- Voluntary disclosure as a last resort - documented in the diary if GoBD compliance cannot be achieved
Compliance by Design: The AO obligations are not fulfilled through subsequent review, but through **structural ** Git-native compliance - deadline check, Evidence-Packages, GoBD-compliant accounting.
The Fiscal Code (AO) - Overview
§§ 78–133"] AO --> FB["Assessment and
determination procedure
§§ 155–217"] AO --> AP["External audit
§§ 193–203"] AO --> SZ["Sanctions
§§ 152, 162, 370, 379"] BV --> AN["Filings
(LStA, UStA, SV)"] FB --> FF["Assessment periods
§ 169 AO"] AP --> Z["Data access
Z1/Z2/Z3 (§ 147 Abs. 6)"] SZ --> VS["Late-filing surcharge
§ 152 AO"] SZ --> SC["Estimation
§ 162 AO"] SZ --> ST["Criminal tax proceedings
§ 370 AO"] style AO fill:#0F1B33,stroke:#0F1B33,color:#FBFAF7 style BV fill:#DBEAFE,stroke:#1D4ED8,color:#0F1B33 style FB fill:#DBEAFE,stroke:#1D4ED8,color:#0F1B33 style AP fill:#DBEAFE,stroke:#1D4ED8,color:#0F1B33 style SZ fill:#FDBA74,stroke:#C2410C,color:#0F1B33 style AN fill:#D1FAE5,stroke:#0A7F5C,color:#0F1B33 style FF fill:#D1FAE5,stroke:#0A7F5C,color:#0F1B33 style Z fill:#D1FAE5,stroke:#0A7F5C,color:#0F1B33 style VS fill:#FDBA74,stroke:#C2410C,color:#0F1B33 style SC fill:#FDBA74,stroke:#C2410C,color:#0F1B33 style ST fill:#FDBA74,stroke:#C2410C,color:#0F1B33
| AO area | Provisions | SME relevance |
|---|---|---|
| Taxation procedure | §§ 78–133 | Filings (LStA, UStA), cooperation obligations |
| Assessment procedure | §§ 155–217 | Assessment periods (§ 169), estimation (§ 162) |
| External audit | §§ 193–203 | Business audit, data access Z1/Z2/Z3 |
| Sanctions | §§ 152, 162, 370, 379 | Late-filing surcharge, estimation, criminal tax proceedings |
| Accounting | §§ 140–147 | GoBD basis (see ED05–ED08) |
| Voluntary disclosure | § 371 | Emergency brake in the event of tax evasion |
Deadlines in the Taxation Procedure
Monthly Deadlines
Annual Deadlines
Assessment Periods (§ 169 AO)
| Deadline type | Deadline | Legal basis | GitCover monitoring |
|---|---|---|---|
| Payroll tax filing | 10th of the following month (+5 days if electronic) | § 41a EStG | FRISTEN_CHECK.md + auto-warning |
| VAT advance return | 10th of the following month | § 18 UStG | FRISTEN_CHECK.md + auto-warning |
| Social security contribution statement | Third-last banking day | § 23 SGB IV | FRISTEN_CHECK.md + auto-warning |
| ESt/KSt/USt return | 31.07. (extended by tax advisor) | § 149 AO | FRISTEN_CHECK.md |
| Payroll tax certificate | 28.02. of the following year | § 41b EStG | FRISTEN_CHECK.md |
| Assessment period (regular) | 4 years | § 169 Abs. 2 Nr. 2 AO | Retention-period tracking |
| Assessment period (shortened) | 5 years (negligent) / 10 years (intentional) | § 169 Abs. 2 Nr. 1/2 AO | Retention-period tracking |
Practical tip: The deadline check (
checks/FRISTEN_CHECK.md) is maintained as a Git artifact and updated on every commit. The auto-warning (see ED08) warns 14 days before a government deadline expires. This way, no missed deadline goes unnoticed - and § 152 AO (late-filing surcharge of up to 25,000 EUR) is avoided.
Estimation (§ 162 AO) - and How Git Avoids It
Data not usable
(incomplete, altered)"] S --> G2["Reason 2:
Accounting not GoBD-compliant"] S --> G3["Reason 3:
Entrepreneur provides no information"] G1 --> R["FA estimates the tax bases
often to the entrepreneur's disadvantage"] G2 --> R G3 --> R R --> B["Reversal of the burden of proof:
Entrepreneur must rebut the estimate
almost impossible if data are missing"] G["GitCover solution"] G --> V["Complete GoBD-compliant accounting"] G --> N["Traceability (Rz. 146)"] G --> P["Verifiability (Rz. 147)"] G --> E["Evidence-Package (Z3+)"] V --> AV["Estimation avoided"] N --> AV P --> AV E --> AV style S fill:#0F1B33,stroke:#0F1B33,color:#FBFAF7 style G1 fill:#FDBA74,stroke:#C2410C,color:#0F1B33 style G2 fill:#FDBA74,stroke:#C2410C,color:#0F1B33 style G3 fill:#FDBA74,stroke:#C2410C,color:#0F1B33 style R fill:#FDBA74,stroke:#C2410C,color:#0F1B33 style B fill:#FDBA74,stroke:#C2410C,color:#0F1B33 style G fill:#10A987,stroke:#0A7F5C,color:#FBFAF7 style V fill:#D1FAE5,stroke:#0A7F5C,color:#0F1B33 style N fill:#D1FAE5,stroke:#0A7F5C,color:#0F1B33 style P fill:#D1FAE5,stroke:#0A7F5C,color:#0F1B33 style E fill:#D1FAE5,stroke:#0A7F5C,color:#0F1B33 style AV fill:#D1FAE5,stroke:#0A7F5C,color:#0F1B33
Estimation is the consequence - not the penalty: § 162 AO is not a penalty, but a consequence of unusable accounting. Anyone who keeps records in a GoBD-compliant manner (ED05–ED08) makes estimation unnecessary - the auditor can read the tax bases from the repo.
External Audit (§ 193 AO) - and How Git Facilitates It
| Audit type | Trigger | Frequency | GitCover support |
|---|---|---|---|
| Regular audit | Company size/revenue | Every 3–5 years | Evidence-Package (Z3+), Static-Web |
| Special audit | Suspicion, indications, sample | When triggered | git bundle, git log, git grep |
| Follow-up audit | Irregularities in preliminary review | After a regular audit | Complete history is traceable |
Practical example: The auditor announces an external audit. The entrepreneur (
E1) generates a Tenant Evidence Package (git bundle + Static-Web + Manifest) for the audit period. The auditor receives the USB drive, opensindex.html(Z3+) or runsgit clone(Z3), and can navigate all bookings, receipts, procedural documentation and sidecars - offline, without IAM, without a cloud account.
Voluntary Disclosure (§ 371 AO) - the Emergency Brake
discovered"] H --> SA["Voluntary disclosure § 371 AO
possible?"] SA -->|yes, if| V1["1. Complete
all evaded taxes"] SA -->|yes, if| V2["2. Without delay
after discovery"] SA -->|yes, if| V3["3. No start of audit
no audit announced yet"] SA -->|yes, if| V4["4. Repayment
within a reasonable period"] V1 --> W["Effect:
Immunity from prosecution (§ 371 Abs. 3)"] V2 --> W V3 --> W V4 --> W SA -->|no| ST["Criminal tax proceedings
§ 370 AO
Imprisonment of up to 5 years"] style H fill:#0F1B33,stroke:#0F1B33,color:#FBFAF7 style SA fill:#FDBA74,stroke:#C2410C,color:#0F1B33 style V1 fill:#DBEAFE,stroke:#1D4ED8,color:#0F1B33 style V2 fill:#DBEAFE,stroke:#1D4ED8,color:#0F1B33 style V3 fill:#DBEAFE,stroke:#1D4ED8,color:#0F1B33 style V4 fill:#DBEAFE,stroke:#1D4ED8,color:#0F1B33 style W fill:#D1FAE5,stroke:#0A7F5C,color:#0F1B33 style ST fill:#FDBA74,stroke:#C2410C,color:#0F1B33
GitCover and voluntary disclosure: If an entrepreneur determines that they have evaded taxes (e.g., a forgotten VAT return), they can document the voluntary disclosure in the diary - with
role: "GF",source: "E1", and a commit with a rationale. The completeness (§ 371 Abs. 1) is evidenced by the repo: all evaded taxes are traceable. The fact that it was made without delay is documented by theuuidV7timestamp in the diary entry.
Caution - voluntary disclosure is complex: The requirements for an effective voluntary disclosure are strict. If anything is unclear, always consult a tax advisor or a specialist tax lawyer. GitCover documents the voluntary disclosure - but it does not replace legal advice.
Sanctions for AO Violations
| Sanction | Legal basis | Condition | Amount |
|---|---|---|---|
| Late-filing surcharge | § 152 AO | Missed deadline for filings | up to 25,000 EUR |
| Estimation | § 162 AO | Unusable accounting | often to the entrepreneur's disadvantage |
| Late-payment surcharge | § 146 Abs. 2c AO | Deferral without authorization | 2,500–250,000 EUR |
| Administrative offence | § 379 AO | Violation of recordkeeping obligations | up to 50,000 EUR |
| Criminal tax proceedings | § 370 AO | Intentional tax evasion | Imprisonment of up to 5 years |
| Voluntary disclosure | § 371 AO | No criminal liability if complete | - (repayment + 6% surcharge) |
Risk leverage: Each of these sanctions is avoided or mitigated through GoBD-compliant use of Git - the deadline check prevents late-filing surcharges, GoBD-compliant accounting prevents estimation, Evidence-Packages facilitate external audits, and the repo itself is the best evidence of proper compliance.
Risk Leverage
| Today (cheap) | Tomorrow (tamper-resistant) | Risk reduced |
|---|---|---|
| Deadline check as a Git artifact | Missed deadline avoided | Late-filing surcharge § 152 AO |
| GoBD-compliant accounting | Estimation § 162 AO avoided | Estimation to the entrepreneur's disadvantage |
| Evidence-Package (Z3+) | External audit facilitated | Late-payment surcharge § 146 Abs. 2c |
git log as evidence |
Proper compliance evidenced | Administrative offence § 379 AO |
| Voluntary disclosure in the diary | Completeness + promptness documented | Criminal tax proceedings § 370 AO |
Harness Requirement (Preview)
Derivable from ED09:
| ID | Requirement | Priority |
|---|---|---|
| FA-4.1 | Deadline check file (checks/FRISTEN_CHECK.md) |
MUST |
| FA-4.2 | Deadline entries with date, type, Tenant, document reference | MUST |
| FA-4.3 | Auto-warning for deadlines under 14 days | SHOULD |
| FA-4.5 | Follow-up marker for notices/documents | MUST |
| FA-6.5 | 10-year retention via Evidence-Packages | MUST |
| FA-6.7 | Static-Web generator for period close (Z3+) | SHOULD |
| FA-12.5 | Interface error logging (error as a repo event) | MUST |
The complete requirements list is in Harness-Anforderungen.md.
Sources
- AO (§§ 78–133 - taxation procedure, § 146–147 - accounting/retention, § 152 - late-filing surcharge, § 162 - estimation, § 169 - assessment periods, § 193–203 - external audit, § 370 - tax evasion, § 371 - voluntary disclosure, § 379 - administrative offence)
- EStG (§ 41a - payroll tax filing, § 41b - payroll tax certificate)
- UStG (§ 18 - VAT advance return)
- SGB IV (§ 23 - social security contribution statement)
- GoBD (BMF circular, Rz. 146 - traceability, Rz. 147 - verifiability)
E1/agents/(anonymized) - SSoT concept with deadline check, external audit preparation
Source Topology and CDN Reference Links
| Role | Location | Purpose |
|---|---|---|
| Primary / SSoT | git.gitcover.org/GCC | Canonical repository (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 on gitcover.org for the current state.