Viniendo de aquí Ahora tengo los siguientes datos y debo decir que estoy bastante desconcertado.
¿Qué valor es el correcto ahora?
-
#1 Dados los datos de referencia de un Empresa alemana de software especializado en software fiscal. En sus ejemplos de nóminas de préstamos, dan por ejemplo para un ingreso mensual brutto de 4926,59 EUROS (todos los demás valores en euros, y siempre Lohnsteuerklasse I ). Esto corresponde a la Lohnsteuer tasa impositiva 1000.75 .
-
#2 Entonces, si se toma el sitio popular brutto-netto-rechner.info te da 1003.16 .
-
#3 También hay documentos oficiales del gobierno para la deducción fiscal disponible como XML que un proyecto de código abierto puede transformarse para programar código en algunos lenguajes populares. Mi opinión al respecto con sus salidas de productos de Python 1247.91 .
-
#4 Oficial Herramienta fiscal alemana da 1027 .
-
#5 Finalmente, mi propia opinión en el Fórmula de Wikipedia con Python da 936.91 .
¡¿Esto no puede ser?! Realmente debo pensar en el Tigres azules cuento de J.L.Borges.
ACTUALIZACIÓN después de la respuesta a la pregunta / solución
Gracias a esta comunidad me funciona el siguiente código basado en #3; en #2 también funciona pero tienen errores de redondeo. Los demás no los he comprobado.
def test_lohnexample1(self):
# source: https://www.lohnexperte.de/files/root-pdfs/pdf/Muster.pdf
brutto = 4926.59 * 100 # Brutto in ¢ent
l = Lohnsteuer2018()
l.setRe4(brutto) # cent
l.setStkl(1) # Steuerklasse
l.setLzz(2) # Lohnzahlungszeitraum, 2 = Monat
l.setZkf(1) # Kinder
l.setPkv(0) # GKV (default)
l.setKvz(1.5) # Krankenkassenzusatzbeitrag (1.50%)
l.setKrv(0) # RV-WEST (default)
l.setAlter1(0) # setze 1, wenn das 64. Lebensjahr zu Beginn des Kalenderjahres vollendet wurde
l.setAf(0) # # 1, wenn die Anwendung des Faktorverfahrens gewählt wurden (nur in Steuerklasse IV)
l.setF(1) # Faktor
l.setPvs(0) # Nur wenn in Sachsen
l.setR(0) # Religion ja/nein
l.setLzzhinzu(0) # Hinzurechnungsbetrag auf der Lohnsteuerkarte
l.setPvz(0) # 1, wenn Zuschlag zur sozialen Pflegeversicherung
l.MAIN()
print("results lohnexample1:")
print_lst(l)
steuer = math.floor(float(l.getLstlzz()) + float(l.getStv()) + float(l.getSts())) / 100.0
soli = math.floor(float(l.getSolzlzz()) + float(l.getSolzs()) + float(l.getSolzv())) / 100
stges = steuer + soli
assert steuer == 1000.75
assert soli == 42.20