# Rechenfälle steuerfreie Sachbezüge (AP12a) Kern: Feld `hr.salary_rule.l10n_at_st_frei` + Methoden `_l10n_at_st_frei_ytd`/`_l10n_at_st_frei_freie_laufen` (Anbindung `_l10n_at_bemessung_laufen`) in `l10n_at_hr_payroll/models/lohnsteuer.py`, Parameter `at_st_grenzen` (`l10n_at_hr_payroll/data/rule_parameters_lst_2026.xml`). Privat: Eingabetypen `ATP_SB_*` (`data/input_types_private.xml`), Regeln `SB_MAHLZEIT`/`SB_BETRIEBSVERANSTALTUNG`/`SB_SACHZUWENDUNG`/`SB_RABATT`/ `SB_HOMEOFFICE` (`data/salary_rules_sb_private.xml`), Parameter `at_sb_werte` (`data/rule_parameters_sb_private.xml`), LNK-Anbindung `_at_lnk_basis` (`models/payslip_private.py`). SV-Seite: bestehendes `l10n_at_sv49_frei`/`at_sv49_grenzen` (die SB-Regeln setzen beide Flags). ## Rechtsquellen (verifiziert 2026-09-13) - **Mahlzeiten** (lb-sac-17): § 3 Abs 1 Z 17 EStG / § 49 Abs 3 Z 12 ASVG — „großer" Essensbon **€ 8,00/Arbeitstag** steuer- und beitragsfrei (Voraussetzungen: keine Verpflegungszulage u. a., sonst nur € 2,00); Jahresbemessung 220 Arbeitstage; Übersteigerung pflichtig. - **Betriebsveranstaltungen** (lb-sac-07, lb-sva-03): § 3 Abs 1 Z 14 EStG / § 49 Abs 3 Z 17 ASVG — Teilnahme bis **€ 365,–/AN/Kalenderjahr** frei; keine Barablöse. - **Sachzuwendungen/Geschenke** (lb-ges-02): § 3 Abs 1 Z 14 EStG — Weihnachtsgeschenke sowie Dienst-/Firmenjubiläen je bis **€ 186,–/Jahr** (gesonderter Pool neben der BV); Barzuwendungen immer pflichtig. - **Mitarbeiterrabatte** (lb-sac-02): § 3 Abs 1 Z 21 EStG / § 49 Abs 3 Z 29 ASVG — Rabatte **über 20 %** mit **€-1.000,–-Freibetrag/Jahr** je AN/AG; darunter keine Bezug; darüber abgabenpflichtig (laufend oder jährlicher Sachbezug). - **Homeoffice/Telearbeit** (lb-tel-04/05): § 26 Z 9 EStG / § 49 Abs 3 Z 31 ASVG — Telearbeit-Pauschale **€ 3/Tag, max 100 Tage/Jahr** (= € 300/Jahr) nicht steuerbar; Lohnkonto: Anzahl Telearbeitstage erfassen. - Alle Freibeträge: **nur der übersteigende Teil** ist beitrags-/steuer- pflichtig (Freibeträge, keine Freigrenzen), lohnnebenkostenfrei. ## Maschinenmodell (2026) - **Eingabe-Semantik** (manuell, `hr.payslip.input.amount`): - tagesbasiert (Mahlzeiten/Homeoffice): `amount` = **Anz. Arbeitstage**; Tageswert aus `at_sb_werte` (`mahlzeit_wert` Default 8,0 = tatsächl. Bonwert, `homeoffice_wert` 3,0 = gesetzlich fix); Regel: `result = wert`, `result_qty = tage` → Engine: `total = wert × tage`, `quantity = tage` (für die Cap-Berechnung Cap × Tage). - poolbasiert (BV/Sachzuwendung/Rabatt): `amount` = **Gesamtwert des Monats**; Regel: `result = amount` (`quantity` = 1). - **Freibetrag je Lauf** (Kern, `_l10n_at_st_frei_freie_laufen`, Spieglung `_l10n_at_sv49_freie_laufen`): tagesbasiert `frei = min(total, cap × menge)`; Homeoffice zusätzlich `rest_tage = 100 − YTD-Menge`, poolbasiert `frei = min(total, pool − YTD)`. YTD = Summe der Zeilen (Menge bzw. Total) **validierter** früherer Läufe des Kalenderjahres je DN (`_l10n_at_ytd_slaeufe`). - **Bemessungen**: LSt-BG laufend = Arbeitslohn − SVDN − § 68 − `st_frei`; LNK-BG = (laufend + im Monat gezahlter § 67) − `st_frei` − § 67 Abs 3/6 → SV-DN sind aus der LSt-BG abzugsfähig, aus der LNK-BG nicht (Zuflussprinzip, kein SV-Abzug). - **Caps** (`at_st_grenzen`, `at_sv49_grenzen`, 2026): Mahlzeit 8,0 €/AT · Rabatt 1.000 €/J · BV 365 €/J · Jubiläum 186 €/J · Homeoffice 3,0 €/AT, 100 Tage/J. ## RF-SB-1 — Mahlzeiten voll im Freibetrag 10 Gutschein-Arbeitstage à 8,0 € (`mahlzeit_wert`): - `SB_MAHLZEIT`: total **80,00 €**, quantity 10. - frei (SV + LSt) = min(80, 8 × 10) = **80,00 €** → SV-BG, LSt-BG und LNK-BG **unverändert** gegenüber dem Lauf ohne SB (Tests test_01). ## RF-SB-2 — Mahlzeiten mit Überhang (Bonwert 11,00 €) `at_sb_werte.mahlzeit_wert` = 11,00 (versioniert), 10 AT: - `SB_MAHLZEIT`: total **110,00 €** (11 × 10), quantity 10. - frei = min(110, 8 × 10) = **80,00 €** → Überhang **30,00 €**. - SV-BG +30,00 · LNK-BG +30,00 · LSt-BG +30,00 **abzüglich** der darauf entfallenden SV-DN (SV abzugsfähig: ΔLSt + ΔSVDN = 30,00 €) (test_02). ## RF-SB-3 — Betriebsveranstaltungen (365-€-Pool) Jänner 300 € (validiert), Februar 100 €: - Jänner: frei min(300, 365−0) = **300 €** → voll frei. - Februar: YTD 300 → frei min(100, 365−300) = **65 €**, Überhang **35 €** in SV-/LSt-(netto SVDN)/LNK-Bemessung (test_03). ## RF-SB-4 — Eigene Pools: Sachzuwendung (186) & Rabatt (1.000) - **Sachzuwendung**: Jänner 100 € (frei), Februar 100 € → frei 186−100 = **86 €**, Überhang **14 €** (test_04). - **Rabatt**: Jänner 700 € (frei, über 20 %), Februar 500 € → frei 1.000−700 = **300 €**, Überhang **200 €** (test_04). - Pools sind unabhängig (BV 365 ≠ Sachzuwendung 186). ## RF-SB-5 — Homeoffice (100-Tage-Limit) 70 Tage (validiert), dann 80 Tage: - Jänner: 70 × 3 = **210 €** frei (70 ≤ 100 Tage). - Februar: rest 100−70 = 30 Tage → frei 30 × 3 = **90 €**; Zeile 80 × 3 = 240 € → Überhang **150 €** pflichtig (test_05). ## RF-SB-6 — Ohne SB-Eingaben neutral Keine `ATP_SB_*`-Eingaben → keine `SB_*`-Zeilen, `_l10n_at_st_frei_freie_laufen()` = `_l10n_at_sv49_freie_laufen()` = 0 → Bemessungen wie ohne AP12a (test_06). ## AP12b — Wertgebundene Sachbezüge (2026) Stammdaten liegen auf `hr.version` (ein Fahrzeug/eine Wohnung pro Dienstverhältnis im MVP), ereignisbezogene Werte auf `ATP_SB_*`-Eingaben. Die Werte sind vollständig versioniert: `at_sb_wagen`, `at_sb_wagen_co2`, `at_sb_wohnung`, `at_sb_parkplatz`. - **Dienstwagen** (lb-sac-03/04, § 4 SBWVO): AK × 2 % (über Grenzwert, cap 960) bzw. 1,5 % (Grenzwert erfüllt, cap 720); halber SB bei nachgewiesenen ≤ 500 Privat-km/Monat: 1 %/0,75 % (caps 480/360). CO₂-Grenzwert folgt dem Erstzulassungsjahr; 0 g/km = kein Ansatz; laufender Kostenbeitrag mindert nach § 4 Abs 7. - **Dienstwohnung** (lb-sac-09, § 2 Abs 7a SBWVO): m² × Richtwert je Bundesland; Normwohnung −30 %, Hausbesorger −35 % (kombiniert 55,5 %); arbeitsplatznah/nicht Lebensmittelpunkt: ≤ 35 m² = 0, über 35–45 m² −35 % während der ersten 12 Überlassungsmonate. - **Parkplatz** (lb-sac-18, § 4a SBWVO): 14,53 €/Monat minus DN- Kostenbeitrag, soweit keine dokumentierte Ausnahme vorliegt. AP12b behandelt ihn als laufenden Bezug; der Quelltext nennt die Kategorie nicht explizit (⚠ Annahme vor Produktivsetzung gegen LStR/RIS prüfen). - **Handy** (lb-sac-15): beruflich/fallweise privat = 0; überwiegend private Mehrkosten sind laufender manueller Bezug. Verkauf unter Buchwert ist als Eingabe „Buchwert minus Kaufpreis“: SV **laufend**, LSt **sonstig (§ 67)**, LNK-pflichtig. - **Bonusmeilen** (lb-sac-08): Einlösungswert ist Drittlohn, ausschließlich SV-laufend (§ 49 Abs 1 ASVG), kein eigenes LSt-/LNK-Brutto. Die darauf entfallende DN-SV mindert jedoch gemäß bestehender §-62-Kette die LSt-BG. ## RF-SB-7 — Dienstwagen AK 36.700 €, EZ 2025, CO₂ 112 g/km (≤ 126): 36.700 × 1,5 % = **550,50 €**. Halber Sachbezug: **275,25 €**. Bei 130 g/km: 36.700 × 2 % = **734,00 €**. E-Fahrzeug (0 g/km) = **0 €**. Kostenbeitrag 300 €: 550,50 − 300 = **250,50 €**. ## RF-SB-8 — Dienstwohnung und Parkplatz - Wien, 72,4 m²: 72,4 × 6,67 = **482,91 €**. - Arbeitsplatznahe Kleinwohnung: 30 m² = **0 €**; 40 m² im Monat 1: 40 × 6,67 × 65 % = **173,42 €**. - Parkplatz: 14,53 € minus 5 € Kostenbeitrag = **9,53 €**. ## RF-SB-9 — Handy und Bonusmeilen - Private Handy-Mehrkosten 80 € nur bei Profil „überwiegend privat“: **80 € laufend**; berufliches Profil erzeugt keine Zeile. - Arbeitsmittel-Verkauf (Buchwert 800 € − Preis 100 €): **700 €**; SV-Basis laufend +700, SV-SZ-Basis 0, LSt-sonstig und LNK +700. - Bonusmeilen, Einlösungswert 300 €: SV-Basis +300, LNK 0, kein eigenes LSt-Brutto; Auszahlungsnetto vermindert sich nur um die DN-SV abzüglich der daraus folgenden LSt-Entlastung. ## Offene Punkte / dokumentierte Reste - **Dienstwagen:** Mini-Sachbezug (Fahrtenbuch/km-Wert/Jahresvergleich), Fahrzeugwechsel, Pool/Fahrgemeinschaft, Mehrfachfahrzeuge und einmalige Kostenbeiträge (lb-sac-04) folgen außerhalb des MVP. - **Kleinwohnung:** Aufrollung/Nachversteuerung beim Überschreiten der 12-Monats-Frist (§ 67 Abs 10), Mehrnutzer- und Gemeinschaftsflächen- aufteilung sind noch nicht automatisiert. - **Jobticket** (SBV § 4b): erst ab AP13. - **Lohnkonto-Aufzeichnungspflichten** (Mahlzeitenvoraussetzungen lb-sac-17, Telearbeitstage lb-tel-05, Rabatte > 20 % lb-sac-02 sowie Nachweise/Erklärungen AP12b): Arbeitgeber-Prüffeld, nicht Engine. - **2027-Werte**: alle `at_st_grenzen`/`at_sv49_grenzen`, `at_sb_werte` und AP12b-Parameter am Jahreswechsel nachführen (Wartung/RUNBOOK).