Automation in der Steuerverwaltung; Programmablaufplan für die maschinelle Berechnung der vom laufenden Arbeitslohn einzubehaltenden Lohnsteuer, des Solidaritätszuschlags und der Maßstabsteuer für die Kirchenlohnsteuer ab 1999 (BMF-Schreiben vom 19. November 1998) Mit Wirkung ab 1999 muß der Programmablaufplan für die maschinelle Berechnung der vom laufenden Arbeitslohn einzubehaltenden Lohnsteuer, des Solidaritätszuschlags und der Maßstabsteuer für die Kirchenlohnsteuer geändert werden. Die Änderungen beruhen auf dem Entwurf des Steuerentlastungsgesetzes 1999/2/22 für 1999 (BT-Drucksache 14/23), der nach dem Beschluß des Deutschen Bundestages vom 13. November 1998 (BT-Drucksache 14/28) dem Programmablaufplan für 1999 zugrunde zu legen ist. Dieses Schreiben wird im Bundessteuerblatt Teil I veröffentlicht (ESt-Kartei NRW 39 b). Im Auftrag Sarrazin
Entwurf nach dem Steuerentlastungsgesetz 1999 DM-/Euro-Programmablaufplan für die maschinelle Berechnung der vom laufenden Arbeitslohn einzubehaltenden Lohnsteuer, des Solidaritätszuschlags und der Maßstabsteuer für die Kirchenlohnsteuer in 1999 Das Programm bietet die Möglichkeit, die Werte der vom Bundesfinanzministerium gem. 38 c des Einkommensteuergesetzes (EStG) aufgestellten Lohnsteuertabellen maschinell zu berechnen. Lohnsteuer, Solidaritätszuschlag und Bemessungsgrundlage für die Kirchenlohnsteuer werden sowohl in DM wie in Euro ermittelt. Arbeitslöhne können auch in Euro eingegeben werden. Der im Programmablaufplan benötigte Umrechnungskurs DM/Euro wird unmittelbar nach seiner Festlegung bekanntgemacht (voraussichtlich Anfang nuar 1999). Das Programm kann als Unterprogramm in ein Lohnabrechnungsverfahren eingefügt werden, wenn die unter 3.1 beschriebenen Eingangsparameter zur Verfügung gestellt werden. Es ist auch für die Lohnsteuerermittlung bei sonstigen Bezügen nach 39 b Abs. 3 EStG, für abweichende Lohnzahlungszeiträume nach 39 b Abs. 4 EStG sowie für den Lohnsteuer-hresausgleich durch den Arbeitgeber nach 42 b EStG einsetzbar, wenn im Umfeld des Programms die Ein- und Ausgangsparameter entsprechend diesen Vorschriften behandelt werden. Bei der Ermittlung des Solidaritätszuschlags und der Kirchensteuer zur Lohnsteuer für sonstige Bezüge sind jedoch 51 a Abs. 2 a EStG sowie 3 Abs. 4 und 5 und 4 des Solidaritätszuschlaggesetzes nicht anzuwenden. Inhalt 1. Gesetzliche Grundlagen 2. Erläuterungen 2.1 Allgemeines 2.2 Feldlängen 2.3 Symbole 3. Schnittstellenkonventionen 3.1 Eingangsparameter 3.2 Ausgangsparameter 4. Interne Felder 5. Programmablaufplan
1. Gesetzliche Grundlagen Der Programmablaufplan enthält: a) die Berechnung der vom laufenden Arbeitslohn nach 39 b Abs. 2 Sätze 2 bis 6 EStG in Verbindung mit 38 c Abs. 1 und 2 EStG einzubehaltenden Lohnsteuer für Lohnzahlungszeiträume, die nach dem 31. Dezember 1998 enden. b) die Berechnung des Solidaritätszuschlags nach dem Gesetz zur Senkung des Solidaritätszuschlags. c) die Ermittlung der Bemessungsgrundlage für die einzubehaltende Kirchenlohnsteuer (Minderung der ermittelten Lohnsteuer nach 51 a EStG). Der Programmablaufplan berücksichtigt die durch den Entwurf des Steuerentlastungsgesetzes 1999/2/22 für 1999 vorgesehenen Änderungen des Einkommensteuertarifs. 2. Erläuterungen 2.1 Allgemeines Es sind tägliche, wöchentliche, monatliche und jährliche Lohnzahlungszeiträume berücksichtigt. Die Aufteilung von hresbeträgen auf unterjährige Lohnzahlungszeiträume sowie die Hochrechnung von Beträgen für unterjährige Lohnzahlungszeiträume auf hresbeträge wird entsprechend den in 38 c Abs. 3 Satz 2 erster Halbsatz EStG angegebenen Bruchteilen vorgenommen. Bruchteile eines Pfennigs werden entsprechend den Angaben im Programmablaufplan auf ganze Pfennige aufgerundet bzw. bleiben außer Ansatz. Hat ein Rechenergebnis oder ein zu übertragendes Feld Dezimalstellen, die im Empfangsfeld nicht vorgesehen sind und es ist im Programmablaufplan nichts anderes angegeben, sind diese überschüssigen Dezimalstellen wegzulassen. Ausnahme: Bei der Umrechnung von Euro in DM und bei der Umrechnung von DM in Euro (Unterprogramme EURUMR und DMUMR ) wird kaufmännisch gerundet. Bei unterjährigen Arbeitslöhnen, die oberhalb der Grenzen des 38 c EStG liegen, kann die nach dem Programmablaufplan ermittelte Lohnsteuer auf einen Anfangsbetrag einer Arbeitslohnstufe geringfügig (eine Tabellenstufe) von der Lohnsteuer abweichen, die nach den Anleitungen in den Lohnsteuertabellen ermittelt würde. 2.2 Feldlängen
Das Format und die Länge der Parameter und internen Felder sind bei der Program mierung (Codierung) zu bestimmen, soweit sie sich nicht unmittelbar aus den Erläuterungen oder dem Programmablaufplan ergeben. Feldbeschreibungen ohne Stellenangaben beziehen sich auf Ganzzahlen, ansonsten sind die Nachkommastellen angegeben. Es werden keine Gleitkommafelder in der Beschreibung verwendet. 2.3 Symbole Die im Programmablaufplan verwendeten Sinnbilder entsprechen der Zeichenschablone nach DIN 661. Darüber hinaus bedeuten: = Wert nach unten abrunden (z.b. DM = auf volle DM abrunden) = Wert nach oben aufrunden (z.b. Pf = auf volle Pf aufrunden) = übertragen nach (Zuweisung) 3. Schnittstellenkonventionen 3.1 Eingangsparameter Die Plausibilität der Parameter wird im Programm nicht geprüft. Sie müssen daher in Vorprogrammen des Arbeitgebers abgesichert werden. Es kommen z.b. in Betracht: Vorzeichenprüfung (z.b. darf der Wert in RE4 nicht negativ sein); Prüfung auf gültigen Inhalt (z.b. Wert in LZZ nur 1, 2, 3 oder 4, Wert in ALTER1); Prüfung von Eingangswerten im Verhältnis zu anderen Eingangswerten (z.b. darf VBEZ nicht größer als RE4 sein, da die Versorgungsbezüge im Bruttolohn enthalten sein müssen; wenn STKL = 2 ist, muß ZKF größer als Null sein).
Es werden folgende Eingangsparameter benötigt: Name ALTER1 Bedeutung 1, wenn das 64. Lebensjahr vor Beginn des Kalenderjahres vollendet wurde, in dem der Lohnzahlungszeitraum endet ( 24 a EStG), sonst = KRV 1 = der Arbeitnehmer ist im Lohnzahlungszeitraum in der gesetzlichen Rentenversicherung versicherungsfrei und gehört zu den in 1 c Abs. 3 EStG genannten Personen. Bei anderen Arbeitnehmern ist einzusetzen. Für die Zuordnung sind allein die dem Arbeitgeber ohnehin bekannten Tatsachen maßgebend; zusätzliche Ermittlungen braucht der Arbeitgeber nicht anzustellen. KURS LZZ Euro-Umrechnungskurs in DM, Pfennigen (5 Dezimalstellen) Lohnzahlungszeitraum: 1 = hr 2 = Monat 3 = Woche 4 = Tag R RE4 RE4EU STKL Religionsgemeinschaft des Arbeitnehmers lt. Lohnsteuerkarte (bei keiner Religionszugehörigkeit = ) Steuerpflichtiger Arbeitslohn vor Berücksichtigung des Versorgungs-Freibetrags, des Altersentlastungsbetrags und des auf der Lohnsteuerkarte für den Lohnzahlungszeitraum eingetragenen Freibetrags in Pfennigen. Steuerpflichtiger Arbeitslohn vor Berücksichtigung des Versorgungs-Freibetrags, des Altersentlastungsbetrags und des auf der Lohnsteuerkarte für den Lohnzahlungszeitraum eingetragenen Freibetrags in Cents. Steuerklasse: 1 = I 2 = II 3 = III 4 = IV 5 = V 6 = VI VBEZ VBEZEU WFUNDF In RE4 enthaltene Versorgungsbezüge (ggf. ) in Pfennigen In RE4EU enthaltene Versorgungsbezüge (ggf. ) in Cents In der Lohnsteuerkarte des Arbeitnehmers eingetragener Freibetrag für den Lohnzahlungszeitraum in Pfennigen
ZKF Zahl der Kinderfreibeträge (eine Dezimalstelle, nur bei Steuerklassen I, II, III und IV) 3.2 Ausgangsparameter Als Ergebnis stellt das Programm folgende Ausgangsparameter zur Verfügung: Name BK BKEU LSTLZZ LSTEU LZALOG LZALUG SOLZLZZ SOLZEU Bedeutung Bemessungsgrundlage für die Kirchenlohnsteuer in Pfennigen Bemessungsgrundlage für die Kirchenlohnsteuer in Cents Für den Lohnzahlungszeitraum einzubehaltende Lohnsteuer in Pfennigen Für den Lohnzahlungszeitraum einzubehaltende Lohnsteuer in Cents Obergrenze der Tabellenstufe in der Lohnsteuertabelle für den Lohnzahlungszeitraum (nur, wenn Tabellen errechnet werden sollen) in Pfennigen Untergrenze der Tabellenstufe in der Lohnsteuertabelle für den Lohnzahlungszeitraum (nur, wenn Tabellen errechnet werden sollen) in Pfennigen Für den Lohnzahlungszeitraum einzubehaltender Solidaritätszuschlag in Pfennigen Für den Lohnzahlungszeitraum einzubehaltender Solidaritätszuschlag in Cents 4. Interne Felder Das Programm verwendet intern folgende Felder (wenn ggf. solche Felder im Umfeld des Programms verwendet werden sollen, können sie als Ausgangsparameter behandelt werden, soweit sie nicht während des Programmdurchlaufs noch verändert wurden). Die internen Felder müssen vor Aufruf des Programms gelöscht werden: Name ALTE ANP ANTEIL1 ANTEIL2 BMG Bedeutung Altersentlastungsbetrag in Pfennigen Arbeitnehmer-Pauschbetrag in DM Auf den Lohnzahlungszeitraum entfallender Anteil von hreswerten auf ganze Pfennige abgerundet Auf den Lohnzahlungszeitraum entfallender Anteil von hreswerten auf ganze Pfennige aufgerundet Bemessungsgrundlage für Altersentlastungsbetrag in Pfennigen
DIFF FVB HFB JBMG JW KFB KZTAB LSTJAHR MIST RB RE4LZZ RE4O RE4U RUND RW SAP SOLZFREI SOLZJ SOLZMIN ST ST1 ST2 Differenz zwischen ST1 und ST2 in DM Versorgungs-Freibetrag in Pfennigen Haushalts-Freibetrag in DM hressteuer nach 51 a EStG, aus der Solidaritätszuschlag und Bemessungsgrundlage für die Kirchenlohnsteuer ermittelt werden in DM hreswert, dessen Anteil für einen Lohnzahlungszeitraum in UPANTEIL errechnet werden soll in Pfennigen Summe der Kinderfreibeträge in DM Kennzahl für die Einkommensteuer-Tabellenart: 1 = Grundtabelle 2 = Splittingtabelle hreslohnsteuer in DM Mindeststeuer für die Steuerklassen V und VI in DM Rundungsbetrag in DM Arbeitslohn des Lohnzahlungszeitraums nach Abzug von Versorgungs-Freibetrag, Altersentlastungsbetrag und in der Lohnsteuerkarte eingetragenem Freibetrag in Pfennigen. Entspricht dem Arbeitslohn, für den die Lohnsteuer im personellen Verfahren aus der zum Lohnzahlungszeitraum gehörenden Tabelle abgelesen würde Obergrenze der Tabellenstufe in der hreslohnsteuertabelle in DM Untergrenze der Tabellenstufe in der hreslohnsteuertabelle in DM Feld für die Abrundung von Beträgen in UPRUND54 auf einen ohne Rest durch 54 teilbaren Betrag in DM Rechenwert mit 3 Dezimalstellen Sonderausgaben-Pauschbetrag in DM Freigrenze für den Solidaritätszuschlag in DM Solidaritätszuschlag auf die hreslohnsteuer in DM, Pf (2 Dezimalstellen) Zwischenwert für den Solidaritätszuschlag auf die hreslohnsteuer in DM, Pf (2 Dezimalstellen) Tarifliche Einkommensteuer in DM Tarifliche Einkommensteuer auf das 1,25fache ZX in DM Tarifliche Einkommensteuer auf das,75fache ZX in DM
TW VSP VSPKURZ VSPMAX1 VSPMAX2 VSPO VSPREST VSPVOR X Y ZRE4 ZTABFB ZVE ZX, ZZX Tabellenwerte mit den Sprüngen der Tabellenstufen für die Berechnung von LZALOG (indiziert durch LZZ), in Pfennigen Vorsorgepauschale in DM, Pf (2 Dezimalstellen) Höchstbetrag der Vorsorgepauschale nach 1 c Abs. 3 EStG in DM Höchstbetrag der Vorsorgepauschale nach 1 c Abs. 2 Nr. 2 EStG in DM Höchstbetrag der Vorsorgepauschale nach 1 c Abs. 2 Nr. 3 EStG in DM Vorsorgepauschale nach 1 c Abs. 2 Satz 2 EStG vor der Höchstbetragsberechnung in DM, Pf (2 Dezimalstellen) Für den Abzug nach 1 c Abs. 2 Nrn. 2 und 3 EStG verbleiben-der Rest von VSPO in DM, Pf (2 Dezimalstellen) Höchstbetrag der Vorsorgepauschale nach 1 c Abs. 2 Nr. 1 EStG in DM, Pf (2 Dezimalstellen) Abgerundetes zu versteuerndes Einkommen gem. 32 a Abs. 1 und 2 EStG (1 Dezimalstelle) gem. 32 a Abs. 1 EStG (5 Dezimalstellen) Auf einen hreslohn hochgerechnetes RE4LZZ in DM, Pf (2 Dezimalstellen) Feste Tabellenfreibeträge (ohne Vorsorgepauschale) in DM Zu versteuerndes Einkommen in DM Zwischenfelder zu X für die Berechnung der Steuer nach 38 c Abs. 1 Satz 4 in DM
Programmablaufplan 1999 LST99 Steuerung EURUMR MRE4LZZ MRE4 MZTABFB MLSTJAHR Umrechnung der Euro-Eingabewerte in DM-Werte Ermittlung der Freibeträge (Anteile) nach 39 b Abs. 2 EStG und des maßgeblichen Arbeitslohns für die LZZ-Tabelle Ermittlung des entsprechenden hreslohns und der Unter- und Obergrenze der entsprechenden Tabellenstufe Ermittlung der festen Tabellenfreibeträge (ohne Vorsorgepauschale) Ermittlung der hreslohnsteuer nach den Lohnsteuertabellen A und B für die Lohnsteuerberechnung ST LSTJAHR JW = LSTJAHR * 1 UPANTEIL Ermittlung des Anteils der hreslohnsteuer für den Lohnzahlungszeitraum ANTEIL1 LSTLZZ LSTJAHR JBMG ZKF > ZTABFB = ZTABFB + KFB MLSTJAHR ST JBMG Berechnung der Tabellenfreibeträge mit Kinderfreibeträgen für die Bemessungsgrundlage Kist und SOLZ Ermittlung der hreslohnsteuer (mit Kinderfreibeträgen) als hresbemessungsgrundlage Kist und SOLZ MSOLZ DMUMR Ermittlung des Solidaritätszuschlags mit Aufteilung von SOLZJ und JBMG auf den Lohnzahlungszeitraum Umrechnung der DM-Ergebniswerte in Euro-Werte
EURUMR Umrechnung der Euro- Eingabewerte in DM-Werte RE4 = RE4 + RE4EU * KURS VBEZ = VBEZ + VBEZEU * KURS Das Ergebnis ist "kaufmännisch" zu runden; d.h., ist die 1. Dezimalstelle 5 oder größer, ist ein Pfennig im Ergebnisfeld zu addieren. DMUMR Umrechnung der DM-Ergebniswerte in Euro-Werte BKEU = BK / KURS LSTEU = LSTLZZ / KURS SOLZEU = SOLZLZZ / KURS Das Ergebnis ist "kaufmännisch" zu runden; d.h., ist die 1. Dezimalstelle 5 oder größer, ist ein Cent im Ergebnisfeld zu addieren.
MRE4LZZ Versorgungs-Freibetrag, Altersentlastungsbetrag ( 39 b Abs. 2 EStG) VBEZ = FVB = VBEZ *,4 Pf FVB 6 JW UPANTEIL Ermittlung des Anteils vom maximalen Versorgungs- Freibetrag für den LZZ FVB > ANTEIL2 ANTEIL2 FVB ALTER1 = BMG = RE4 - VBEZ ALTE ALTE = BMG *,4 Pf 372 JW UPANTEIL Ermittlung des Anteils vom maximalen Altersentlastungsbetrag für den LZZ ALTE > ANTEIL2 ANTEIL2 ALTE RE4LZZ = RE4 - FVB - ALTE - WFUNDF
MRE4 Maßgeblicher Arbeitslohn, Oberund Untergrenze der entsprechenden Stufe in der hreslohnsteuertabelle LZZ = 1 LZZ = 2 LZZ = 3 ZRE4 = (RE4LZZ +,56) * 3,6 ZRE4 = ZRE4 = Pf (RE4LZZ +,89) Pf (RE4LZZ +,67) Pf * 3,6 / 7 *,12 ZRE4 = RE4LZZ / 1 Für die Erstellung von Lohnsteuertabellen: RE4U und RE4O sind ganze DM-Beträge. Für die Ermittlung der Stufen der Lohnsteuertabellen muß folgende Routine vor eingefügt werden (LZALUG und LZALOG werden in Pfennigen errechnet): UPRUND54 RUND = ZRE4-2 RUND < RE4U = RUND + 2 RUND Die nach 38 c Abs. 3 Satz 2 EStG bei der Berechnung der Anfangsbeträge der Arbeitslohnstufen außer Ansatz bleibenden Bruchteile eines Pfennigs müssen dem Arbeitslohn vor der Hochrechnung auf einen hresarbeitslohn zugerechnet werden. Andernfalls würde sich bei der Hochrechnung eines Arbeitslohns in Höhe des Anfangsbetrags einer Arbeitslohnstufe ein hresarbeitslohn ergeben, der in der hreslohnsteuertabelle eine Stufe zu niedrig liegt. JW = RE4U * 1 RE4O = RE4U + 53 UPANTEIL ANTEIL1 LZALUG LZALOG = LZALUG + TW (LZZ) Tabelle für TW: LZZ 1 2 3 4 TW 5399 449 14 14
Ermittlung der festen Tabellenfreibeträge (ohne Vorsorgepauschale) MZTABFB 1 KZTAB STKL = 1 STKL = 2 STKL = 3 STKL = 4 STKL = 5 2 RB 2 KZTAB 5616 HFB 2 ANP 2 ANP 2 ANP 2 ANP 2 ANP 18 SAP 216 SAP 18 SAP 18 SAP KFB KFB KFB = ZKF * 3456 KFB = ZKF * 6912 KFB = ZKF * 6912 KFB = ZKF * 6912 Berechnung der Tabellenfreibeträge ohne Kinderfreibeträge für die Lohnsteuerberechnung ZTABFB = RB + HFB + ANP + SAP
MLSTJAHR Ermittlung hreslohnsteuer STKL < 5 VSP MVSP Ermittlung der Vorsorgepauschale ZVE = RE4U - ZTABFB - VSP ZVE < RUND = ZVE / KZTAB ZVE, X UPRUND54 Abrundung auf einen durch 54 ohne Rest teilbaren Betrag RUND X STKL < 5 MST5-6 UPTAB99 Ermittlung der hreslohnsteuer aus dem Einkommensteuertarif
MVSP Vorsorgepauschale ( 38 c Abs. 1 Nr. 3 und Abs. 2 EStG) VSPO = RE4O *,2 VSPVOR = 6 * KZTAB VSPMAX1 = 261 * KZTAB VSPMAX2 = 135 * KZTAB VSPKURZ = 2214 * KZTAB KRV = 1 VSPO > VSPKURZ UMVSP VSPO VSP VSPKURZ VSP VSP RUND UPRUND54 Abrundung der Vorsorgepauschale auf einen durch 54 ohne Rest teilbaren Betrag RUND VSP
MST5-6 Lohnsteuer für die Steuerklassen V und VI ( 38 c Abs. 1 Satz 4 EStG) X ZZX X > 64476 X ZX 64476 ZX X = ZX * 1,25 UPTAB99 ST ST1 X = ZX *,75 UPTAB99 ST ST2 DIFF = (ST1 - ST2) * 2 MIST = ZX *,239 DM MIST > DIFF DIFF ST MIST ST ZZX > 64476 ST = ST + (ZZX - 64476) *,53 DM
MSOLZ Solidaritätszuschlag SOLZFREI = 1836 * KZTAB SOLZLZZ JBMG > SOLZFREI SOLZJ = JBMG * 5,5 / 1 SOLZMIN = (JBMG - SOLZFREI) * 2 / 1 SOLZMIN < SOLZJ SOLZMIN SOLZJ JW = SOLZJ * 1 UPANTEIL ANTEIL1 SOLZLZZ R > Aufteilung des Betrages nach 51 a EStG auf den LZZ für die Kirchensteuer JW = JBMG * 1 UPANTEIL BK ANTEIL1 BK
UMVSP VSPVOR = VSPVOR - RE4O *,16 Vorsorgepauschale für die allgemeine Lohnsteuertabelle VSPVOR < VSPVOR VSPO > VSPVOR VSPVOR VSP VSPREST = VSPO - VSPVOR VSPREST > VSPMAX1 VSP = VSP + VSPMAX1 VSPREST = (VSPREST - VSPMAX1)/2 Pf VSPREST > VSPMAX2 VSPO VSP VSP = VSP + VSPREST VSP = VSP + VSPREST VSP = VSP + VSPMAX2
UPANTEIL Anteil von hresbeträgen für einen LZZ ( 38 c Abs. 3 Satz 2 EStG) LZZ = 1 LZZ = 2 LZZ = 3 ANTEIL1 = JW / 36 ANTEIL1 = JW * 7 / 36 ANTEIL1 = JW / 12 JW ANTEIL1 ANTEIL2 = JW / 36 * ANTEIL2 = JW * 7 / 36 * ANTEIL2 = JW / 12 * JW ANTEIL2 Ergebnis abrunden * Ergebnis aufrunden UPRUND54 Abrundung auf einen durch 54 ohne Rest teilbaren Betrag RUND = RUND / 54 ohne Rest RUND = RUND * 54
Tarifliche Einkommensteuer ( 32 a EStG) UPTAB99 X < 1368 X < 1764 X < 66366 X < 1242 Y = (X - 66312) / 1 RW = RW Y * 151,93 RW + 3669 RW = RW + 3669 Y = (X - 171) / 1 RW = Y * 11,22 11,31 *) RW = RW + 267 Y = (X - 1314) / 1 RW = Y * 35,35 RW = RW * Y RW = RW * Y RW = RW + 239 ST = X *,53-22886 ST = ST = DM RW + 16637 DM RW + 111 DM ST = RW * Y DM ST Dezimalstellen ab 4. Stelle weglassen ( 32 a Abs. 3 EStG) ST = ST * KZTAB