dolibarr.steuer/README.md

240 lines
6.8 KiB
Markdown
Executable file

# EÜR Deutschland - Dolibarr Modul
Einnahmen-Überschuss-Rechnung (EÜR) Modul für Dolibarr ERP & CRM.
## Funktionen
Dieses Modul bietet eine vollständige EÜR-Lösung für deutsche Kleinunternehmer, Freiberufler und Selbständige:
### EÜR Übersicht
- Automatische Berechnung von Einnahmen und Ausgaben aus Dolibarr-Rechnungen
- Zufluss-/Abflussprinzip (Ist-Versteuerung)
- Jahres- und Monatsübersicht
- Gewinn/Verlust-Anzeige
### USt-Voranmeldung (UStVA)
- Alle ELSTER-Kennzahlen (Kz 81, 86, 66, 83, etc.)
- WISO Steuer Zeilenzuordnung
- Monatliche und quartalsweise Ansicht
- Jahresübersicht mit allen Perioden
### Gewerbesteuer-Berechnung
- Automatische Berechnung aus EÜR-Gewinn
- Konfigurierbarer Hebesatz
- Hinzurechnungen und Kürzungen
- ESt-Anrechnung nach § 35 EStG
### Anlage EÜR
- Offizielles Format der Anlage EÜR
- Alle relevanten Zeilen (10-87)
- Export-Funktion
### WISO Export
- CSV-Export im WISO EÜR Format
- DATEV-Format für Steuerberater
- UStVA-Werte als CSV
### Kontenplan
- Vereinfachter SKR03-Kontenrahmen
- EÜR-Zeilen-Zuordnung
- USt-Kennzahlen-Mapping
### Manuelle Buchungen
- Zusätzliche Buchungen erfassen
- Für Belege außerhalb von Dolibarr
- Vollständige CRUD-Funktionalität
## Installation
### Voraussetzungen
- Dolibarr ERP & CRM >= 14.0
- PHP >= 7.4
- MySQL/MariaDB
### Installation
1. Modul in `/custom/steuer/` kopieren
2. In Dolibarr als Admin anmelden
3. Setup → Module → "EÜR Deutschland" aktivieren
4. Die Datenbanktabellen werden automatisch erstellt
### Nach der Installation
Das Modul erscheint im Hauptmenü unter "EÜR" mit folgenden Untermenüs:
- Übersicht
- Buchungen
- Anlage EÜR
- USt-Voranmeldung
- Gewerbesteuer
- WISO Export
- Kontenplan
## Verwendung
### Datenquellen
Das Modul liest automatisch aus:
- **Kundenrechnungen** (llx_facture) → Einnahmen
- **Lieferantenrechnungen** (llx_facture_fourn) → Ausgaben
- **Zahlungen** für Zufluss-/Abflussprinzip
### Zufluss-/Abflussprinzip
- Einnahmen werden zum Zahlungseingang erfasst
- Ausgaben werden zum Zahlungsausgang erfasst
- Entspricht der Ist-Versteuerung für EÜR
### WISO Steuer Integration
1. Gehe zu "WISO Export"
2. Wähle Jahr und Format
3. Exportiere CSV
4. Importiere in WISO Steuer
### UStVA übertragen
1. Gehe zu "USt-Voranmeldung"
2. Wähle Monat/Quartal
3. Übertrage die Kennzahlen in ELSTER oder WISO:
- Kz 81 → Umsätze 19%
- Kz 86 → Umsätze 7%
- Kz 66 → Vorsteuer
- Kz 83 → Zahllast/Erstattung
## Zusammensetzung der Buchungskonten in der EÜR
### Datenfluss und Tabellen
Das Modul verwendet das Zufluss-/Abflussprinzip (Ist-Versteuerung). Einnahmen und Ausgaben werden erst zum Zeitpunkt der Zahlung erfasst, nicht bei Rechnungsstellung.
#### Einnahmen (Kundenrechnungen)
```
llx_paiement (Zahlungsdatum: datep)
llx_paiement_facture (Verknüpfung: fk_paiement → fk_facture, Zahlungsbetrag: amount)
llx_facture (Rechnung: total_ht, total_tva, total_ttc, localtax1, tva_tx)
```
- **datep** aus `llx_paiement` = tatsächliches Zahlungsdatum
- **amount** aus `llx_paiement_facture` = gezahlter Betrag (kann Teilzahlung sein)
- Netto-Anteil wird berechnet: `zahlung * (total_ht / total_ttc)`
- USt-Anteil wird berechnet: `zahlung * (total_tva / total_ttc)`
#### Ausgaben (Lieferantenrechnungen)
```
llx_paiementfourn (Zahlungsdatum: datep)
llx_paiementfourn_facturefourn (Verknüpfung: fk_paiementfourn → fk_facturefourn, Zahlungsbetrag: amount)
llx_facture_fourn (Rechnung: total_ht, total_tva, total_ttc, localtax1, tva_tx)
```
- **datep** aus `llx_paiementfourn` = tatsächliches Zahlungsdatum
- **amount** aus `llx_paiementfourn_facturefourn` = gezahlter Betrag
- Netto-Anteil wird berechnet: `zahlung * (total_ht / total_ttc)`
- VSt-Anteil wird berechnet: `zahlung * (total_tva / total_ttc)`
#### Manuelle Buchungen
```
llx_steuer_buchung (datum, betrag_netto, betrag_ust, kategorie, fk_konto)
llx_steuer_konto (kontonummer, bezeichnung, kategorie, euer_zeile, ust_kennzeichen)
```
### SKR03 Kontenzuordnung
Alle Konten sind dem SKR03-Kontenrahmen zugeordnet:
#### Einnahmen-Konten (8xxx)
| Konto | Bezeichnung | EÜR-Zeile | USt-Kz |
|-------|-------------|-----------|--------|
| 8400 | Erlöse 19% USt | 14 | 81 |
| 8300 | Erlöse 7% USt | 14 | 86 |
| 8100 | Steuerfreie Umsätze Inland | 10 | - |
| 8120 | Steuerfreie igL | 11 | 41 |
| 8150 | Steuerfreie Ausfuhrlieferungen | 12 | 44 |
| 8910 | Private Kfz-Nutzung | 19 | 81 |
#### Ausgaben-Konten (3xxx/4xxx)
| Konto | Bezeichnung | EÜR-Zeile | USt-Kz |
|-------|-------------|-----------|--------|
| 3400 | Wareneingang 19% VSt | 26 | 66 |
| 4100 | Löhne und Gehälter | 31 | - |
| 4200 | Raumkosten/Miete | 34 | 66 |
| 4500 | Fahrzeugkosten | 51 | 66 |
| 4820 | AfA Sachanlagen | 36 | - |
| 4900 | Rechts- und Beratungskosten | 50 | 66 |
### USt-Kennzahlen für UStVA/ELSTER
| Kennzahl | Bedeutung | Konten |
|----------|-----------|--------|
| 81 | Umsätze 19% | 8400, 8500, 8600, 8900, 8910, 8920 |
| 86 | Umsätze 7% | 8300 |
| 41 | Innergemeinschaftliche Lieferungen | 8120 |
| 44 | Ausfuhrlieferungen | 8150 |
| 66 | Vorsteuer | Alle Ausgaben mit VSt |
### Berechnung in der EÜR-Klasse
Die Klasse `EUeR` (class/euer.class.php) berechnet:
1. **Einnahmen** aus bezahlten Kundenrechnungen
- Filtert nach Zahlungsdatum im gewählten Zeitraum
- Berücksichtigt Teilzahlungen anteilig
- Gutschriften werden als negative Einnahmen erfasst
2. **Ausgaben** aus bezahlten Lieferantenrechnungen
- Filtert nach Zahlungsdatum im gewählten Zeitraum
- Berücksichtigt Teilzahlungen anteilig
3. **Manuelle Buchungen** aus llx_steuer_buchung
- Werden zusätzlich zu den automatischen Buchungen erfasst
- Für Belege außerhalb von Dolibarr (z.B. Barbelege)
4. **Gewinn/Verlust**
- Gewinn = Summe Einnahmen (netto) - Summe Ausgaben (netto)
### Beispiel-SQL für Einnahmen
```sql
SELECT
pf.amount as zahlung,
p.datep as zahlungsdatum,
f.total_ht as netto,
f.total_tva as ust,
f.total_ttc as brutto,
(pf.amount * f.total_ht / f.total_ttc) as zahlung_netto,
(pf.amount * f.total_tva / f.total_ttc) as zahlung_ust
FROM llx_paiement as p
INNER JOIN llx_paiement_facture as pf ON p.rowid = pf.fk_paiement
INNER JOIN llx_facture as f ON pf.fk_facture = f.rowid
WHERE p.datep >= '2025-01-01' AND p.datep <= '2025-12-31'
AND f.entity = 1
```
## Datenbanktabellen
Das Modul erstellt folgende Tabellen:
- `llx_steuer_konto` - SKR03 Kontenrahmen
- `llx_steuer_buchung` - Manuelle Buchungen
- `llx_steuer_ustva` - UStVA-Daten (optional)
- `llx_steuer_gewerbe` - Gewerbesteuer-Daten (optional)
## Hinweise
- Dieses Modul ersetzt keine Steuerberatung
- Alle Werte vor Abgabe prüfen
- Für die offizielle Steuererklärung WISO Steuer oder ELSTER verwenden
## Lizenz
GPLv3 oder (nach Wahl) jede spätere Version. Siehe COPYING für Details.
## Autor
Eduard Wisch - 2026
## Support
Bei Fragen oder Problemen:
- GitHub Issues
- Dolibarr Forum