Files
odoo-at-payroll/addons/l10n_at_hr_payroll_private/__manifest__.py
T
fegger 9add58fe83 [IMP] l10n_at_hr_payroll_private: add statutory old-system severance (AP15-A)
Pay the pre-2003 AngG severance from the end-of-employment run as its own neutral benefit line: free of SV (§ 49 Abs 3 Z 7 ASVG) and payroll levies, outside the annual sixth, and collected into the § 291d EO termination pot net of its own wage tax. Taxation follows the binding better-of rule of § 67 Abs 3 EStG: multiple-of-method (tariff wage tax on the running monthly wage × the statutory multiple of the payout) versus the flat 6 % rate, applied mandatorily in favour of the employee. The tariff wage tax is captured as a separately confirmed value instead of deriving it from gross pay through the § 62 engine. The wizard enforces § 23a Abs 3 AngG (parental exit needs five uninterrupted years), blocks BMSVG-new contracts except frozen claims and validates AGRD 02/06 against the claim type. The LNK basis subtracts § 67 Abs 3/6 rules only when they actually run in the tax base, the L16 generator reports LST_ABF in key 260 outside 210/220, and result_rules access in the garnishment paths avoids DefaultDictPayroll materialisation. Verified against the original statute texts in .ris/ (AngG §§ 23/23a, EStG § 67 Abs 3).

Version 19.0.13.0.0 (private), 19.0.9.0.0 (core)
2026-09-15 11:01:55 +02:00

153 lines
7.6 KiB
Python
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.
# Part of the odoo-at-payroll project. License: LGPL-3.
{
'name': 'Österreich - Privatwirtschaft Personalverrechnung (General-AT)',
'version': '19.0.13.0.0',
'author': 'Florian Egger',
'website': 'https://gem360.at',
'category': 'Human Resources/Payroll',
'description': """
General-AT-Personalverrechnung (KV-basierte Privatwirtschaft)
==============================================================
Monatsverrechnung für Beschäftigte der österreichischen Privatwirtschaft
nach dem **KV-Regime** auf der Odoo-19 ``hr_payroll``-Engine. Fachliche
Grundlagen: ``personalverrechnung/IMPLEMENTIERUNGSPLAN-Privat.md`` und
``personalverrechnung/RECHTSQUELLEN-Privat.md`` (GP0-Verifikationen).
- **GP1 KV-Framework (dieser Stand):** Kollektivvertrags-Stammdaten
(``l10n.at.payroll.kv``) mit Trace-Link zur KV-Library, versionierte
KV-Eckwerte (``kv.wert`` — Muster ``hr.rule.parameter.value``,
Konsum über ``employee.kv_id._wert(code, datum)``), Verwendungs-/
Lohngruppen mit Erfahrungsstufen (``kv.gruppe`` / ``kv.gruppe.stufe``,
Jahrestabellen je ``gueltig_ab``), KV-Einstufung am Vertrag
(``hr.version``: KV, Gruppe, Erfahrungsstufe, Überzahlung) sowie
ein Import-Wizard für KV-Aufnahme und Jahresupdate (Vorschau,
Sprungwarnung > 10 %, versionierte Werte — TASY-Muster).
- **GP2 Entgelt-Engine (dieser Stand):** Structure „AT Privatwirtschaft
(KV)" + Kategorien ATP_*, Work-Entry-Types für die AZG-Fenster-Matrix
(ÜStd Tag/Nacht 206/226, So/Fei, Mehrarbeit § 4a-Band und § 19d
Teilzeit), Regelinventar KVGEO/NACHT_SV/UE_*/MEHR_*/URL_UE/B13/B14/
B14_RUECK/NETTO — vollständig datengetrieben über ``kv.wert``
(Vorlauf 2026-09-11 verifiziert; Rechenfälle unter ``docs/rechenfaelle/``).
All-in-Vertragsmodell (§ 2g AVRAG): Pauschale/Grundlohn-Ausweis am
Vertrag + Deckungsrechnung.
- **GP3 Lohnsteuer (umgesetzt):** dünne Regeln SVDN_KV/PV/AV/AK/WF +
LST_LFD/LST_SZ auf dem AP3-Kern (§ 66 kumulativ, § 67 Sechstel/
Fixsätze, § 68-Steuerfreiheiten).
- **GP4 SV/DB (umgesetzt):** SVDN_SZ-Nachtrag (§ 67 Abs 12 — Netto-
Korrektur in §-67-Monaten), DG-Block SVDG_KV/PV/AV/UV/WF/IESG +
SVDG_SZ_* + §-53a-UV Geringfügiger (ATP_DG, ohne Nettoeffekt;
ÖGK 2026: DG 20,98 % / Wien 21,23 %), Lohnnebenkosten FLAFDB
(§ 41 FLAG), KOMMST (§ 9 KommStG) und DZ (§§ 122/126 WKG,
company-flag-gated) mit Freibetragsstaffel 1.095/1.460 € —
Logik/Werte im Bundes-Kern (D3-Vorfinanzierung).
- **GP5 Abfertigung Neu (umgesetzt):** BMSVG-Regel ``BVG``
(§ 6: 1,53 % DG auf Entgelt und SZ, Kern-Parameter
``at_sv_bv_dg``) auf EIGENER, ungecappter BV-Grundlage (§ 6 Abs 5
iVm § 49 ASVG — kein HBG-Cap, ohne §-67-Abs-3/6-Zeilen),
beitragsfreier erster Monat taggenau (30-Tage-Aliquotierung;
Monatsende-Klippe), Wiederzulassung binnen 12 Monaten ab Tag 1
(Vor-AV beliebiger Dauer), läuft auch für Geringfügige und
Lehrlinge; Vertragsfeld Abfertigung-Neu/BV-Kasse + Erträge/Vor-
Monate am Mitarbeiter; Anwartschaftsreport (QWeb) + Endabrechnungs-
Wizard (§§ 14-17: Verfügungsausschluss-Matrix, 36-Beitragsmonate,
§-16-Fälligkeit, §-17-Optionen).
- **GP6 FI-Buchung UGB (dieser Stand):** Buchungsmatrix nach dem
Österreichischen Einheitskontenrahmen (KFS/BW 6): Hook
``_configure_payroll_account_at`` (Chart-Load + ``<function>``-
Datendatei, idempotent) zuordnet Regelkonten, Journal SLR und das
NET-Konto ``3850 Verbindlichkeiten aus Lohn und Gehalt`` (wird
angelegt, reconcile); **EKR-Debit-Split Arbeiter/Angestellte**
über ``l10n_at_personalgruppe`` am Vertrag + Override-Feld
``l10n_at_account_debit_arbeiter`` je Regel (Option A minimal:
Grundentgelt 6000, Sozialaufwand 6500, Abgaben 6600/6601/6602);
Netto-Regel auf Odoo-Konvention ``NET`` umbenannt
(Zahlungsregistrierung/SEPA via ``hr_payroll_account_iso20022``).
Auszahlung über ``hr_payroll_account_iso20022``; kein VRV/MVAG
(gem360-Brücke).
- **GP7 Meldewesen (dieser Stand):** mBGM/JASV (BEST MB, DM-ORG
42.7.0: Paket/mBGM/Tarifblock/Verrechnungsbasis/-position mit
GESAMT-Prozentsatz je BSGR aus ``at_mbgm_tarif``, Abschläge
A01/A02/A03 §-2a-AMPFG, A09 UV-60, A10 AV+IE-Entfall, A15 PV-
Halbierung; BV-Basis + V01 aus GP5; Storno-R-Sätze; Fehlanzeige)
+ Versichertenmeldung (BEST VR: M3/M4 mit deklarativer Event-
Erkennung über die Meldungs-Registry, AGRD-Mapping am
Abgangsgrund, VWAZ, BBER, GERF; fallweise Anmeldung BEST MA
SART 32) — auf dem GP7-Kern-Framework
(l10n_at_hr_payroll/models/elda.py; L16 + Arbeitsstättenmeldung
+ Belege siehe Kern-Modul). NSchAB-Branche als Company-Flag
(B001-T01 + 3,80 %).
- **Seed D2 (Referenz-KVs R1):** SI-2203 „Handwerk und Gewerbe" +
SI-2748 „Metallgewerbe" (Gehaltstabellen ab 1. 1. 2026, kuratiert aus
den KV-Library-Volltexten).
- **Folgen (GP7+):** Meldewesen/Belege (GP7), Jahreswechsel (GP8);
All-in-UI-Bericht (GP8); B14 längster-Urlaubs-Teil-Verfeinerung;
DZ-WKO-Verifikation (8.11) vor Wien-Mandanten; §-7-BMSVG-
Fiktivfälle (Präsenzdienst/Kranken-/Wochengeld) als dokumentierte
Option; Referenzbuchhaltungs-Fixierung der Arbeiter-Sub-Konten
(Option A-Rest).
Kein VRV-Bezug (Gemeinde-Schiene bleibt ``l10n_at_gemeinde_payroll`` +
gem360-Brücke).
""",
'depends': ['l10n_at_hr_payroll', 'hr_payroll_account',
'hr_payroll_expense', 'l10n_at', 'hr_payroll_account_iso20022',
'hr_holidays', 'hr_work_entry_holidays'],
'data': [
'security/ir.model.access.csv',
'security/security_rules.xml',
'data/kv_seed.xml',
'data/l10n.at.payroll.kv.gruppe.csv',
'data/l10n.at.payroll.kv.gruppe.stufe.csv',
'data/l10n.at.payroll.kv.wert.csv',
'data/structure_private.xml',
'data/work_entry_types_private.xml',
'data/absence_private.xml',
'data/input_types_private.xml',
'data/input_types_endabrechnung_private.xml',
'data/salary_rules_private.xml',
'data/salary_rules_lst_private.xml',
'data/salary_rules_efzg_private.xml',
'data/salary_rules_msch_private.xml',
'data/salary_rules_pfaendung_private.xml',
'data/salary_rules_sb_private.xml',
'data/salary_rules_sb2_private.xml',
'data/salary_rules_reisekosten_private.xml',
'data/salary_rules_endabrechnung_private.xml',
'data/salary_rules_sv_private.xml',
'data/salary_rules_bvg_private.xml',
'data/hr_payroll_account_private.xml',
'data/rule_parameters_mbgm_private.xml',
'data/rule_parameters_wien_private.xml',
'data/rule_parameters_efzg_private.xml',
'data/rule_parameters_msch_private.xml',
'data/rule_parameters_pfaendung_private.xml',
'data/rule_parameters_sb_private.xml',
'data/rule_parameters_sb2_private.xml',
'data/rule_parameters_reisekosten_private.xml',
'data/rule_parameters_pendler_private.xml',
'data/rule_parameters_endabrechnung_private.xml',
'data/bv_kasse_seed.xml',
'views/kv_views.xml',
'views/bv_views.xml',
'views/meldewesen_views.xml',
'views/vertragsfelder_views.xml',
'views/mitarbeiter_views.xml',
'views/aeb_views.xml',
'views/pfaendung_views.xml',
'views/sachbezuege_views.xml',
'views/reisekosten_views.xml',
'views/pendler_views.xml',
'views/endabrechnung_views.xml',
'report/gp8_reports.xml',
'report/buchungsbeleg_report.xml',
'report/bv_report.xml',
'report/pfaendung_dse_report.xml',
],
'demo': ['data/demo.xml'],
'countries': ['at'],
'license': 'LGPL-3',
'installable': True,
'auto_install': False,
}