Files
odoo-at-payroll/personalverrechnung/PLAN-payroll-bgld.md
T
fegger 7e19fadcfd [IMP] personalverrechnung: move plan document into project folder
60-PLAN-payroll-bgld.md liegt nun als personalverrechnung/PLAN-payroll-bgld.md
neben RECHTSQUELLEN-Bgld.md und der Angebotskalkulation; Dokumentverweise in
beiden Projekt-Dokumenten mitgeändert (Rename, Inhalt unverändert).
2026-09-09 11:00:57 +02:00

170 lines
9.5 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# PLAN — Personalverrechnung Burgenland (gem360 / Odoo 19)
**Status:** Research/Planning — Schätzung und Beschaffungsliste.
Keine Freigabe zur Implementierung; vor Baubeginn ist der Umsetzungsplan
einzelnt zur Freigabe vorzulegen (AGENTS.md-Workflow).
- **Datum:** 2026-09-09
- **Branch:** `dev-payroll` (angelegt von `origin/dev` @ `975277a`, lokal,
nicht gepusht, noch nicht ausgecheckt)
- **Recherche-Quellen:** Odoo-19-Enterprise-Source (`odoo/addons/`),
`50-SCOPE-module.md`, `addons/l10n_at_vrv2015/docs/GAP_ANALYSIS.md`
- **Strategie:** Burgenland zuerst; Folgebundesländer als marginales Add-on
auf wiederverwendbarem Bundes-Kern.
## 1. Ziel
Einschätzung und Vorbereitung einer Personalverrechnung für österreichische
Gemeinden in Odoo 19, pilotiert für **Burgenland** (Pilotgemeinde: Unterwart).
Zwei Varianten:
- **Variante A** — volle Personalverrechnung in Odoo (Engine in Odoo).
- **Variante B** — externe Lohnverrechnung bleibt; Odoo importiert
Monats-Lohnjournal + SV/DB-Summen und bucht auf VRV
(deckungsgleich mit der aktuellen Projektentscheidung,
s. Abschnitt 7.1).
## 2. Ausgangslage (verifiziert am Odoo-19-Source)
- `hr_payroll`-Engine vorhanden und solide: Structures, Salary Rules
(Python-Code pro Regel), Payslips, Runs, Work Entries, Rule Parameters
(~12.000 LOC Python, 66 Dateien).
- `hr_payroll_account` bucht Payslips auf die FI; `hr_payroll_account_iso20022`
(SEPA-Auszahlung), `hr_payroll_holidays`/`_attendance` vorhanden.
- **Keine österreichische Payroll-Lokalisierung:** `l10n_at_hr_payroll`
existiert nicht. AT-Module: nur `l10n_at`, `l10n_at_reports`,
`l10n_at_intrastat`, `l10n_at_pos`, `l10n_at_saft`.
- Kalibrierung: ausgereifte Landes-Lokalisierungen (`l10n_be_hr_payroll`,
`l10n_ch_hr_payroll`) ≈ je 15.000 LOC Python + 15.00018.000 LOC XML.
- Kein Abfertigungs-/Provisionskern in `hr_payroll` (Referenz für EOSB:
`l10n_ae_hr_payroll`).
- VRV-Integration vorhanden: `l10n_at_vrv2015` mit `budget_position_id` auf
`account.move.line`, Ansatz-/MVAG-/EHH-FHH-Infrastruktur; Nachweis-Engine
(`account.report.custom.handler`).
## 3. Scope Burgenland
| Baustein | Gesetzlichkeit | Burgenland-Effekt |
|---|---|---|
| Lohnsteuer (§ 33 EStG, § 68-Pauschalbeträge), Geringfügigkeit, Abfertigung Neu | Bund | einmalig, für alle Länder |
| SV-Sätze, DB/Zuschlag, FLAF-DB, Krankengeldumlage | Bund | einmalig |
| Meldewesen L16/L17 (FinanzOnline), eSV/JASV (ELDA-XML) | Bund | einmalig |
| VRV-Buchung (Anlage 3b, Ansatz, MVAG, EHH/FHH, Rückstellungen) | Bund | einmalig (`l10n_at_vrv2015`) |
| Vertragsbedienstete (VBDG) | Bund | einmalig |
| Gemeinde-Angestellte/Arbeiter | KV + Landes-Gemeinderecht | **Bgld.** KV-Gehaltskatalog, Erfahrungsstufen |
| Gemeindebeamte (Landesbeamtenrecht, je Bundesland eigenes Gesetz — Bgld. LGBG, **in Research-Phase konsolidiert verifizieren**) | Land | nur **eine** Rechtsquelle statt neun |
| Versorgung/Leistungsabgang → speist VRV Anlage 6s Pensionsnachweis (GAP_ANALYSIS Item 13) | Land | nur Bgld. |
## 4. Schätzung
Alle Werte Expertenschätzungen in Personentagen (PT), ±; 1 PT ≈ 8 h.
Schärfung auf ±20 % nach Materialsammlung (Abschnitt 6) möglich.
### Variante A — voll in Odoo, Burgenland, alle Mitarbeitergruppen
**Revision 2026-09-09 (nach Rechtsrecherche, s.
`personalverrechnung/RECHTSQUELLEN-Bgld.md`): ~180290 PT** — das
Beamten-Doppelregime entfällt (§ 1 Abs 3 GemBG: keine neuen öffentlich-
rechtlichen Dienstverhältnisse), es gibt kein KV-Katalog-Handling, und das
Kinderbetreuungspersonal ist im GemBG integriert. Ursprüngliche Schätzung
(davon abgelöst):
| Phase | Umfang | Aufwand (PT) |
|---|---|---|
| Research/Planning | Bgld. Quellensichtung (KV(s), LGBG, VBDG, ELDA/FinOnl-Specs, VRV-Buchungsmatrix), Architekturentscheid, Scope-Abgrenzung mit Pilotgemeinde | 1220 |
| Modulentwicklung | (a) Bundes-Kern: Structures/Regeln (LSt, SV/DB, Abfertigung Neu, Entlohnung, Jahreswechsel, Meldewesen, Belege, VRV-Buchung): 135230; (b) Bgld. Beamte (LGBG, Katalog, Versorgung, Ablösung/Leistungsabgang): 4070; (c) Mehr-Bundesland-Architektur von Anfang an (Regel-/Katalogdaten je Bundesland trennen): +1015 | 185315 |
| Testing | Regel-Unit-Tests, Golden-Master + 23 Monate Parallellauf gegen die bestehende externe Lohnverrechnung (Pilot Unterwart), ELDA/FinOnl-Testübermittlungen, VRV-Verprobung, Beamten-Eckfälle | 5085 |
| **Gesamt (alt)** | | **~250420 PT ≈ 1220 Monate** (12 Dev + Domänen-Experte) |
**Releases:** R1 KV-Gruppen (Angestellte, Arbeiter, VBDG) ~58 Monate bis
produktiv; R2 Bgld. Beamte +23 Monate.
**Laufend:** Wartung 1525 PT/Jahr (KV-Abschluss, LSt-/SV-Jahreswerte,
Meldewesen-Änderungen).
**Marginal je Folgebundesland** (nur wenn (c) eingehalten): **3060 PT**
(Beamtenrechts-Regeln, KV-/Gehaltskatalog-Daten, Versorgungssätze, Tests).
Bundes-Kern bleibt unverändert. Bei Hardkodierung: >100 PT je Bundesland.
### Variante B — Import-Schnittstelle (mit Projekt-Constraint konsistent)
| Phase | Aufwand (PT) |
|---|---|
| Research/Planning (Formatdefinition mit Lohnbüro, Buchungsmatrix) | 36 |
| Modul (Importmodell Monats-Lohnjournal, Buchungsautomatik EHH/FHH + Ansatz + MVAG, Stellenplan/Anlage-4/6f-Datenmodelle — GAP_ANALYSIS Items 1012) | 1525 |
| Testing (Import-Validierung, Verprobung Anlage 1a/2a, zwei Mandate) | 510 |
| **Gesamt** | **~2540 PT** |
## 5. Architektur-Vorgaben (für den späteren Umsetzungsplan)
1. Auf `hr_payroll`-Engine aufbauen — keine parallele Engine
(odoo19-Development-Skill, Framework-first).
2. Structures je Mitarbeitergruppe; Regelparameter (`hr.rule.parameter`) für
jährlich wechselnde Werte (LSt-Sätze, SV-Werte, Geringfügigkeitsgrenze,
KV-Katalogwerte).
3. Landes-/Gruppenspezifika als Daten (Kataloge, Zulagensätze) je Bundesland
trennen — kein Hardkodieren burgenländischer Werte in Regeln.
4. VRV-Buchung über `hr_payroll_account``account.move` mit
`budget_position_id` aus `l10n_at_vrv2015`; EHH/FHH-Split im Lohnlauf.
5. Rückstellungen (Abfertigung, ggf. Versorgung) mit VRV-Anlage-3b-Konten
verdrahten; Abstimmung zu Anlage 1a/2a/2b als Testanker.
6. Meldewesen: ELDA-eSV-XML und FinOnl L16/L17 als dateibasierte Exports
zuerst; Übertragung/Zertifikat-Betrieb separat entscheiden.
## 6. Research-Checkliste (beschaffen, vor Schätzungsschärfung)
**→ Erledigt/aktualisiert 2026-09-09:** Die Rechtsquellen-Recherche ist
abgeschlossen — Ergebnisse und verifizierte Quellen:
`personalverrechnung/RECHTSQUELLEN-Bgld.md`.** Kernbefund: Burgenland regelt
über das Bgld. GemBG 2014 das gesamte Dienst- und Besoldungsrecht aller
Gemeindebediensteten (privatrechtlich, keine neuen Beamten, **kein KV**,
quartalsweise Sonderzahlung, Urlaub 28/33 Arbeitstage); Werte aus jährlichen
Landes-Bezügeanpassungs-Anlagen. Damit entfällt ein Großteil der
ursprünglich angenommenen Bgld.-Beschaffungen:
- [x] ~~Bgld. Gemeinde-KV(s) + Gehaltskatalog~~**kein KV-Regime**;
Entlohnung aus GemBG IVa + Bezügeanpassungs-Anlagen.
- [x] ~~Bgld. LGBG~~ → existiert so nicht; richtig ist das **Bgld. GemBG
2014** (LGBl. 42/2014) + GemBÜG 2014 (LGBl. 44/2014).
- [x] ~~VBDG für Gemeindebedienstete~~ → irrelevant; GemBG regelt das
privatrechtliche Dienstverhältnis selbst.
- [x] ~~KBBG/KV Kinderbetreuung~~ → Hauptstück VIIa GemBG integriert die
Kinderbetreuungspersonal-Sonderregeln.
- [x] ASVG-Beitragssätze/HBG/Geringfügigkeit **2026 verifiziert**
(sozialversicherung.at-Werte-Tabellen).
- [x] Lohnsteuertarif 2026 (usp.gv.at), L16-Fristen, LStR-Referenz
verifiziert; Überstunden-Freibetrag 2026 (170 €) identifiziert.
- [ ] **Bezügeanpassung 2026, Anlagen 1+2** (€-Tabellen Entlohnungsstufen):
RV 0715/XXIII. GP bzw. LGBl. 50/2026 → beschaffen.
- [ ] **ELDA-eSV-XML-Spezifikation** + **FinanzOnline L16-
Verfahrensbeschreibung** → beschaffen.
- [ ] **12 Referenz-Lohnläufe der Pilotgemeinde** (Golden-Master) inkl.
Bestandsaufnahme (Lehrlinge? Organe-Bezüge? Altpensionen?).
- [ ] **VRV-Buchungsmatrix Personal** (Kontenklassen 4/5/6 je Ansatz/MVAG
inkl. Rückstellungskonten) — Abstimmung mit `l10n_at_vrv2015`.
- [ ] Offene RIS-Verifikationen: ASVG § 49a Abs 8/9 (öffentlicher FLAF-DB),
KommStG § 6, IESG-Basissatz, Krankengeldumlage § 62,
Personalvertretungsumlage, SV-Trägerbestätigung (ÖGK Bgld.).
## 7. Offene Punkte / Entscheidungen
1. **Scope-Konflikt Variante A:** `50-SCOPE-module.md` enthält die harte
Ausnahme „KEINE Lohnverrechnung in Odoo" (läuft extern). Variante A
erfordert eine explizite, dokumentierte Scope-Änderung; Variante B bleibt
innerhalb des bestehenden Constraints.
2. **Kindergartenpersonal (KBBG):** in scope? (+2040 PT)
3. **Statutarstadt Rust:** Magistratsbeamte unter anderemem Recht — für
„Gemeinden" vermutlich out of scope, im Produktfahrplan festhalten.
4. **Meldewesen-Betrieb:** eigen (Zertifikate, FinOnl/ELDA-Anmeldung,
Jahres-Deadlines) vs. Rückschaltung an Steuerberatung/externes Lohnbüro.
5. **Pilotdatengrundlage:** Unterwart-Referenzläufe verfügbar und nutzbar
(DSGVO)?
## 8. Nächste Schritte
1. Materialsammlung gem. Abschnitt 6 (Gemeinde/KV/Land → Nutzer).
2. Schätzung auf ±20 % schärfen; Variante A vs. B zur Entscheidung vorlegen.
3. Bei Variante A: detaillierter Umsetzungsplan (Mitarbeitergruppen-R1-Scope,
Structure-/Regelinventar, Datenmodell Kataloge, Meldewesen-Exports,
Testkonzept Golden-Master) — **zur Freigabe vorlegen, dann erst bauen.**
4. `dev-payroll` auschecken, sobald der va_module-Workingtree clean ist
(derzeit uncommittete Anlage-7-Arbeit).