Files
odoo-at-payroll/addons/l10n_at_hr_payroll_private/views/endabrechnung_views.xml
T
fegger 472b19a4b2 [IMP] l10n_at_hr_payroll_private: add settlement payments under § 67 Abs 8 lit a (AP15-C)
Complete the termination sequence with the settlement-sum path: comparison sums from court or out-of-court settlements, judgment/decision arrears and dismissal-objection payments are split between the statutory-severance and voluntary-severance rules and the settlement remainder. The remainder (VERGLEICH, bemessung neutral, sv_art laufend) reuses the lit-a/b fifth rule: after deducting the § 62 employee-rate contributions, one fifth stays tax-free capped at one fifth of nine times the monthly HBG (12 474 EUR 2026), and the remaining four fifths run with the payment-month tariff without touching the annual sixth. A new rule flag l10n_at_vergleich_bv marks the part paid for periods with a BV-Kasse entitlement: up to the parameterised cap at_lst_67_abs8_vergleich_bv (7 500 EUR 2026; § 67 Abs 8 is § 33a/§ 124b indexed) it is taxed at the flat 6 % rate with the contributions allocated pro rata (LStR Rz 1102b), while the excess falls back into the fifth rule. Both settlement rules stay payroll-levy liable (§ 41 Abs 4 lit b FLAG exempts only § 67 Abs 3 and 6) and SV-liable in the payment month, with per-Beitragsmonat roll-forward and insurance-period extension remaining documented manual options (lb-end-22, E-MVB 011-02-00-001). Identifiable severance components keep running through the existing statutory and voluntary severance machinery; a settlement expressly agreed as statutory severance is taxed in full under § 67 Abs 3 (VwGH 2013/13/0001 = ARD 6490/20/2016), and pension buy-outs (lit e) and social-plan payments (lit f) are out of scope. The wizard section requires confirmation of the settlement's itemisation and contested-claim status plus the BV entitlement, enforces the BV cap with the excess captured as remainder, and previews the free fifth, tariff basis and 6 % tax; the settlement memo lands on the payslip for the separate Lohnzettel workflow (LStR Rz 911a). The account matrix posts both settlement rules to the provisional 6200/6000 (workers 6000) and the new tax rule to 3540. Verified against the original statute text in .ris/ (EStG § 67 Abs 8 lit a) and the knowledge-base sources lb-end-21/22; KZ positioning of the lit-a tariff parts and their § 291d pot allocation remain documented verification points against LStR Rz 1087 ff.

Version 19.0.15.0.0 (private)
2026-09-15 12:38:19 +02:00

183 lines
9.8 KiB
XML

<?xml version="1.0" encoding="utf-8"?>
<odoo>
<!-- AP14-A: Endabrechnungs-Wizard (Beendigung) — sammelt UEL, -->
<!-- Abgangsentschädigung, Zeitguthaben/-schulden und offene -->
<!-- Vorschüsse und legt den Endabrechnungs-Lauf vorbefüllt an. -->
<record id="endabrechnung_wizard_form_view" model="ir.ui.view">
<field name="name">l10n.at.payroll.endabrechnung.wizard.form</field>
<field name="model">l10n.at.payroll.endabrechnung.wizard</field>
<field name="arch" type="xml">
<form string="Endabrechnung (Beendigung)">
<group>
<group string="Beendigung">
<field name="employee_id"/>
<field name="austrittsdatum"/>
<field name="departure_reason_id" options="{'no_create': True}"/>
</group>
<group string="Offene Posten">
<field name="uel_tage"/>
<field name="zeit_guthaben_stunden"/>
<field name="zeit_schulden_stunden"/>
<field name="abgang_betrag"/>
<field name="abgang_ffrist_tage"
invisible="not abgang_betrag"/>
<field name="vorschuss_saldo"/>
</group>
</group>
<group string="Abfertigung Alt (§§ 23/23a AngG)">
<field name="abf_alt_aktiv"/>
<group invisible="not abf_alt_aktiv">
<field name="abf_alt_anspruchsart"/>
<field name="abf_alt_dienstzeit_monate"/>
<field name="abf_alt_monatsentgelt"/>
<field name="abf_alt_laufender_arbeitslohn"/>
<field name="abf_alt_monatslohnsteuer"/>
<field name="abf_alt_mehrfach"/>
<field name="abf_alt_nachweis" placeholder="Dienstzeitnachweis, Alt-/Neu-Status und Anspruchsbegründung"/>
<field name="abf_alt_anspruch_bestaetigt"/>
</group>
<group invisible="not abf_alt_aktiv">
<field name="abf_alt_betrag_vorschau"/>
<field name="abf_alt_steuer_vervielfachung_vorschau"/>
<field name="abf_alt_steuer_6_vorschau"/>
<field name="abf_alt_lohnsteuer_vorschau"/>
<field name="abf_alt_netto_vorschau"/>
</group>
</group>
<group string="Freiwillige Abfertigung (§ 67 Abs 6 EStG)">
<field name="abf_frei_aktiv"/>
<group invisible="not abf_frei_aktiv">
<field name="abf_frei_betrag"/>
<field name="abf_frei_basis_12"/>
<field name="abf_frei_dienstzeit_monate"/>
<field name="abf_frei_erhaltene_abfertigungen"/>
<field name="abf_frei_gesetzlicher_anspruch"/>
<field name="abf_frei_nachweis" placeholder="Vordienstzeiten zum Lohnkonto (§ 76 EStG), erhaltene Abfertigungen, keine Anspruchsumwandlung"/>
<field name="abf_frei_anspruch_bestaetigt"/>
</group>
<group invisible="not abf_frei_aktiv">
<field name="abf_frei_z1_vorschau"/>
<field name="abf_frei_z2_vorschau"/>
<field name="abf_frei_kuerzung_vorschau"/>
<field name="abf_frei_beguenstigt_vorschau"/>
<field name="abf_frei_ueberhang_vorschau"/>
<field name="abf_frei_lst_vorschau"/>
<field name="abf_frei_netto_vorschau"/>
</group>
</group>
<group string="Vergleichssumme (§ 67 Abs 8 lit a EStG)">
<field name="vergleich_aktiv"/>
<group invisible="not vergleich_aktiv">
<field name="vergleich_rest_betrag"/>
<field name="vergleich_bv_betrag"/>
<field name="vergleich_bv_anwartschaft_bestaetigt"
invisible="not vergleich_bv_betrag"/>
<field name="vergleich_nachweis" placeholder="Aufgliederung der Vergleichsvereinbarung, strittige Ansprüche, BV-Zeiträume, Pauschalvergleich: Verhältnisfaktor"/>
<field name="vergleich_aufteilung_bestaetigt"/>
</group>
<group invisible="not vergleich_aktiv">
<field name="vergleich_fuenftel_frei_vorschau"/>
<field name="vergleich_tarif_basis_vorschau"/>
<field name="vergleich_bv_lst_vorschau"/>
</group>
</group>
<group string="Vorschau (§ 10 UrlG, § 11 Abs 2 ASVG)">
<group>
<field name="uel_lfd_vorschau"/>
<field name="uel_sz_vorschau"/>
</group>
<group>
<field name="sv_tage_vorschau"/>
</group>
</group>
<footer>
<button name="action_payslip" type="object"
string="Endabrechnungs-Lauf anlegen"
class="btn-primary"/>
<button string="Abbrechen" special="cancel"
class="btn-secondary"/>
</footer>
</form>
</field>
</record>
<record id="hr_payslip_view_form_abf_alt" model="ir.ui.view">
<field name="name">hr.payslip.form.abfertigung.alt</field>
<field name="model">hr.payslip</field>
<field name="inherit_id" ref="hr_payroll.view_hr_payslip_form"/>
<field name="arch" type="xml">
<xpath expr="//notebook" position="inside">
<page string="Abfertigung Alt" name="l10n_at_abfertigung_alt"
invisible="not l10n_at_abf_alt_mehrfach">
<group>
<group>
<field name="l10n_at_abf_alt_anspruchsart" readonly="state != 'draft'"/>
<field name="l10n_at_abf_alt_dienstzeit_monate" readonly="state != 'draft'"/>
<field name="l10n_at_abf_alt_monatsentgelt" readonly="state != 'draft'"/>
</group>
<group>
<field name="l10n_at_abf_alt_laufender_arbeitslohn" readonly="state != 'draft'"/>
<field name="l10n_at_abf_alt_monatslohnsteuer" readonly="state != 'draft'"/>
<field name="l10n_at_abf_alt_mehrfach" readonly="state != 'draft'"/>
<field name="l10n_at_abf_alt_nachweis" readonly="state != 'draft'"/>
</group>
</group>
</page>
</xpath>
</field>
</record>
<record id="hr_payslip_view_form_abf_frei" model="ir.ui.view">
<field name="name">hr.payslip.form.abfertigung.frei</field>
<field name="model">hr.payslip</field>
<field name="inherit_id" ref="hr_payroll.view_hr_payslip_form"/>
<field name="arch" type="xml">
<xpath expr="//notebook" position="inside">
<page string="Freiwillige Abfertigung" name="l10n_at_abfertigung_frei"
invisible="not l10n_at_abf_frei_basis_12 and not l10n_at_abf_frei_dienstzeit_monate and not l10n_at_abf_frei_erhaltene_abfertigungen and not l10n_at_abf_frei_gesetzlicher_anspruch">
<group>
<group>
<field name="l10n_at_abf_frei_basis_12" readonly="state != 'draft'"/>
<field name="l10n_at_abf_frei_dienstzeit_monate" readonly="state != 'draft'"/>
<field name="l10n_at_abf_frei_erhaltene_abfertigungen" readonly="state != 'draft'"/>
</group>
<group>
<field name="l10n_at_abf_frei_gesetzlicher_anspruch" readonly="state != 'draft'"/>
<field name="l10n_at_abf_frei_nachweis" readonly="state != 'draft'"/>
</group>
</group>
</page>
</xpath>
</field>
</record>
<record id="hr_payslip_view_form_vergleich" model="ir.ui.view">
<field name="name">hr.payslip.form.vergleich</field>
<field name="model">hr.payslip</field>
<field name="inherit_id" ref="hr_payroll.view_hr_payslip_form"/>
<field name="arch" type="xml">
<xpath expr="//notebook" position="inside">
<page string="Vergleich (§ 67 Abs 8 lit a)"
name="l10n_at_vergleich"
invisible="not l10n_at_vergleich_nachweis">
<group>
<field name="l10n_at_vergleich_nachweis"
readonly="state != 'draft'"/>
</group>
</page>
</xpath>
</field>
</record>
<record id="action_endabrechnung_wizard" model="ir.actions.act_window">
<field name="name">Endabrechnung (Beendigung)</field>
<field name="res_model">l10n.at.payroll.endabrechnung.wizard</field>
<field name="view_mode">form</field>
<field name="target">new</field>
</record>
<menuitem id="menu_l10n_at_payroll_endabrechnung"
name="Endabrechnung (Beendigung)"
parent="hr_work_entry_enterprise.menu_hr_payroll_root"
action="action_endabrechnung_wizard" sequence="42"/>
</odoo>