ED14 - Centre des impôts : numéro fiscal, § 60a AO, déclaration de retenue à la source

Problème

Après la création et l’immatriculation de l’entreprise, le centre des impôts (FA) prend contact — mais, dans le secteur des PME, il n’est pas clair quelles obligations en découlent ni comment les prouver dans le dépôt :

Message clé

Les obligations liées au centre des impôts dans le dépôt Git se traduisent ainsi :

  1. Les numéros fiscaux comme entrées de registre - stockage centralisé dans registry/ avec sidecar, un numéro par type d’impôt
  2. La déclaration de retenue à la source comme artefact JSON - LStA avec source_sha256 pointant vers la quittance ELSTER
  3. Certificat ELSTER documenté - fichier .pfx avec sidecar (non pas le certificat lui-même dans le dépôt, mais sa preuve)
  4. Contrôle des délais pour toutes les déclarations auprès du FA - LStA, UStA, ESt/KSt avec avertissement automatique
  5. Décision § 60a AO comme justificatif avec sidecar - décision d’exonération avec suivi de validité

Compliance by Design : Les obligations liées au centre des impôts ne sont pas gérées après coup, mais sont consignées de manière structurelle au moyen de entrées de registre avec sidecars, d’un contrôle des délais et d’artefacts JSON.

Numéros fiscaux dans le répertoire du registre

%%{init: {'theme':'base','themeVariables':{'primaryColor':'#FBFAF7','primaryTextColor':'#0F1B33','primaryBorderColor':'#6B7280','lineColor':'#6B7280'}}}%% flowchart LR R["registry/"] R --> KST["KSt-Steuernummer"] R --> UST["USt-Steuernummer"] R --> LST["LSt-Steuernummer"] R --> WID["W-IdNr"] R --> UID["USt-IdNr"] R --> A60["§ 60a AO Bescheid"] R --> EL["ELSTER-Zertifikat"] style R fill:#0F1B33,stroke:#0F1B33,color:#FBFAF7 style KST fill:#DBEAFE,stroke:#1D4ED8,color:#0F1B33 style UST fill:#DBEAFE,stroke:#1D4ED8,color:#0F1B33 style LST fill:#DBEAFE,stroke:#1D4ED8,color:#0F1B33 style WID fill:#DBEAFE,stroke:#1D4ED8,color:#0F1B33 style UID fill:#DBEAFE,stroke:#1D4ED8,color:#0F1B33 style A60 fill:#D1FAE5,stroke:#0A7F5C,color:#0F1B33 style EL fill:#D1FAE5,stroke:#0A7F5C,color:#0F1B33
Identifiant Source Utilisation Stockage
Numéro fiscal KSt Notification du FA Déclaration d’impôt sur les sociétés registry/finanzamt/ + sidecar
Numéro fiscal USt Notification du FA Déclaration de TVA, déclaration annuelle registry/finanzamt/ + sidecar
Numéro fiscal LSt Notification du FA Déclaration de retenue à la source, attestation de retenue à la source registry/finanzamt/ + sidecar
W-IdNr Notification du BZSt Numéro d’identification économique registry/bzst/ + sidecar
USt-IdNr Notification du BZSt Numéro d’identification à la TVA (UE) registry/bzst/ + sidecar
Certificat ELSTER Enregistrement ELSTER Déclarations électroniques registry/elster/ + sidecar
Décision § 60a AO Décision du FA Reconnaissance d’utilité publique registry/finanzamt/ + sidecar

Exemple pratique : L’entreprise KMU dispose d’un numéro fiscal KSt <STNR>, d’un numéro fiscal USt <STNR>, d’un numéro fiscal LSt <STNR>, d’un W-IdNr <WID> et d’un USt-IdNr DE<UID>. Chaque numéro est stocké sous forme de justificatif avec sidecar dans registry/. La décision § 60a AO (reconnaissance d’utilité publique) s’y trouve également, avec suivi de validité.

Décision § 60a AO - Utilité publique

%%{init: {'theme':'base','themeVariables':{'primaryColor':'#FBFAF7','primaryTextColor':'#0F1B33','primaryBorderColor':'#6B7280','lineColor':'#6B7280'}}}%% flowchart TD A["Antrag auf Gemeinnützigkeit"] A --> F["FA prüft Satzung + Zweck"] F --> B["§ 60a AO Bescheid"] B --> G["Gemeinnützigkeit anerkannt"] G --> F1["KSt/PV befreit"] G --> F2["USt teilweise befreit"] G --> F3["VBG-Freistellung möglich"] style A fill:#FDBA74,stroke:#C2410C,color:#0F1B33 style F fill:#DBEAFE,stroke:#1D4ED8,color:#0F1B33 style B fill:#D1FAE5,stroke:#0A7F5C,color:#0F1B33 style G fill:#D1FAE5,stroke:#0A7F5C,color:#0F1B33 style F1 fill:#D1FAE5,stroke:#0A7F5C,color:#0F1B33 style F2 fill:#D1FAE5,stroke:#0A7F5C,color:#0F1B33 style F3 fill:#D1FAE5,stroke:#0A7F5C,color:#0F1B33
Propriété Valeur
Base juridique § 60a Abs. 1 AO
Contenu Reconnaissance d’utilité publique (§§ 51-68 AO)
Effet Exonération KSt, exonération PV, exonération partielle de la TVA, possibilité d’exonération VBG
Validité Jusqu’à la révocation ou au retrait de la reconnaissance
Stockage registry/finanzamt/ avec sidecar (SHA-256 + V7GUID:uuidV7)

Important : La décision § 60a AO constitue la base de tous les privilèges liés à l’utilité publique (KSt, USt, VBG, Pauschalen). Sans cette décision, les exonérations fiscales ne peuvent pas être justifiées. La décision doit être stockée dans le dépôt avec un sidecar, afin que la preuve puisse être apportée lors d’un contrôle.

Déclaration de retenue à la source (§ 41a EStG)

%%{init: {'theme':'base','themeVariables':{'primaryColor':'#FBFAF7','primaryTextColor':'#0F1B33','primaryBorderColor':'#6B7280','lineColor':'#6B7280'}}}%% flowchart TD L["Lohnabrechnung erstellt"] L --> LA["LStA berechnet"] LA --> EL["ELSTER-Übermittlung"] EL --> Q["ELSTER-Quittung"] Q --> R["Quittung als Beleg mit Sidecar"] R --> D["LStA als JSON-Artefakt im Repo"] D --> F["Fristen-Check: nächste LStA"] style L fill:#0F1B33,stroke:#0F1B33,color:#FBFAF7 style LA fill:#DBEAFE,stroke:#1D4ED8,color:#0F1B33 style EL fill:#DBEAFE,stroke:#1D4ED8,color:#0F1B33 style Q fill:#D1FAE5,stroke:#0A7F5C,color:#0F1B33 style R fill:#D1FAE5,stroke:#0A7F5C,color:#0F1B33 style D fill:#D1FAE5,stroke:#0A7F5C,color:#0F1B33 style F fill:#FDBA74,stroke:#C2410C,color:#0F1B33
Étape Action Échéance Mise en œuvre GitCover
Bulletin de paie Brut-net calculé (voir ED23) mensuel Artefact JSON dans le dépôt
LStA calculée LSt, Soli et KiSt calculés à partir du bulletin de paie - tags: ["lsta", "§41a-estg"]
Transmission ELSTER Par voie électronique via ELSTER 10 du mois suivant (+5 jours) Quittance ELSTER comme justificatif
Quittance archivée Quittance ELSTER avec sidecar - source_sha256 dans l’entrée LStA
Contrôle des délais Prochaine échéance LStA mensuel FRISTEN_CHECK.md + avertissement automatique

LStA comme artefact JSON

{
  "$schema": "https://gitcover.org/schemas/diary-entry-1.0.schema.json",
  "V7GUID": "<V7GUID-Class-aus-Registry>",
  "docUid": "<uuidV7-Object-mit-vorgegebener-Zeitmarke>",
  "author": "E1",
  "role": "Lohnverantwortlicher",
  "tenant": "ORG-1",
  "sphere": "ideell",
  "source": "FA",
  "source_sha256": "<SHA-256-der-ELSTER-Quittung>",
  "tags": ["lsta", "§41a-estg", "nullmeldung", "aktivrente"],
  "lsta": {
    "monat": "09/2026",
    "brutto": 2000.00,
    "lst": 0.00,
    "soli": 0.00,
    "kist": 0.00,
    "freibetrag_aktivrente": 2000.00,
    "art": "nullmeldung"
  }
}

Remarque : La uuidV7 est le DocID de l’entrée. La clé composite V7GUID:uuidV7 sert à organiser le stockage et les requêtes de la base de données. L’objet lsta documente la déclaration de retenue à la source avec toutes ses composantes. En cas de rente d’activité (§ 3 Nr. 21 EStG), la LSt = 0,00 — il s’agit d’une déclaration à zéro (voir ED23).

Documenter le certificat ELSTER

%%{init: {'theme':'base','themeVariables':{'primaryColor':'#FBFAF7','primaryTextColor':'#0F1B33','primaryBorderColor':'#6B7280','lineColor':'#6B7280'}}}%% flowchart TD E["ELSTER-Zertifikat"] E --> P["Persönliches Zertifikat (E1)"] E --> O["Organisations-Zertifikat (ORG-1)"] P --> PI[".pfx-Datei installiert"] O --> OI[".pfx-Datei installiert (geplant)"] PI --> D["Sidecar im Repo
(nicht die .pfx selbst)"] OI --> D D --> N["Nachweis: Zertifikat aktiv
+ ELSTER-Test-Übermittlung"] style E fill:#0F1B33,stroke:#0F1B33,color:#FBFAF7 style P fill:#DBEAFE,stroke:#1D4ED8,color:#0F1B33 style O fill:#DBEAFE,stroke:#1D4ED8,color:#0F1B33 style PI fill:#D1FAE5,stroke:#0A7F5C,color:#0F1B33 style OI fill:#FDBA74,stroke:#C2410C,color:#0F1B33 style D fill:#D1FAE5,stroke:#0A7F5C,color:#0F1B33 style N fill:#D1FAE5,stroke:#0A7F5C,color:#0F1B33
Type de certificat Statut Stockage dans le dépôt
Certificat personnel (E1) actif (depuis 260522) sidecar dans registry/elster/ (pas le .pfx lui-même)
Certificat d’organisation (ORG-1) en attente (échéance 200826) prévu : sidecar après activation

Important - .pfx ne doit pas être placé dans le dépôt : Le fichier .pfx (certificat + clé privée) n’est pas ajouté au dépôt Git — il contient des secrets cryptographiques. À la place, un sidecar est conservé, qui documente l’existence et l’activation du certificat (date, statut, quittance de test ELSTER). Le fichier .pfx est stocké en toute sécurité hors du dépôt (p. ex. sur un support chiffré).

Voir ED16 : L’utilisation pratique du certificat ELSTER (pratique des interfaces avec les autorités, DE-Mail, transmission par GitCover) est traitée dans ED16.

Surveillance des délais pour les déclarations auprès du FA

Déclaration Échéance Fréquence Surveillance GitCover
Déclaration de retenue à la source 10 du mois suivant (+5 jours par voie électronique) mensuelle FRISTEN_CHECK.md + avertissement automatique
Déclaration de TVA 10 du mois suivant mensuelle/trimestrielle FRISTEN_CHECK.md + avertissement automatique
Déclaration ESt/KSt 31.07. (prolongée par StB) annuelle FRISTEN_CHECK.md
Déclaration annuelle de TVA 31.07. (prolongée) annuelle FRISTEN_CHECK.md
Attestation de retenue à la source 28.02. de l’année suivante annuelle FRISTEN_CHECK.md

Conseil pratique : Le contrôle des délais est géré comme un artefact Git et actualisé à chaque commit. L’avertissement automatique (voir ED08) signale les échéances du FA 14 jours avant leur expiration. Aucun dépassement de délai n’est désormais plus négligé — et la pénalité de retard au titre de § 152 AO (jusqu’à 25.000 EUR) est évitée.

Risque réduit

Aujourd’hui (peu coûteux) Demain (robuste face aux révisions) Risque réduit
Numéros fiscaux dans registry/ avec sidecar Tous les identifiants peuvent être vérifiés de manière centralisée Contestation du numéro fiscal
Décision § 60a AO avec sidecar Utilité publique attestable Retrait de la reconnaissance en cas de preuve manquante
LStA comme artefact JSON + quittance ELSTER Déclaration de retenue à la source traçable Pénalité de retard § 152 AO
Certificat ELSTER avec sidecar Déclarations électroniques attestables Non-dépôt § 370 AO
Contrôle des délais pour toutes les déclarations auprès du FA Dépassement de délai évité Pénalités de retard § 152 AO

Exigence du harnais (aperçu)

Déductible d’ED14 :

ID Exigence Priorité
FA-12.1 Transmission via ELSTER : LStA, UStA, attestation de retenue à la source ; quittance comme justificatif avec sidecar MUST
FA-12.8 Registre des identifiants des autorités (StNr, W-IdNr, USt-IdNr, SV-BetrNr, VBG-Mitgliedsnr, IK) MUST
FA-8.1 Stockage de la décision § 60a AO et suivi de validité MUST (utilité publique)
FA-4.1 Fichier de contrôle des délais (checks/FRISTEN_CHECK.md) MUST
FA-4.2 Entrées relatives aux délais avec date, type, Tenant, référence du justificatif MUST
FA-4.3 Avertissement automatique lorsque les délais sont inférieurs à 14 jours SHOULD

La liste complète des exigences se trouve dans Harness-Anforderungen.md.

Sources

Topologie des sources et liens de référence CDN

Rôle Emplacement Finalité
Primaire / SSoT git.gitcover.org/GCC Dépôt canonique (signé GPG, versionné)
Miroir public OSS / CDN codeberg.org/gitcover-commons Miroir en lecture seule ; FLOSS-Discovery
Hub communautaire github.com/gitcover-commons Issues & Discussions ; référence au code source sur Codeberg

Remarque : Cette correspondance entre les sources, le miroir et le hub communautaire reflète l’état actuel et peut évoluer. Veuillez vérifier la source canonique correspondante sur gitcover.org pour connaître l’état actuel.