ED19 - Authority Interface Practice: ELSTER, DE-Mail, eXTra - Mediation by GitCover

Problem

Many authority interfaces are regulated by law, but in practice barely usable for laypersons:

Core message

The GitCover harness mediates between external systems and risk-affine regulations:

  1. ELSTER mediation - LStA, UStA, LSt-Bescheinigung via the ELSTER interface; receipt as voucher with sidecar
  2. DE-Mail: discontinued - migration required - historical DE-Mails must be migrated into the repo as EML + SHA-256 + sidecar before the shutdown; archived emails in discontinued systems are no longer accessible - GoBD retention problem
  3. eXTra/euBP export - SV data exportable in eXTra format for DRV audits
  4. Z3 data carrier export - GoBD-compliant Z3 export for FA external audits (git bundle as self-contained archive)
  5. Interface error logging - errors/aborts of external systems are logged as a repo event
  6. Regulation binding - every interface transaction is mapped to the risk-affine regulation

Compliance by Design: The harness does not hide the complexity of the authority interfaces - it documents it. Every submission, every receipt, every error is traceably recorded in the repo.

The authority interface landscape

%%{init: {'theme':'base','themeVariables':{'primaryColor':'#FBFAF7','primaryTextColor':'#0F1B33','primaryBorderColor':'#6B7280','lineColor':'#6B7280'}}}%% flowchart TD U["Entrepreneur E1"] U --> H["GitCover harness"] H --> EL["ELSTER"] H --> DM["DE-Mail (discontinued)"] H --> EX["eXTra/euBP"] H --> Z3["Z3 data carrier"] EL --> FA["Tax office"] DM --> BH["Authorities (various)"] EX --> DRV["DRV (SV audit)"] Z3 --> AP["Tax office (external audit)"] style U fill:#0F1B33,stroke:#0F1B33,color:#FBFAF7 style H fill:#10A987,stroke:#0A7F5C,color:#FBFAF7 style EL fill:#DBEAFE,stroke:#1D4ED8,color:#0F1B33 style DM fill:#FDBA74,stroke:#C2410C,color:#0F1B33 style EX fill:#DBEAFE,stroke:#1D4ED8,color:#0F1B33 style Z3 fill:#DBEAFE,stroke:#1D4ED8,color:#0F1B33 style FA fill:#D1FAE5,stroke:#0A7F5C,color:#0F1B33 style BH fill:#D1FAE5,stroke:#0A7F5C,color:#0F1B33 style DRV fill:#D1FAE5,stroke:#0A7F5C,color:#0F1B33 style AP fill:#D1FAE5,stroke:#0A7F5C,color:#0F1B33
Interface Purpose Complexity GitCover mediation
ELSTER LStA, UStA, LSt-Bescheinigung, e-invoice viewer high (certificate, XML, client) Receipt as voucher with sidecar
DE-Mail Secure communication with authorities discontinued (last provider 31.12.2026) Migration: EML + sidecar into the repo; warning
eXTra/euBP SV data for DRV audits high (specialist format) Export from repo data
Z3 data carrier GoBD-compliant export for FA external audit high (specialist software) git bundle as self-contained archive

ELSTER mediation

%%{init: {'theme':'base','themeVariables':{'primaryColor':'#FBFAF7','primaryTextColor':'#0F1B33','primaryBorderColor':'#6B7280','lineColor':'#6B7280'}}}%% flowchart TD L["LStA/UStA calculated"] L --> E["ELSTER submission"] E --> Q["ELSTER receipt"] Q --> S["Receipt as voucher with sidecar"] S --> R["Repo: LStA entry with source_sha256"] R --> V["Regulation binding: § 41a EStG"] E -->|Error| F["Error logging in the repo"] F --> FR["Repo event: ELSTER error"] style L fill:#0F1B33,stroke:#0F1B33,color:#FBFAF7 style E fill:#DBEAFE,stroke:#1D4ED8,color:#0F1B33 style Q fill:#D1FAE5,stroke:#0A7F5C,color:#0F1B33 style S fill:#D1FAE5,stroke:#0A7F5C,color:#0F1B33 style R fill:#D1FAE5,stroke:#0A7F5C,color:#0F1B33 style V fill:#D1FAE5,stroke:#0A7F5C,color:#0F1B33 style F fill:#FDBA74,stroke:#C2410C,color:#0F1B33 style FR fill:#FDBA74,stroke:#C2410C,color:#0F1B33
Step Action GitCover implementation
LStA calculated Wage tax return from payroll JSON artifact in the repo (see ED13)
ELSTER submission Electronically via ELSTER (certificate required) Harness calls ELSTER
Receipt ELSTER confirms the submission Receipt as voucher with sidecar
Repo entry LStA with source_sha256 referencing the receipt tags: ["lsta", "§41a-estg"]
Regulation binding LStA → § 41a EStG vorschrift: "§41a-estg" in the artifact
Error logging ELSTER error is logged Repo event with error description

Regulation binding: Every interface transaction is mapped to the risk-affine regulation - e.g. LStA → § 41a EStG, UStA → § 18 UStG, LSt-Bescheinigung → § 41b EStG. This makes it traceable which regulation was fulfilled by which submission.

DE-Mail - Discontinued: Migration and Archiving Consequences

DE-Mail is officially discontinued. The project is considered a failure. The last provider (FP Digital Business Solutions GmbH) is discontinuing the service as of 31.12.2026 - after that, DE-Mail is no longer usable and archived emails in these systems are no longer accessible.

Event Date Source
Telekom discontinues De-Mail 31.08.2022 "due to lack of economic viability"
1&1 De-Mail GmbH discontinues 07.02.2025 Service no longer reachable
§ 130a ZPO repealed 22.12.2025 De-Mail abolished as a secure transmission channel (BGBl. 2025 I Nr. 349)
Federal administration discontinues July 2024 mandatory use discontinued
Last provider (FP Digital) discontinues 31.12.2026 "With this, De-Mail is history"
Federal Court of Audit 2021 2021 2011-2020: ~6,000 De-Mails from authorities, savings ~EUR 3,500, costs >= EUR 6.5 million
CCC criticism 2013 Linus Neumann (30C3): "Bullshit made in Germany - deliberately built insecure"

DE-Mail is history: The last provider (FP Digital Business Solutions GmbH) is discontinuing the service as of 31.12.2026. The legal recognition as a secure transmission channel (§ 130a Abs. 4 Nr. 1 ZPO) was repealed on 22.12.2025. The federal administration discontinued mandatory use in July 2024. The Federal Court of Audit's 2021 balance: EUR 6.5 million in costs for ~EUR 3,500 in savings. A "European Business Wallet (EBW)" is planned as the successor.

Consequences for archived emails in discontinued systems

When a DE-Mail provider discontinues its service, immediate GoBD-relevant retention problems arise:

Problem Consequence GoBD reference
Mailbox no longer accessible Emails can no longer be retrieved § 146 Abs. 5 AO ("available at any time")
Provider-side deletion Data is deleted after the shutdown § 147 Abs. 1 AO (retention obligation 6 years)
No export possible If the provider does not offer an export function, the data is irretrievably lost GoBD Rz. 146 (traceability)
Evidential value lost DE-Mail-specific confirmations (dispatch/access confirmation) can no longer be verified Loss of evidence in disputes with authorities
No forensic evidence preservation A layperson can hardly retroactively verify the authenticity of old emails forensically - without the provider infrastructure, the verification data is missing (signature verification, timestamp server, provider logs) Downgrading of evidential value to "mere PDF copy"
Retention period still running Emails from 2024 must be retained until 31.12.2030 - but the system will be gone in 2026 GoBD violation due to unavailable retention

Forensic evidence preservation - hardly recoverable later: DE-Mail-specific evidentiary features (qualified electronic signature of the dispatch and access confirmation, provider timestamp, integrity hash value) can be verified only within the running provider infrastructure. After the shutdown, this verification data is no longer available. A layperson cannot subsequently verify an exported EML file for its DE-Mail-specific authenticity - the signature verification fails due to the missing provider certificate, the timestamp server is offline, the provider logs are deleted. The email loses its status as "legally binding DE-Mail communication" and degenerates into a mere PDF copy with greatly reduced evidential value. Subsequent forensic evidence preservation by an expert would be theoretically possible, but practically hardly feasible - the required provider infrastructure data no longer exists.

Critical warning - migration before shutdown: Entrepreneurs who still have a DE-Mail mailbox must export all relevant emails as EML files before the shutdown and migrate them into the Git repo (EML + SHA-256 + sidecar). After the shutdown, an export is no longer possible - the data is irretrievably lost. This is a GoBD violation if the retention period is still running (6 years from the end of the year, § 147 Abs. 1 Nr. 2/3 AO).

GitCover migration: DE-Mail -> Repo

%%{init: {'theme':'base','themeVariables':{'primaryColor':'#FBFAF7','primaryTextColor':'#0F1B33','primaryBorderColor':'#6B7280','lineColor':'#6B7280'}}}%% flowchart LR D["DE-Mail mailbox (discontinued)"] D --> EX["Export before shutdown"] EX --> EML["EML files"] EML --> SH["SHA-256 per EML"] SH --> SC["Sidecar .v7g.md per EML"] SC --> R["Repo: sources/korrespondenz/"] R --> OK["Archived in a GoBD-compliant manner"] D -->|after shutdown| LOST["Data irretrievably lost"] LOST --> V["GoBD violation"] style D fill:#FDBA74,stroke:#C2410C,color:#0F1B33 style EX fill:#DBEAFE,stroke:#1D4ED8,color:#0F1B33 style EML fill:#DBEAFE,stroke:#1D4ED8,color:#0F1B33 style SH fill:#DBEAFE,stroke:#1D4ED8,color:#0F1B33 style SC fill:#D1FAE5,stroke:#0A7F5C,color:#0F1B33 style R fill:#D1FAE5,stroke:#0A7F5C,color:#0F1B33 style OK fill:#D1FAE5,stroke:#0A7F5C,color:#0F1B33 style LOST fill:#FDBA74,stroke:#C2410C,color:#0F1B33 style V fill:#FDBA74,stroke:#C2410C,color:#0F1B33
Step Action Deadline
Export Export all relevant emails as EML before shutdown (at the latest 31.12.2026)
SHA-256 Calculate hash per EML file during migration
Sidecar .v7g.md per EML with classification during migration
Filing EML + sidecar in sources/korrespondenz/ during migration
Verification Check completeness (number of emails) after migration

Practical tip: The migration should be carried out immediately, not just shortly before the shutdown. Providers may restrict the service early (e.g. no new registrations, restricted export). Those who wait risk data loss.

%%{init: {'theme':'base','themeVariables':{'primaryColor':'#FBFAF7','primaryTextColor':'#0F1B33','primaryBorderColor':'#6B7280','lineColor':'#6B7280'}}}%% flowchart LR D["DE-Mail (discontinued)"] D --> P["Failed: 6.5 million EUR costs, ~3500 EUR benefit"] P --> W["Warning: do not use DE-Mail"] W --> A["Alternative: ELSTER mailbox"] D --> E["Incoming authority email (historical)"] E --> AR["EML archived + sidecar"] AR --> V["Sender verification (DKIM/SPF)"] style D fill:#FDBA74,stroke:#C2410C,color:#0F1B33 style P fill:#FDBA74,stroke:#C2410C,color:#0F1B33 style W fill:#FDBA74,stroke:#C2410C,color:#0F1B33 style A fill:#D1FAE5,stroke:#0A7F5C,color:#0F1B33 style E fill:#DBEAFE,stroke:#1D4ED8,color:#0F1B33 style AR fill:#D1FAE5,stroke:#0A7F5C,color:#0F1B33 style V fill:#D1FAE5,stroke:#0A7F5C,color:#0F1B33
Aspect Problem GitCover solution
Status DE-Mail officially discontinued (last provider 31.12.2026) Warning: do not use; migration required
Cost/benefit EUR 6.5 million in costs, ~EUR 3,500 in savings (Federal Court of Audit) git bundle and ELSTER mailbox are free of charge
Security "deliberately built insecure" (CCC, Linus Neumann 2013) Git + GPG + SHA-256
Legal recognition § 130a ZPO repealed as of 22.12.2025 no longer relevant
Archiving archived emails in discontinued systems no longer accessible Migration: EML + SHA-256 + sidecar into the repo
Retention period emails from 2024 must be retained until 2030 - system gone in 2026 GoBD violation for non-migrated data
Successor European Business Wallet (EBW) planned open; GitCover independent

DE-Mail disaster mitigation: The harness warns when DE-Mail is used (if historical mailboxes still exist) and recommends immediate migration of all relevant emails as EML + sidecar into the repo. After the shutdown (at the latest 31.12.2026), the data is irretrievably lost - a GoBD violation if the retention period is still running. As an alternative for future communication: ELSTER mailbox for tax matters, regular email + sidecar archiving for correspondence.

eXTra/euBP export and Z3 data carrier

%%{init: {'theme':'base','themeVariables':{'primaryColor':'#FBFAF7','primaryTextColor':'#0F1B33','primaryBorderColor':'#6B7280','lineColor':'#6B7280'}}}%% flowchart TD R["Repo data (JSON, sidecars)"] R --> EX["eXTra export"] R --> Z3["Z3 export (git bundle)"] EX --> DRV["DRV audit: SV data"] Z3 --> FA["FA external audit: GoBD data"] EX --> F1["Format: eXTra V3.4.0"] Z3 --> F2["Format: git bundle + Manifest"] style R fill:#0F1B33,stroke:#0F1B33,color:#FBFAF7 style EX fill:#DBEAFE,stroke:#1D4ED8,color:#0F1B33 style Z3 fill:#DBEAFE,stroke:#1D4ED8,color:#0F1B33 style DRV fill:#D1FAE5,stroke:#0A7F5C,color:#0F1B33 style FA fill:#D1FAE5,stroke:#0A7F5C,color:#0F1B33 style F1 fill:#D1FAE5,stroke:#0A7F5C,color:#0F1B33 style F2 fill:#D1FAE5,stroke:#0A7F5C,color:#0F1B33
Export Purpose Format Recipient
eXTra/euBP SV data for DRV audit eXTra V3.4.0 (XML) DRV
Z3 (git bundle) GoBD data for FA external audit git bundle + Manifest + Static-Web (Z3+) FA

Practical example: The DRV requests SV data in eXTra format during an operational audit. The harness exports the relevant payroll and SV data from the repo as eXTra XML. The FA requests GoBD-compliant data (Z3) during an external audit - the harness generates a git bundle + Static-Web (Z3+, see ED05). Both exports are generatable from the structured repo data (JSON, sidecars) - no manual preparation needed.

Interface error logging

%%{init: {'theme':'base','themeVariables':{'primaryColor':'#FBFAF7','primaryTextColor':'#0F1B33','primaryBorderColor':'#6B7280','lineColor':'#6B7280'}}}%% flowchart TD S["Interface call (ELSTER, DE-Mail)"] S --> OK["Success: receipt + sidecar"] S --> ERR["Error: abort, timeout, format error"] ERR --> L["Error logging in the repo"] L --> E["Repo event: interface error"] E --> N["Evidence: error not attributable to the entrepreneur"] style S fill:#0F1B33,stroke:#0F1B33,color:#FBFAF7 style OK fill:#D1FAE5,stroke:#0A7F5C,color:#0F1B33 style ERR fill:#FDBA74,stroke:#C2410C,color:#0F1B33 style L fill:#FDBA74,stroke:#C2410C,color:#0F1B33 style E fill:#FDBA74,stroke:#C2410C,color:#0F1B33 style N fill:#D1FAE5,stroke:#0A7F5C,color:#0F1B33
Event Action GitCover implementation
Success Receipt archived Voucher with sidecar, source_sha256 in the artifact
Error Error logged Repo event with error description, timestamp, regulation
Evidence "error not attributable to the entrepreneur" Repo event as evidence during audit

Important - liability shift: When an interface fails (e.g. ELSTER timeout on the 10th of the month), the error logging in the repo documents that the entrepreneur tried to submit in time. This is evidence for § 152 AO (late filing surcharge) - the entrepreneur can argue that the error was not within their sphere.

Risk leverage

Today (cheap) Tomorrow (audit-proof) Risk mitigated
ELSTER receipt as voucher with sidecar Submission demonstrable Late filing surcharge § 152 AO
DE-Mail warning + alternative Suitable channel chosen Loss of communication
eXTra export from repo data SV data available for DRV audit GoBD violation during DRV audit
Z3 export as git bundle GoBD data available for FA audit GoBD violation during FA audit
Interface error logging Evidence of "attempted" Liability shift in case of interface failure
Regulation binding Regulation documented per submission Denial of regulation fulfilment

Harness requirement (preview)

Derivable from ED19:

ID Requirement Priority
FA-12.1 ELSTER mediation: LStA, UStA, LSt-Bescheinigung; receipt as voucher with sidecar MUST
FA-12.2 DE-Mail/De-Mail bridge: EML + SHA-256 + sidecar; sender verification SHOULD
FA-12.3 eXTra/euBP export: SV data in eXTra format for DRV audits SHOULD
FA-12.4 Z3 data carrier export: GoBD-compliant Z3 export (git bundle) SHOULD
FA-12.5 Interface error logging: errors as repo event MUST
FA-12.6 Regulation binding: every transaction mapped to the risk-affine regulation SHOULD
FA-12.7 DE-Mail disaster mitigation: warning for unsuitable channels NICE
FA-12.8 Authority identifier registry MUST

The complete requirements list 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 to Codeberg

Note: This assignment 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.