Policy functions in GETTSIM#
This section documents the internal functions provided by GETTSIM to model the tax and transfer system. They are sorted alphabetically.
You can click on the functions in the table to be redirected to the functions signature
further below. By clicking on the source
hyperlink next to the function signatures,
you can see the full source code of the function.
|
Calculate abgeltungssteuer on Steuernummer level. |
|
Age at retirement in monthly precision. |
|
Calculate age of youngest child in months. |
|
Proportion of Entgeltpunkte accumulated in East Germany |
|
Sum up the gross income for calculation of basic subsistence. |
Calculate share of income, which remains to the individual since 10/2005. |
|
|
Share of income which remains to the individual. |
SGB II income. |
|
Calculate basic monthly subsistence for children since 2011. |
|
Calculate basic monthly subsistence for children until 2010. |
|
Calculate costs of living eligible to claim since 2023. |
|
Calculate costs of living eligible to claim until 2022. |
|
|
Calculate final monthly subsistence payment on household level. |
|
Calculate share of net to gross wage. |
Basic monthly subsistence level on Bedarfsgemeinschaft level. |
|
Calculate basic monthly subsistence without dwelling since 2011. |
|
Calculate basic monthly subsistence without dwelling until 2010. |
|
Calculate actual wealth exemptions since 2023. |
|
Calculate actual exemptions until 2022. |
|
Calculate potential basic subsistence (after income deduction and wealth check). |
|
|
Check eligibility for unemployment benefit. |
Approximate last years income for unemployment benefit. |
|
|
Calculate individual unemployment benefit. |
|
Calculate the remaining amount of months a person can receive unemployment benefit this year. |
Employer's unemployment insurance contribution since April 2003. |
|
Employer's unemployment insurance contribution until March 2003. |
|
Employee's unemployment insurance contribution. |
|
Employee's unemployment insurance contribution. |
|
|
Combines birthyear and birth month to decimal number of birthdate with monthly precision, as required for pension benefit calculation |
|
Share of household's monthly rent attributed to the Bedarfsgemeinschaft. |
|
Average earning points as part of the "Grundbewertung". |
Calculate Vorsorgeaufwendungen from 2005 to 2009, new mode. |
|
|
Aggregate monthly gross wage to yearly income and deduct 'Werbungskostenpauschale'. |
Calculate monthly pension payment subject to taxation. |
|
|
Aggregate monthly gross pension income subject to taxation to yearly income. |
|
Aggregate gross income from self-employment to full year income. |
Individual deductable childcare cost for each individual child under 14. |
|
Calculate tax deduction allowance for single parents since 2015. |
|
Calculate tax deduction allowance for single parents until 2014. |
|
|
Calculate tax deduction allowance for elderly since 2005. |
|
Calculate tax deduction allowance for elderly until 2004. |
Individual child allowance. |
|
Taxes with child allowance on Steuernummer level. |
|
Taxes without child allowance on Steuernummer level. |
|
Kindergeld relevant for income tax. |
|
Kindergeld relevant for income tax. |
|
Sonderausgaben on Steuernummer level since 2012. |
|
Sonderausgaben on Steuernummer level until 2011. |
|
Income tax calculation on Steuernummer level allowing for claiming Kinderfreibetrag and receiving Kindergeld at the same time. |
|
Income tax calculation on Steuernummer level since 1997. |
|
|
Aggregate monthly gross rental income to yearly income. |
|
Calculate elterngeld above threshold which is considered as income for transfers such as wohngeld and grunds_im_alter. |
Calculate the share of net income which is reimbursed when receiving elterngeld. |
|
Calculate base parental leave benefit. |
|
Calculating the relevant wage for the calculation of elterngeld. |
|
Check for sibling bonus on parental leave benefit. |
|
Calculate the bonus for siblings. |
|
|
Check for sibling bonus on parental leave benefit. |
|
Calculate parental leave benefit (elterngeld). |
Calculate the bonus for multiples. |
|
|
Calculate the net wage. |
|
Check for sibling bonus on parental leave benefit. |
|
Check parental leave eligibility. |
|
Entgeltpunkte accumulated in Eastern Germany which Erwerbsminderungsrente is based on (public disability insurance) In the case of the public disability insurance, pensioners are credited with additional earning points. |
|
Update eastern earning points. |
|
Return earning points for the wages earned in the last year. |
|
Entgeltpunkte accumulated in Western Germany which Erwerbsminderungsrente is based on (public disability insurance) In the case of the public disability insurance, pensioners are credited with additional earning points. |
|
Update western earning points. |
|
Additional Entgeltpunkte accumulated through "Zurechnungszeit" for Erwerbsminderungsrente (public disability insurance) In the case of the public disability insurance, pensioners are credited with additional earning points. |
|
Calculate if adult. |
Calculate if all adults in the household are pensioners. |
|
|
Erwerbsminderungsrente (amount paid by public disability insurance if claimed) |
Zugangsfaktor for Erwerbsminderungsrente (public disability insurance) For each month that a pensioner retires before the age limit, a fraction of the pension is deducted. |
|
Reduction of parental leave benefits (means-test). |
|
Eligibility for parental leave benefit (Erziehungsgeld) on parental level. |
|
Income relevant for means testing for parental leave benefit (Erziehungsgeld). |
|
Parental leave benefit (Erziehungsgeld) on child level. |
|
|
Total parental leave benefits (Erziehungsgeld). |
Parental leave benefit (Erziehungsgeld) without means-test on child level. |
|
|
Sum up all tax-deductible allowances applicable at the individual level. |
|
Calculate total allowances on Steuernummer level. |
|
Create date of birth datetime variable. |
|
Check if individual earns less than marginal employment threshold. |
Employer's public health insurance contribution. |
|
Employer's public health insurance contribution. |
|
Employee's public health insurance contribution. |
|
Employee's public health insurance contribution. |
|
Calculate health insurance contributions for pension incomes. |
|
|
Contribution rates of employees for health insurance, just a basic split between employees and employers. |
|
Contribution rates of employers for health insurance. |
|
Contribution rates of employers for health insurance at the beginning of the year. |
|
Contribution rates of employers for health insurance. |
|
Contribution rates of employers for health insurance. |
|
Contribution rates of employees for health insurance. |
|
Contribution rates of employees for health insurance at the beginning of the year. |
|
Contribution rates of employees for health insurance. |
|
Contribution rates of employees for health insurance at the beginning of the year. |
Contribution rates of employees for health insurance. |
|
|
Contribution rates of employees for health insurance at the beginning of the year. |
Health insurance contributions for self-employed's income. |
|
Health insurance top-up rate since January 2015. |
|
Health insurance top-up rate until December 2014. |
|
Employer's long-term care insurance contribution. |
|
Employer's long-term care insurance contribution. |
|
Employee's long-term care insurance contribution since April 2003. |
|
Employee's long-term care insurance contribution until March 2003. |
|
Health insurance contribution from pension income from April until December 2004. |
|
Long-term care insurance contribution from pension income. |
|
Health insurance contribution from pension income since 2005. |
|
Care insurance contribution rate. |
|
Long-term care insurance contribution rate. |
|
Long-term care insurance contribution rate. |
|
Self-employed individuals' long-term care insurance contribution until 2004. |
|
Self-employed individuals' long-term care insurance contribution since 2005. |
|
|
Whether additional care insurance contribution for childless individuals applies. |
|
Adds up all times that are accounted for in "Anrechnungszeiten" relevant for "Wartezeit von 35 Jahren" i.e. for Altersrente für langjährig Versicherte (pension for long term insured). |
Adds up all times NOT included in Beitragszeiten, Berücksichtigungszeiten, Ersatzzeiten (a variant of Anrechnungszeiten) that are accounted for in "Wartezeit von 45 Jahren" i.e. for Altersrente für besonders langjährig Versicherte (pension for very long term insured). |
|
Early retirement age of pension for unemployed. |
|
Early retirement age of pension for unemployed. |
|
Early retirement age of pension for unemployed. |
|
Full retirement age for women. |
|
|
|
Calculate total individual public pension including Grundrentenzuschlag. |
|
|
Normal retirement age (NRA). |
Old-Age Pensions claim without Grundrentenzuschlag. |
|
Determining the eligibility for Altersrente für besonders langjährig Versicherte (pension for very long-term insured). |
|
Eligibility for Erwerbsminderungsrente (public disability insurance claim). |
|
|
Eligibility for Altersrente für Frauen (pension for women). |
|
Determining the eligibility for Altersrente für langjährig Versicherte (pension for long-term insured). |
Determining the eligibility for the Regelaltersrente. |
|
Eligibility for early retirement. |
|
Eligibility for early retirement. |
|
|
Whether Wartezeit von 15 Jahren Wartezeit has been completed. |
|
Whether Wartezeit von 35 Jahren Wartezeit has been completed. |
|
Whether Wartezeit von 45 Jahren Wartezeit has been completed. |
|
Whether Allgemeine Wartezeit has been completed. |
|
Zugangsfaktor (pension adjustment factor). |
Employer's public pension insurance contribution. |
|
Employer's public pension insurance contribution. |
|
Employee's public pension insurance contribution. |
|
Employee's public pension insurance contribution. |
|
|
Whether person has accumulated enough insured years to be eligible. |
Compute average number of Entgeltpunkte earned per month of Grundrentenbewertungszeiten. |
|
Calculate additional Entgeltpunkte for pensioner. |
|
Calculate income which is deducted from Grundrentenzuschlag. |
|
|
Calculate the maximum allowed number of average Entgeltpunkte (per month) after adding bonus of Entgeltpunkte for a given number of Grundrentenzeiten. |
|
Calculate Grundrentenzuschlag (additional monthly pensions payments resulting from Grundrente) |
Calculate additional monthly pensions payments resulting from Grundrente, without taking into account income crediting rules. |
|
Calculate individual income considered in the calculation of Grundsicherung im Alter. |
|
|
Calculate individual earnings considered in the calculation of Grundsicherung im Alter. |
Calculate individual public pension benefits which are considered in the calculation of Grundsicherung im Alter since 2021. |
|
|
Calculate individual public pension benefits which are considered in the calculation of Grundsicherung im Alter until 2020. |
|
Calculate Grundsicherung im Alter on household level. |
|
Calculate individual private pension benefits considered in the calculation of Grundsicherung im Alter. |
Calculate wealth not considered for Grundsicherung im Alter on household level. |
|
|
Share of household's heating expenses attributed to the Bedarfsgemeinschaft. |
|
Check if individual's income is in midi-job range. |
|
Given a foreign key, find the corresponding primary key, and return the target at the same index as the primary key. |
|
Check if person is the youngest child in the household or a twin, triplet, etc. |
|
Aggregate monthly gross capital income to yearly income. |
|
Capital income minus Sparerpauschbetrag. |
|
Calculate if child between 14 and 17 years old. |
|
Calculate if child between 14 and 24 years old. |
|
Calculate if child between 18 and 24 years old. |
|
Calculate if child between 6 and 13 years old. |
|
Child under the age of 11 and eligible for Kindergeld. |
|
Calculate if child under the age of 16. |
|
Calculate if underage person. |
|
Calculate if child under the age of 6. |
|
Calculate if child under the age of 7. |
|
Monthly actual child alimony payments to be received after deductions. |
|
Calculate Kinderbonus for an individual child. |
Calculate Child Allowance for Lohnsteuer-Soli. |
|
Kinderfreibetrag more favorable than Kindergeld. |
|
|
Determine kindergeld eligibility for an individual child depending on kids wage. |
|
Determine kindergeld eligibility for an individual child depending on working hours. |
Sum of Kindergeld for eligible children. |
|
Sum of Kindergeld for eligible children. |
|
Kindergeld that is used to cover the SGB II Regelbedarf of the child. |
|
Calculate parental gross income for calculation of child benefit. |
|
Calculate parental income subtracted from child benefit. |
|
Parental income (after deduction of taxes, social insurance contributions, and other deductions) for calculation of child benefit. |
|
Calculate maximum income to be eligible for additional child benefit (Kinderzuschlag). |
|
Calculate minimal claim of child benefit (kinderzuschlag). |
|
Calculate income relevant for calculation of child benefit since 2011. |
|
|
Calculate income relevant for calculation of child benefit until 2010. |
Aggregate relevant income and rental costs. |
|
Child benefit after children income for each eligible child is considered. |
|
Calculate costs of living eligible to claim. |
|
|
Aggregate child benefit on household level. |
Wealth exemptions for Kinderzuschlag since 2023. |
|
Wealth exemptions for Kinderzuschlag until 2022. |
|
Check if child benefit has priority. |
|
|
Calculate tax base for Lohnsteuer (withholding tax on earnings). |
|
Calls _lohnst_m with individual income |
|
Same as lohnst_m, but with an alternative income definition that takes child allowance into account. |
Total income subject to social insurance contributions for employers a and employees for midijob since October 2022. |
|
Income subject to social insurance contributions for midijob until September 2022. |
|
Midijob Faktor F between 2005 and September 2025. |
|
Midijob Faktor F until December 2004. |
|
Midijob Faktor F since October 2022. |
|
|
Select the income threshold depending on place of living. |
Obtains marginal job threshold since 10/2022. |
|
Select the income threshold depending on place of living. |
|
|
Assigns child allowance to parent 1. |
|
Assigns child allowance to parent 2. |
|
Check if parent that receives Unterhaltsvorschuss is a single parent. |
|
Calculate value of the piecewise function at x. |
|
A decorator to attach additional information to a policy function. |
Regular employment check since April 2003. |
|
Regular employment check until March 2003. |
|
|
Calculate the share of pensions subject to income taxation. |
|
Estimated amount of public pensions of last year excluding Grundrentenzuschlag. |
|
Rentenartfaktor for Erwerbsminderungsrente (public disability insurance) |
|
Select the rentenwert depending on place of living. |
|
Calculates the monthly Solidarity Surcharge on Lohnsteuer (withholding tax on earnings). |
Calculate the Solidarity Surcharge on Steuernummer level. |
|
Calculate the Solidarity Surcharge on Steuernummer level. |
|
Sonderausgaben for childcare on Steuernummer level. |
|
Sum of employer's social insurance contributions. |
|
|
Sum of employee's social insurance contributions. |
|
Sum of gross incomes with capital income. |
|
Sum of gross incomes without capital income. |
|
Calculate total individual pension as sum of private and public pension. |
|
Advance alimony payments (Unterhaltsvorschuss) on child level after deducting alimonies. |
|
Calculate relevant income for advance on alimony payment. |
For health care deductions, there are two ways to calculate the deuctions. |
|
For health care deductions, there are two ways to calculate the deductions: "Option a" and "Option b". |
|
For health care deductions, there are two ways to calculate the deductions: "Option a" and "Option b". |
|
Determine contributions to retirement savings deductible from taxable income. |
|
Determine contributions to retirement savings deductible from taxable income. |
|
Calculate Vorsorgeaufwendungen since 2020. |
|
Calculate Vorsorgeaufwendungen until 2004. |
|
Calculate Vorsorgeaufwendungen from 2005 to 2019. |
|
|
Calculate Vorsorgepauschale for Lohnsteuer valid since 2010. |
|
Share of household's dwelling size attributed to the Bedarfsgemeinschaft. |
|
Calculate housing benefit subtractions on the individual level. |
|
Check if children are working. |
|
Calculate housing benefit subtracting for one individual since 2016. |
|
Calculate housing benefit subtractions for one individual until 2015. |
|
Calculate final income relevant for calculation of housing benefit on household level. |
Sum gross incomes relevant for housing benefit calculation on individual level and deducting individual housing benefit subtractions. |
|
Sum gross incomes relevant for housing benefit calculation on individual level and deducting individual housing benefit subtractions. |
|
Check if housing and child benefit have priority. |
|
|
Calculate final housing benefit on household level. |
|
Maximum rent considered in housing benefit since 2009. |
|
Maximal rent subject housing benefit calculation on household level until 2008. |
|
Calculate minimal monthly rent subject housing benefit calculation on household level. |
Set preliminary housing benefit to zero if it exceeds the wealth exemption. |
|
Calcualte preliminary housing benefit. |
|
|
Check if housing benefit has priority. |
|
Calculate taxable income on Steuernummer level. |
Calculate taxable income on Steuernummer level. |
Import all functions to a central place in order to automatically create the overview in the documentation.
- abgelt_st_y_sn(zu_verst_kapitaleink_y_sn: float, abgelt_st_params: dict) float [source]#
Calculate abgeltungssteuer on Steuernummer level.
- Parameters:
zu_verst_kapitaleink_y_sn – See
zu_verst_kapitaleink_y_sn()
.abgelt_st_params – See params documentation abgelt_st_params.
- age_of_retirement(jahr_renteneintr: int, monat_renteneintr: int, geburtsjahr: int, geburtsmonat: int, rentner: bool) float [source]#
Age at retirement in monthly precision.
Calculates the age of person’s retirement in monthly precision. As retirement is only possible at first day of month and as persons eligible for pension at first of month after reaching the age threshold (§ 99 SGB VI) persons who retire in same month will be considered a month too young: Substraction of 1/12.
- Parameters:
geburtsjahr – See basic input variable geburtsjahr.
geburtsmonat – See basic input variable geburtsmonat.
jahr_renteneintr – See basic input variable jahr_renteneintr.
monat_renteneintr – See basic input variable monat_renteneintr.
rentner – See basic input variable rentner.
- Returns:
Age at retirement.
- alter_monate(geburtsdatum: numpy.datetime64, elterngeld_params: dict) float [source]#
Calculate age of youngest child in months.
- Parameters:
hh_id – See basic input variable hh_id.
geburtsdatum – See
geburtsdatum()
.elterngeld_params – See params documentation elterngeld_params.
- anteil_entgeltp_ost(entgeltp_west: float, entgeltp_ost: float) float [source]#
Proportion of Entgeltpunkte accumulated in East Germany
- arbeitsl_geld_2_bruttoeink_m(bruttolohn_m: float, sonstig_eink_m: float, eink_selbst_m: float, eink_vermietung_m: float, kapitaleink_brutto_m: float, sum_ges_rente_priv_rente_m: float, arbeitsl_geld_m: float, elterngeld_m: float) float [source]#
Sum up the gross income for calculation of basic subsistence.
Note: Since 2023, Arbeitslosengeld 2 is referred to as Bürgergeld.
- Parameters:
bruttolohn_m – See basic input variable hh_id.
sonstig_eink_m – See basic input variable sonstig_eink_m.
eink_selbst_m – See basic input variable eink_selbst_m.
eink_vermietung_m – See basic input variable eink_vermietung_m.
kapitaleink_brutto_m – See basic input variable kapitaleink_brutto_m.
sum_ges_rente_priv_rente_m – See basic input variable sum_ges_rente_priv_rente_m.
arbeitsl_geld_m – See
arbeitsl_geld_m()
.elterngeld_m – See
elterngeld_m()
.
- Returns:
Income by unemployment insurance before tax.
- arbeitsl_geld_2_eink_anr_frei_m(bruttolohn_m: float, eink_selbst_m: float, anz_kinder_bis_17_bg: int, _eink_st_kinderfreib_anz_ansprüche: int, arbeitsl_geld_2_params: dict) float [source]#
Calculate share of income, which remains to the individual since 10/2005.
Note: Since 2023, Arbeitslosengeld 2 is referred to as Bürgergeld. Sozialgesetzbuch (SGB) Zweites Buch (II) - Bürgergeld, Grundsicherung für Arbeitsuchende. SGB II §11b Abs 3 https://www.gesetze-im-internet.de/sgb_2/__11b.html
- Parameters:
bruttolohn_m – See basic input variable bruttolohn_m.
eink_selbst_m – See basic input variable eink_selbst_m.
anz_kinder_bis_17_bg – See
anz_kinder_bis_17_bg()
._eink_st_kinderfreib_anz_ansprüche – See
_eink_st_kinderfreib_anz_ansprüche()
.arbeitsl_geld_2_params – See params documentation arbeitsl_geld_2_params.
- arbeitsl_geld_2_eink_anr_frei_m_basierend_auf_nettoquote(bruttolohn_m: float, arbeitsl_geld_2_nettoquote: float, arbeitsl_geld_2_params: dict) float [source]#
Share of income which remains to the individual.
- Parameters:
bruttolohn_m – See basic input variable bruttolohn_m.
arbeitsl_geld_2_nettoquote – See
arbeitsl_geld_2_nettoquote()
.arbeitsl_geld_2_params – See params documentation arbeitsl_geld_2_params.
- arbeitsl_geld_2_eink_m(_arbeitsl_geld_2_eink_ohne_kindergeldübertrag_m: float, kindergeldübertrag_m: float) float [source]#
SGB II income.
Relevant income according to SGB II. Includes child benefit transfer (Kindergeldübertrag).
- Parameters:
_arbeitsl_geld_2_eink_ohne_kindergeldübertrag_m – See
_arbeitsl_geld_2_eink_ohne_kindergeldübertrag_m()
.kindergeldübertrag_m – See
kindergeldübertrag_m()
.
- Returns:
Income according to SGB II.
- arbeitsl_geld_2_kindersatz_m_bg_ab_2011(anz_kinder_bis_5_bg: int, anz_kinder_ab_6_bis_13_bg: int, anz_kinder_ab_14_bis_17_bg: int, anz_kinder_ab_18_bis_24_bg: int, arbeitsl_geld_2_params: dict) float [source]#
Calculate basic monthly subsistence for children since 2011. Here the sum in euro is directly in the law.
Note: Since 2023, Arbeitslosengeld 2 is referred to as Bürgergeld.
- Parameters:
anz_kinder_bis_5_bg – See
anz_kinder_bis_5_bg()
.anz_kinder_ab_6_bis_13_bg – See
anz_kinder_ab_6_bis_13_bg()
.anz_kinder_ab_14_bis_17_bg – See
anz_kinder_ab_14_bis_17_bg()
.anz_kinder_ab_18_bis_24_bg – See
anz_kinder_ab_18_bis_24_bg()
.arbeitsl_geld_2_params – See params documentation arbeitsl_geld_2_params.
- Returns:
float with the support of children since year 2011
- arbeitsl_geld_2_kindersatz_m_bg_bis_2010(anz_kinder_bis_5_bg: int, anz_kinder_ab_6_bis_13_bg: int, anz_kinder_ab_14_bis_24_bg: int, arbeitsl_geld_2_params: dict) float [source]#
Calculate basic monthly subsistence for children until 2010. Since 2010 children get additional shares instead of lump sum payments.
- Parameters:
anz_kinder_bis_5_bg – See
anz_kinder_bis_5_bg()
.anz_kinder_ab_6_bis_13_bg – See
anz_kinder_ab_6_bis_13_bg()
.anz_kinder_ab_14_bis_24_bg – See
anz_kinder_ab_14_bis_24_bg()
.arbeitsl_geld_2_params – See params documentation arbeitsl_geld_2_params.
- Returns:
float with the support of children until year 2010.
- arbeitsl_geld_2_kost_unterk_m_bg_ab_2023(bruttokaltmiete_m_bg: float, heizkosten_m_bg: float, bürgerg_bezug_vorj: bool, _arbeitsl_geld_2_berechtigte_wohnfläche_bg: float, _arbeitsl_geld_2_warmmiete_pro_qm_m_bg: float) float [source]#
Calculate costs of living eligible to claim since 2023. During the first year, the waiting period (Karenzzeit), only the appropriateness of the heating costs is tested, while the living costs are fully considered in Bürgergeld.
Note: Since 2023, Arbeitslosengeld 2 is referred to as Bürgergeld.
- Parameters:
bruttokaltmiete_m_bg – See
bruttokaltmiete_m_bg()
.heizkosten_m_bg – See
heizkosten_m_bg()
.bürgerg_bezug_vorj – See basic input variable bürgerg_bezug_vorj.
_arbeitsl_geld_2_berechtigte_wohnfläche_bg – See
_arbeitsl_geld_2_berechtigte_wohnfläche_bg()
._arbeitsl_geld_2_warmmiete_pro_qm_m_bg – See
_arbeitsl_geld_2_warmmiete_pro_qm_m_bg()
.
- Returns:
float with total monthly cost of rent.
- arbeitsl_geld_2_kost_unterk_m_bg_bis_2022(_arbeitsl_geld_2_berechtigte_wohnfläche_bg: float, _arbeitsl_geld_2_warmmiete_pro_qm_m_bg: float) float [source]#
Calculate costs of living eligible to claim until 2022.
Note: Since 2023, Arbeitslosengeld 2 is referred to as Bürgergeld. :param _arbeitsl_geld_2_berechtigte_wohnfläche_bg: See
_arbeitsl_geld_2_berechtigte_wohnfläche_bg()
. :param _arbeitsl_geld_2_warmmiete_pro_qm_m_bg: See_arbeitsl_geld_2_warmmiete_pro_qm_m_bg()
.- Returns:
float with total monthly cost of rent.
- arbeitsl_geld_2_m_bg(arbeitsl_geld_2_vor_vorrang_m_bg: float, wohngeld_vorrang_hh: bool, kinderzuschl_vorrang_bg: bool, wohngeld_kinderzuschl_vorrang_hh: bool, erwachsene_alle_rentner_hh: bool) float [source]#
Calculate final monthly subsistence payment on household level.
Note: Since 2023, Arbeitslosengeld 2 is referred to as Bürgergeld.
- Parameters:
arbeitsl_geld_2_vor_vorrang_m_bg – See
arbeitsl_geld_2_vor_vorrang_m_bg()
.wohngeld_vorrang_hh – See
wohngeld_vorrang_hh()
.kinderzuschl_vorrang_bg – See
kinderzuschl_vorrang_bg()
.wohngeld_kinderzuschl_vorrang_hh – See
wohngeld_kinderzuschl_vorrang_hh()
.erwachsene_alle_rentner_hh – See
erwachsene_alle_rentner_hh()
.
- Returns:
float with the income by unemployment insurance on household level.
- arbeitsl_geld_2_nettoquote(bruttolohn_m: float, eink_st_y_sn: float, soli_st_y_sn: float, anz_personen_sn: int, sozialv_beitr_m: float, arbeitsl_geld_2_params: dict) float [source]#
Calculate share of net to gross wage.
Quotienten von bereinigtem Nettoeinkommen und Bruttoeinkommen. § 3 Abs. 2 Alg II-V.
- Parameters:
bruttolohn_m – See basic input variable bruttolohn_m.
eink_st_y_sn – See
eink_st_y_sn()
.soli_st_y_sn – See
soli_st_y_sn()
.anz_personen_sn – See
anz_personen_sn()
.sozialv_beitr_m – See
sozialv_beitr_m()
.arbeitsl_geld_2_params – See params documentation arbeitsl_geld_2_params.
- arbeitsl_geld_2_regelbedarf_m_bg(arbeitsl_geld_2_regelsatz_m_bg: float, arbeitsl_geld_2_kost_unterk_m_bg: float) float [source]#
Basic monthly subsistence level on Bedarfsgemeinschaft level.
This includes cost of dwelling.
Note: Since 2023, Arbeitslosengeld 2 is referred to as Bürgergeld.:
- Parameters:
arbeitsl_geld_2_regelsatz_m_bg – See
arbeitsl_geld_2_regelsatz_m_bg()
.arbeitsl_geld_2_kost_unterk_m_bg – See
arbeitsl_geld_2_kost_unterk_m_bg()
.
- Returns:
float checks the minimum monthly needs of an household.
- arbeitsl_geld_2_regelsatz_m_bg_ab_2011(anz_erwachsene_bg: int, _arbeitsl_geld_2_alleinerz_mehrbedarf_m_bg: float, arbeitsl_geld_2_kindersatz_m_bg: float, arbeitsl_geld_2_params: dict) float [source]#
Calculate basic monthly subsistence without dwelling since 2011.
Note: Since 2023, Arbeitslosengeld 2 is referred to as Bürgergeld.
- Parameters:
anz_erwachsene_bg – See
anz_erwachsene_bg()
._arbeitsl_geld_2_alleinerz_mehrbedarf_m_bg – See
_arbeitsl_geld_2_alleinerz_mehrbedarf_m_bg()
.arbeitsl_geld_2_kindersatz_m_bg – See
arbeitsl_geld_2_kindersatz_m_bg()
.arbeitsl_geld_2_params – See params documentation arbeitsl_geld_2_params.
- Returns:
float with the minimum needs of an household in Euro.
- arbeitsl_geld_2_regelsatz_m_bg_bis_2010(anz_erwachsene_bg: int, _arbeitsl_geld_2_alleinerz_mehrbedarf_m_bg: float, arbeitsl_geld_2_kindersatz_m_bg: float, arbeitsl_geld_2_params: dict) float [source]#
Calculate basic monthly subsistence without dwelling until 2010.
- Parameters:
anz_erwachsene_bg – See
anz_erwachsene_bg()
._arbeitsl_geld_2_alleinerz_mehrbedarf_m_bg – See
_arbeitsl_geld_2_alleinerz_mehrbedarf_m_bg()
.arbeitsl_geld_2_kindersatz_m_bg – See
arbeitsl_geld_2_kindersatz_m_bg()
.arbeitsl_geld_2_params – See params documentation arbeitsl_geld_2_params.
- Returns:
float with the sum in Euro.
- arbeitsl_geld_2_vermög_freib_bg_ab_2023(arbeitsl_geld_2_params: dict, anz_personen_bg: int, _arbeitsl_geld_2_vermög_freib_karenzz_bg: float, bürgerg_bezug_vorj: bool) float [source]#
Calculate actual wealth exemptions since 2023.
During the first year (Karenzzeit), the wealth exemption is substantially larger.
Note: Since 2023, Arbeitslosengeld 2 is referred to as Bürgergeld.
- Parameters:
arbeitsl_geld_2_params – See params documentation arbeitsl_geld_2_params.
anz_personen_bg – See
anz_personen_bg()
._arbeitsl_geld_2_vermög_freib_karenzz_bg – See
_arbeitsl_geld_2_vermög_freib_karenzz_bg()
.bürgerg_bezug_vorj – See basic input variable bürgerg_bezug_vorj.
- arbeitsl_geld_2_vermög_freib_bg_bis_2022(_arbeitsl_geld_2_grundfreib_vermög_bg: float, anz_kinder_bis_17_bg: int, anz_personen_bg: int, arbeitsl_geld_2_params: dict) float [source]#
Calculate actual exemptions until 2022.
Note: Since 2023, Arbeitslosengeld 2 is referred to as Bürgergeld.
- Parameters:
_arbeitsl_geld_2_grundfreib_vermög_bg – See
_arbeitsl_geld_2_grundfreib_vermög_bg()
.anz_kinder_bis_17_bg – See
anz_kinder_bis_17_bg()
.anz_personen_bg – See
anz_personen_bg()
.arbeitsl_geld_2_params – See params documentation arbeitsl_geld_2_params.
- arbeitsl_geld_2_vor_vorrang_m_bg(arbeitsl_geld_2_regelbedarf_m_bg: float, arbeitsl_geld_2_eink_m_bg: float, vermögen_bedürft_bg: float, arbeitsl_geld_2_vermög_freib_bg: float) float [source]#
Calculate potential basic subsistence (after income deduction and wealth check).
Note: Since 2023, Arbeitslosengeld 2 is referred to as Bürgergeld.
- Parameters:
arbeitsl_geld_2_regelbedarf_m_bg – See
arbeitsl_geld_2_regelbedarf_m_bg()
.arbeitsl_geld_2_eink_m_bg – See
arbeitsl_geld_2_eink_m_bg()
.arbeitsl_geld_2_vermög_freib_bg – See
arbeitsl_geld_2_vermög_freib_bg()
.vermögen_bedürft_bg – See basic input variable vermögen_bedürft_bg.
- arbeitsl_geld_berechtigt(alter: int, arbeitssuchend: bool, arbeitsl_geld_restl_anspruchsd: int, arbeitsstunden_w: float, arbeitsl_geld_params: dict, geburtsjahr: int, ges_rente_params: dict) bool [source]#
Check eligibility for unemployment benefit.
- Parameters:
alter – See basic input variable alter.
arbeitssuchend – See basic input variable arbeitssuchend.
arbeitsl_geld_restl_anspruchsd – See
arbeitsl_geld_restl_anspruchsd()
.arbeitsstunden_w – See basic input variable arbeitsstunden_w.
arbeitsl_geld_params – See params documentation arbeitsl_geld_params.
geburtsjahr – See basic input variable geburtsjahr.
ges_rente_params – See params documentation ges_rente_params.
- arbeitsl_geld_eink_vorj_proxy_m(_ges_rentenv_beitr_bemess_grenze_m: float, bruttolohn_vorj_m: float, arbeitsl_geld_params: dict, eink_st_params: dict, eink_st_abzuege_params: dict, soli_st_params: dict) float [source]#
Approximate last years income for unemployment benefit.
- Parameters:
_ges_rentenv_beitr_bemess_grenze_m – See
_ges_rentenv_beitr_bemess_grenze_m()
.bruttolohn_vorj_m – See basic input variable bruttolohn_vorj_m.
arbeitsl_geld_params – See params documentation arbeitsl_geld_params.
eink_st_params – See params documentation eink_st_params.
eink_st_abzuege_params – See params documentation eink_st_abzuege_params.
soli_st_params – See params documentation soli_st_params.
- arbeitsl_geld_m(_eink_st_kinderfreib_anz_ansprüche: int, arbeitsl_geld_berechtigt: bool, arbeitsl_geld_eink_vorj_proxy_m: float, arbeitsl_geld_params: dict) float [source]#
Calculate individual unemployment benefit.
- Parameters:
_eink_st_kinderfreib_anz_ansprüche – See
_eink_st_kinderfreib_anz_ansprüche()
.arbeitsl_geld_berechtigt – See
arbeitsl_geld_berechtigt()
.arbeitsl_geld_eink_vorj_proxy_m – See
arbeitsl_geld_eink_vorj_proxy_m()
.arbeitsl_geld_params – See params documentation arbeitsl_geld_params.
- arbeitsl_geld_restl_anspruchsd(alter: int, sozialv_pflicht_5j: float, anwartschaftszeit: bool, m_durchg_alg1_bezug: float, arbeitsl_geld_params: dict) int [source]#
Calculate the remaining amount of months a person can receive unemployment benefit this year.
- Parameters:
alter – See basic input variable alter.
sozialv_pflicht_5j – See basic input variable sozialv_pflicht_5j.
anwartschaftszeit – See basic input variable anwartschaftszeit.
m_durchg_alg1_bezug – See basic input variable m_durchg_alg1_bezug.
arbeitsl_geld_params – See params documentation arbeitsl_geld_params.
- arbeitsl_v_beitr_arbeitg_m_mit_midijob(geringfügig_beschäftigt: bool, in_gleitzone: bool, _arbeitsl_v_beitr_midijob_arbeitg_m: float, _ges_rentenv_beitr_bruttolohn_m: float, sozialv_beitr_params: dict) float [source]#
Employer’s unemployment insurance contribution since April 2003.
- Parameters:
geringfügig_beschäftigt – See
geringfügig_beschäftigt()
.in_gleitzone – See
in_gleitzone()
._arbeitsl_v_beitr_midijob_arbeitg_m – See
_arbeitsl_v_beitr_midijob_arbeitg_m()
._ges_rentenv_beitr_bruttolohn_m – See
_ges_rentenv_beitr_bruttolohn_m()
.sozialv_beitr_params – See params documentation sozialv_beitr_params.
- arbeitsl_v_beitr_arbeitg_m_vor_midijob(geringfügig_beschäftigt: bool, _ges_rentenv_beitr_bruttolohn_m: float, sozialv_beitr_params: dict) float [source]#
Employer’s unemployment insurance contribution until March 2003.
- Parameters:
geringfügig_beschäftigt – See
geringfügig_beschäftigt()
._ges_rentenv_beitr_bruttolohn_m – See
_ges_rentenv_beitr_bruttolohn_m()
.sozialv_beitr_params – See params documentation sozialv_beitr_params.
- arbeitsl_v_beitr_m_mit_midijob(geringfügig_beschäftigt: bool, in_gleitzone: bool, _arbeitsl_v_beitr_midijob_arbeitn_m: float, _ges_rentenv_beitr_bruttolohn_m: float, sozialv_beitr_params: dict) float [source]#
Employee’s unemployment insurance contribution.
- Parameters:
geringfügig_beschäftigt – See
geringfügig_beschäftigt()
.in_gleitzone – See
in_gleitzone()
._arbeitsl_v_beitr_midijob_arbeitn_m – See
_arbeitsl_v_beitr_midijob_arbeitn_m()
._ges_rentenv_beitr_bruttolohn_m – See
_ges_rentenv_beitr_bruttolohn_m()
.sozialv_beitr_params – See params documentation sozialv_beitr_params.
- arbeitsl_v_beitr_m_vor_midijob(geringfügig_beschäftigt: bool, _ges_rentenv_beitr_bruttolohn_m: float, sozialv_beitr_params: dict) float [source]#
Employee’s unemployment insurance contribution.
- Parameters:
geringfügig_beschäftigt – See
geringfügig_beschäftigt()
._ges_rentenv_beitr_bruttolohn_m – See
_ges_rentenv_beitr_bruttolohn_m()
.sozialv_beitr_params – See params documentation sozialv_beitr_params.
- birthdate_decimal(geburtsjahr: int, geburtsmonat: int) float [source]#
Combines birthyear and birth month to decimal number of birthdate with monthly precision, as required for pension benefit calculation
- Parameters:
geburtsjahr – See basic input variable geburtsjahr.
geburtsmonat – See basic input variable geburtsmonat.
- Returns:
Birthdate with monthly precision as float.
- bruttokaltmiete_m_bg(bruttokaltmiete_m_hh: float, _anteil_personen_in_haushalt_bg: float) float [source]#
Share of household’s monthly rent attributed to the Bedarfsgemeinschaft.
Reference: BSG Urteil v. 09.03.2016 - B 14 KG 1/15 R. BSG Urteil vom 15.04.2008 - B 14/7b AS 58/06 R.
- Parameters:
bruttokaltmiete_m_hh – See basic input variable bruttokaltmiete_m_hh.
_anteil_personen_in_haushalt_bg – See
_anteil_personen_in_haushalt_bg()
.
- durchschn_entgeltp(entgeltp_west: float, entgeltp_ost: float, age_of_retirement: float, erwerbsm_rente_params: dict) float [source]#
Average earning points as part of the “Grundbewertung”. Earnings points are divided by “belegungsfähige Gesamtzeitraum” which is the period from the age of 17 until the start of the pension.
Legal reference: SGB VI § 72: Grundbewertung
- Parameters:
entgeltp_west – See basic input variable :ref:`entgeltp_west <entgeltp_west>
entgeltp_ost – See basic input variable :ref:`entgeltp_ost <entgeltp_ost>
age_of_retirement – See
age_of_retirement()
.erwerbsm_rente_params – See params documentation :ref:`erwerbsm_rente_params <erwerbsm_rente_params>.
- Returns:
average entgeltp
- einführung_vorsorgeaufw_y_sn_ab_2005_bis_2009(vorsorgeaufw_alter_y_sn: float, ges_krankenv_beitr_m_sn: float, arbeitsl_v_beitr_m_sn: float, ges_pflegev_beitr_m_sn: float, anz_personen_sn: int, eink_st_abzuege_params: dict) float [source]#
Calculate Vorsorgeaufwendungen from 2005 to 2009, new mode.
- Parameters:
vorsorgeaufw_alter_y_sn – See
vorsorgeaufw_alter_y_sn()
.ges_krankenv_beitr_m_sn – See
ges_krankenv_beitr_m_sn()
.arbeitsl_v_beitr_m_sn – See
arbeitsl_v_beitr_m_sn()
.ges_pflegev_beitr_m_sn – See
ges_pflegev_beitr_m_sn()
.anz_personen_sn – See
anz_personen_sn()
.eink_st_abzuege_params – See params documentation eink_st_abzuege_params.
- eink_abhängig_beschäftigt_y(bruttolohn_m: float, eink_st_abzuege_params: dict) float [source]#
Aggregate monthly gross wage to yearly income and deduct ‘Werbungskostenpauschale’.
The wage is reducted by a lump sum payment for ‘Werbungskosten’
- Parameters:
bruttolohn_m – See basic input variable bruttolohn_m.
eink_st_abzuege_params – See params documentation eink_st_abzuege_params.
- eink_rente_zu_verst_m(sum_ges_rente_priv_rente_m: float, rente_ertragsanteil: float) float [source]#
Calculate monthly pension payment subject to taxation.
- Parameters:
sum_ges_rente_priv_rente_m – See basic input variable sum_ges_rente_priv_rente_m.
rente_ertragsanteil – See
rente_ertragsanteil()
.
- eink_rente_zu_verst_y(eink_rente_zu_verst_m: float) float [source]#
Aggregate monthly gross pension income subject to taxation to yearly income.
- Parameters:
eink_rente_zu_verst_m – See
eink_rente_zu_verst_m()
.
- eink_selbst_y(eink_selbst_m: float) float [source]#
Aggregate gross income from self-employment to full year income.
- Parameters:
eink_selbst_m – See basic input variable eink_selbst_m.
- eink_st_abz_betreuungskost_y(eink_st_abzuege_params: dict, betreuungskost_elternteil_y: float) float [source]#
Individual deductable childcare cost for each individual child under 14.
- Parameters:
betreuungskost_elternteil_y – See
betreuungskost_elternteil_y()
.eink_st_abzuege_params – See params documentation eink_st_abzuege_params.
- eink_st_alleinerz_freib_y_sn_nach_kinderzahl(alleinerz_sn: bool, kindergeld_anz_ansprüche_sn: int, eink_st_abzuege_params: dict) float [source]#
Calculate tax deduction allowance for single parents since 2015.
Since 2015, it increases with number of children. Used to be called ‘Haushaltsfreibetrag’
- Parameters:
alleinerz_sn – See
alleinerz_sn()
.kindergeld_anz_ansprüche_sn – See
kindergeld_anz_ansprüche_sn()
.eink_st_abzuege_params – See params documentation eink_st_abzuege_params.
- eink_st_alleinerz_freib_y_sn_pauschal(alleinerz_sn: bool, eink_st_abzuege_params: dict) float [source]#
Calculate tax deduction allowance for single parents until 2014.
This used to be called ‘Haushaltsfreibetrag’.
- Parameters:
alleinerz_sn – See
alleinerz_sn()
.eink_st_abzuege_params – See params documentation eink_st_abzuege_params.
- eink_st_altersfreib_y_ab_2005(bruttolohn_m: float, geringfügig_beschäftigt: bool, alter: int, geburtsjahr: int, kapitaleink_brutto_m: float, eink_selbst_m: float, eink_vermietung_m: float, eink_st_abzuege_params: dict) float [source]#
Calculate tax deduction allowance for elderly since 2005.
- Parameters:
bruttolohn_m – See basic input variable bruttolohn_m.
alter – See basic input variable alter.
geburtsjahr – See basic input variable geburtsjahr.
kapitaleink_brutto_m – See basic input variable kapitaleink_brutto_m.
eink_selbst_m – See
eink_selbst_m()
.eink_vermietung_m – See basic input variable eink_vermietung_m.
eink_st_abzuege_params – See params documentation eink_st_abzuege_params.
geringfügig_beschäftigt – See
geringfügig_beschäftigt()
.
- eink_st_altersfreib_y_bis_2004(bruttolohn_m: float, alter: int, kapitaleink_brutto_m: float, eink_selbst_m: float, eink_vermietung_m: float, eink_st_abzuege_params: dict) float [source]#
Calculate tax deduction allowance for elderly until 2004.
- Parameters:
bruttolohn_m – See basic input variable bruttolohn_m.
alter – See basic input variable alter.
kapitaleink_brutto_m – See basic input variable kapitaleink_brutto_m.
eink_selbst_m – See
eink_selbst_m()
.eink_vermietung_m – See basic input variable eink_vermietung_m.
eink_st_abzuege_params – See params documentation eink_st_abzuege_params.
- eink_st_kinderfreib_y(_eink_st_kinderfreib_anz_ansprüche: int, eink_st_abzuege_params: dict) float [source]#
Individual child allowance.
- Parameters:
_eink_st_kinderfreib_anz_ansprüche – See
_eink_st_kinderfreib_anz_ansprüche()
.eink_st_abzuege_params – See params documentation eink_st_abzuege_params.
- eink_st_mit_kinderfreib_y_sn_ab_2002(_zu_verst_eink_mit_kinderfreib_y_sn: float, anz_personen_sn: int, eink_st_params: dict) float [source]#
Taxes with child allowance on Steuernummer level. Also referred to as “tarifliche ESt I”.
- Parameters:
_zu_verst_eink_mit_kinderfreib_y_sn – See
_zu_verst_eink_mit_kinderfreib_y_sn()
.anz_personen_sn – See
anz_personen_sn()
.eink_st_params – See params documentation eink_st_params.
- eink_st_ohne_kinderfreib_y_sn(_zu_verst_eink_ohne_kinderfreib_y_sn: float, anz_personen_sn: int, eink_st_params: dict) float [source]#
Taxes without child allowance on Steuernummer level. Also referred to as “tarifliche ESt II”.
- Parameters:
_zu_verst_eink_ohne_kinderfreib_y_sn – See
_zu_verst_eink_ohne_kinderfreib_y_sn()
.anz_personen_sn – See
anz_personen_sn()
.eink_st_params – See params documentation eink_st_params.
- eink_st_rel_kindergeld_mit_staffelung_m(eink_st_rel_kindergeld_anz_ansprüche_1: int, eink_st_rel_kindergeld_anz_ansprüche_2: int, kindergeld_params: dict) float [source]#
Kindergeld relevant for income tax. For each parent, half of the actual Kindergeld claim is considered.
Source: § 31 Satz 4 EStG: “Bei nicht zusammenveranlagten Eltern wird der Kindergeldanspruch im Umfang des Kinderfreibetrags angesetzt.”
- Parameters:
eink_st_rel_kindergeld_anz_ansprüche_1 – See
eink_st_rel_kindergeld_anz_ansprüche_1()
.eink_st_rel_kindergeld_anz_ansprüche_2 – See
eink_st_rel_kindergeld_anz_ansprüche_2()
.kindergeld_params – See params documentation kindergeld_params.
- eink_st_rel_kindergeld_ohne_staffelung_m(eink_st_rel_kindergeld_anz_ansprüche_1: int, eink_st_rel_kindergeld_anz_ansprüche_2: int, kindergeld_params: dict) float [source]#
Kindergeld relevant for income tax. For each parent, half of the actual Kindergeld claim is considered.
Source: § 31 Satz 4 EStG: “Bei nicht zusammenveranlagten Eltern wird der Kindergeldanspruch im Umfang des Kinderfreibetrags angesetzt.”
- Parameters:
eink_st_rel_kindergeld_anz_ansprüche_1 – See
eink_st_rel_kindergeld_anz_ansprüche_1()
.eink_st_rel_kindergeld_anz_ansprüche_2 – See
eink_st_rel_kindergeld_anz_ansprüche_2()
.kindergeld_params – See params documentation kindergeld_params.
- eink_st_sonderausgaben_y_sn_mit_betreuung(eink_st_abzuege_params: dict, sonderausgaben_betreuung_y_sn: float, anz_personen_sn: int) float [source]#
Sonderausgaben on Steuernummer level since 2012.
We follow 10 Abs.1 Nr. 5 EStG. You can find details here https://www.buzer.de/s1.htm?a=10&g=estg.
- Parameters:
sonderausgaben_betreuung_y_sn – See
sonderausgaben_betreuung_y_sn()
.eink_st_abzuege_params – See params documentation eink_st_abzuege_params.
anz_personen_sn – See
anz_personen_sn()
.
- eink_st_sonderausgaben_y_sn_nur_pauschale(eink_st_abzuege_params: dict, anz_personen_sn: int) float [source]#
Sonderausgaben on Steuernummer level until 2011.
Only a lump sum payment is implemented.
- Parameters:
eink_st_abzuege_params – See params documentation eink_st_abzuege_params.
anz_personen_sn – See func anz_personen_sn <anz_personen_sn>.
- eink_st_y_sn_kindergeld_kinderfreib_parallel(eink_st_mit_kinderfreib_y_sn: float) float [source]#
Income tax calculation on Steuernummer level allowing for claiming Kinderfreibetrag and receiving Kindergeld at the same time.
- Parameters:
eink_st_mit_kinderfreib_y_sn – See
eink_st_mit_kinderfreib_y_sn()
.
- eink_st_y_sn_kindergeld_oder_kinderfreib(eink_st_ohne_kinderfreib_y_sn: float, eink_st_mit_kinderfreib_y_sn: float, kinderfreib_günstiger_sn: bool, eink_st_rel_kindergeld_y_sn: float) float [source]#
Income tax calculation on Steuernummer level since 1997.
- Parameters:
eink_st_ohne_kinderfreib_y_sn – See
eink_st_ohne_kinderfreib_y_sn()
.eink_st_mit_kinderfreib_y_sn – See
eink_st_mit_kinderfreib_y_sn()
.kinderfreib_günstiger_sn – See
kinderfreib_günstiger_sn()
.eink_st_rel_kindergeld_y_sn – See
eink_st_rel_kindergeld_y_sn()
.
- eink_vermietung_y(eink_vermietung_m: float) float [source]#
Aggregate monthly gross rental income to yearly income.
- Parameters:
eink_vermietung_m – See basic input variable eink_vermietung_m.
- elterngeld_anr_m(elterngeld_m: float, elterngeld_params: dict, anz_mehrlinge_jüngstes_kind_hh: int) float [source]#
Calculate elterngeld above threshold which is considered as income for transfers such as wohngeld and grunds_im_alter. For arbeitsl_geld_2 as well as kinderzuschl the whole amount of elterngeld is considered as income, except for the case in which the parents still worked right before they had children. See: https://www.kindergeld.org/elterngeld-einkommen/
- Parameters:
elterngeld_m – See
elterngeld_m()
.elterngeld_params – See params documentation elterngeld_params.
anz_mehrlinge_jüngstes_kind_hh – See
anz_mehrlinge_jüngstes_kind_hh()
.
- elterngeld_anteil_eink_erlass(elterngeld_eink_relev_m: float, elterngeld_params: dict) float [source]#
Calculate the share of net income which is reimbursed when receiving elterngeld.
According to § 2 (2) BEEG the percentage increases below the first step and decreases above the second step until prozent_minimum.
# ToDo: Split this function up in a function before and after 2011. Before 2011 the # ToDo: replacement rate was not lowered for high incomes.
- Parameters:
elterngeld_eink_relev_m – See
elterngeld_eink_relev_m()
.elterngeld_params – See params documentation elterngeld_params.
- elterngeld_eink_erlass_m(elterngeld_eink_relev_m: float, elterngeld_anteil_eink_erlass: float) float [source]#
Calculate base parental leave benefit.
- Parameters:
elterngeld_eink_relev_m – See
elterngeld_eink_relev_m()
.elterngeld_anteil_eink_erlass – See
elterngeld_anteil_eink_erlass()
.
- elterngeld_eink_relev_m(_elterngeld_proxy_eink_vorj_elterngeld_m: float, elterngeld_nettolohn_m: float) float [source]#
Calculating the relevant wage for the calculation of elterngeld.
According to § 2 (1) BEEG elterngeld is calculated by the loss of income due to child raising.
- Parameters:
_elterngeld_proxy_eink_vorj_elterngeld_m – See
_elterngeld_proxy_eink_vorj_elterngeld_m()
.elterngeld_nettolohn_m – See
elterngeld_nettolohn_m()
.
- elterngeld_geschw_bonus_anspruch(elterngeld_kind_hh: int, elterngeld_vorschulkind_hh: int, elternzeit_anspruch: bool, elterngeld_params: dict) bool [source]#
Check for sibling bonus on parental leave benefit.
- Parameters:
elterngeld_kind_hh – See
elterngeld_kind_hh()
.elternzeit_anspruch – See
elternzeit_anspruch()
.elterngeld_vorschulkind_hh – See
elterngeld_vorschulkind_hh()
.elterngeld_params – See params documentation elterngeld_params.
- elterngeld_geschw_bonus_m(elterngeld_eink_erlass_m: float, elterngeld_geschw_bonus_anspruch: bool, elterngeld_params: dict) float [source]#
Calculate the bonus for siblings.
According to § 2a parents of siblings get a bonus.
- Parameters:
elterngeld_eink_erlass_m – See
elterngeld_eink_erlass_m()
.elterngeld_geschw_bonus_anspruch – See
elterngeld_geschw_bonus_anspruch()
.elterngeld_params – See params documentation elterngeld_params.
- elterngeld_kind(geburtsjahr: int, elterngeld_params: dict) bool [source]#
Check for sibling bonus on parental leave benefit.
# ToDo: why use datum and geburtsjahr instead of alter?
- Parameters:
geburtsjahr – See basic input variable geburtsjahr.
elterngeld_params – See params documentation elterngeld_params.
- elterngeld_m(elterngeld_eink_relev_m: float, elternzeit_anspruch: bool, elterngeld_eink_erlass_m: float, elterngeld_geschw_bonus_m: float, elterngeld_mehrlinge_bonus_m: float, elterngeld_params: dict) float [source]#
Calculate parental leave benefit (elterngeld).
For the calculation, the relevant wage and the eligibility for bonuses is needed.
- Parameters:
elterngeld_eink_relev_m – See
elterngeld_eink_relev_m()
.elternzeit_anspruch – See
elternzeit_anspruch()
.elterngeld_eink_erlass_m – See
elterngeld_eink_erlass_m()
.elterngeld_geschw_bonus_m – See
elterngeld_geschw_bonus_m()
.elterngeld_mehrlinge_bonus_m – See
elterngeld_mehrlinge_bonus_m()
.elterngeld_params – See params documentation elterngeld_params.
- elterngeld_mehrlinge_bonus_m(_elterngeld_anz_mehrlinge_anspruch: int, elterngeld_params: dict) float [source]#
Calculate the bonus for multiples.
- Parameters:
_elterngeld_anz_mehrlinge_anspruch – See
_elterngeld_anz_mehrlinge_anspruch()
.elterngeld_params – See params documentation elterngeld_params.
- elterngeld_nettolohn_m(bruttolohn_m: float, eink_st_y_sn: float, soli_st_y_sn: float, anz_personen_sn: int, sozialv_beitr_m: float) float [source]#
Calculate the net wage.
Taxes and social insurance contributions are needed for the calculation.
- Parameters:
bruttolohn_m – See basic input variable bruttolohn_m.
eink_st_y_sn – See
eink_st_y_sn()
.soli_st_y_sn – See
soli_st_y_sn()
.anz_personen_sn – See
anz_personen_sn()
.sozialv_beitr_m – See
sozialv_beitr_m()
.
- elterngeld_vorschulkind(geburtsjahr: int, elterngeld_params: dict) bool [source]#
Check for sibling bonus on parental leave benefit.
- Parameters:
geburtsjahr – See basic input variable geburtsjahr.
elterngeld_params – See params documentation elterngeld_params.
- elternzeit_anspruch(alter_monate_jüngstes_mitglied_hh: float, m_elterngeld_mut_hh: int, m_elterngeld_vat_hh: int, m_elterngeld: int, kind: bool, elterngeld_params: dict) bool [source]#
Check parental leave eligibility.
# ToDo: Check meaning and naming and make description of m_elterngeld_mut_hh, # ToDo: m_elterngeld_vat_hh, and m_elterngeld more precise
- Parameters:
alter_monate_jüngstes_mitglied_hh – See
alter_monate_jüngstes_mitglied_hh()
.m_elterngeld_mut_hh – See basic input variable m_elterngeld_mut_hh.
m_elterngeld_vat_hh – See basic input variable m_elterngeld_vat_hh.
m_elterngeld – See basic input variable m_elterngeld.
kind – See basic input variable kind.
elterngeld_params – See params documentation elterngeld_params.
- entgeltp_ost_erwerbsm_rente(entgeltp_ost: float, entgeltp_zurechnungszeit: float, anteil_entgeltp_ost: float) float [source]#
Entgeltpunkte accumulated in Eastern Germany which Erwerbsminderungsrente is based on (public disability insurance) In the case of the public disability insurance, pensioners are credited with additional earning points. They receive their average earned income points for each year between their age of retirement and the “zurechnungszeitgrenze”.
- Parameters:
entgeltp_ost – See basic input variable :ref:`entgeltp_ost <entgeltp_ost>
entgeltp_zurechnungszeit – See
entgeltp_zurechnungszeit()
.anteil_entgeltp_ost – See
anteil_entgeltp_ost()
.
- Returns:
Final pension points for Erwerbsminderungsrente (public disability insurance)
- entgeltp_ost_update(wohnort_ost: bool, entgeltp_ost: float, entgeltp_update_lohn: float) float [source]#
Update eastern earning points.
Given earnings, social insurance rules, average earnings in a particular year and potentially other variables (e.g., benefits for raising children, informal care), return the new earnings points.
- Parameters:
wohnort_ost – See basic input variable wohnort_ost.
entgeltp_ost – See basic input variable entgeltp_ost.
entgeltp_update_lohn – See
entgeltp_update_lohn()
.
- entgeltp_update_lohn(bruttolohn_m: float, wohnort_ost: bool, _ges_rentenv_beitr_bemess_grenze_m: float, ges_rente_params: dict) float [source]#
Return earning points for the wages earned in the last year.
- Parameters:
bruttolohn_m – See basic input variable bruttolohn_m.
wohnort_ost – See
wohnort_ost()
._ges_rentenv_beitr_bemess_grenze_m – See
_ges_rentenv_beitr_bemess_grenze_m()
.ges_rente_params – See params documentation ges_rente_params.
- entgeltp_west_erwerbsm_rente(entgeltp_west: float, entgeltp_zurechnungszeit: float, anteil_entgeltp_ost: float) float [source]#
Entgeltpunkte accumulated in Western Germany which Erwerbsminderungsrente is based on (public disability insurance) In the case of the public disability insurance, pensioners are credited with additional earning points. They receive their average earned income points for each year between their age of retirement and the “zurechnungszeitgrenze”.
- Parameters:
entgeltp_west – See basic input variable :ref:`entgeltp_west <entgeltp_west>
entgeltp_zurechnungszeit – See
entgeltp_zurechnungszeit()
.anteil_entgeltp_ost – See
anteil_entgeltp_ost()
.
- Returns:
Final pension points for Erwerbsminderungsrente (public disability insurance)
- entgeltp_west_update(wohnort_ost: bool, entgeltp_west: float, entgeltp_update_lohn: float) float [source]#
Update western earning points.
Given earnings, social insurance rules, average earnings in a particular year and potentially other variables (e.g., benefits for raising children, informal care), return the new earnings points.
- Parameters:
wohnort_ost – See basic input variable wohnort_ost.
entgeltp_west – See basic input variable ententgeltp_westgeltp.
entgeltp_update_lohn – See
entgeltp_update_lohn()
.
- entgeltp_zurechnungszeit(durchschn_entgeltp: float, age_of_retirement: float, erwerbsm_rente_params: dict) float [source]#
Additional Entgeltpunkte accumulated through “Zurechnungszeit” for Erwerbsminderungsrente (public disability insurance) In the case of the public disability insurance, pensioners are credited with additional earning points. They receive their average earned income points for each year between their age of retirement and the “zurechnungszeitgrenze”.
- Parameters:
durchschn_entgeltp – See
durchschn_entgeltp()
.age_of_retirement – See
age_of_retirement()
.erwerbsm_rente_params – See params documentation :ref:`erwerbsm_rente_params <erwerbsm_rente_params>.
- Returns:
Final pension points for Erwerbsminderungsrente (public disability insurance)
- erwachsene_alle_rentner_hh(anz_erwachsene_hh: int, anz_rentner_hh: int) bool [source]#
Calculate if all adults in the household are pensioners.
- Parameters:
anz_erwachsene_hh – See
anz_erwachsene_hh()
.anz_rentner_hh – See
anz_rentner_hh()
.
- erwerbsm_rente_m(erwerbsm_rente_zugangsfaktor: float, entgeltp_west_erwerbsm_rente: float, entgeltp_ost_erwerbsm_rente: float, rentenartfaktor: float, ges_rente_vorauss_erwerbsm: bool, ges_rente_params: dict) float [source]#
Erwerbsminderungsrente (amount paid by public disability insurance if claimed)
Legal reference: SGB VI § 64: Rentenformel für Monatsbetrag der Rente
- Parameters:
erwerbsm_rente_zugangsfaktor – See
erwerbsm_rente_zugangsfaktor()
.entgeltp_west_erwerbsm_rente – See
entgeltp_west_erwerbsm_rente()
.entgeltp_ost_erwerbsm_rente – See
entgeltp_ost_erwerbsm_rente()
.rentenwert – See
rentenwert()
.rentenartfaktor – See
rentenartfaktor()
.ges_rente_vorauss_erwerbsm – See
ges_rente_vorauss_erwerbsm()
.
- Returns:
Erwerbsminderungsrente (amount paid by public disability insurance if claimed)
- erwerbsm_rente_zugangsfaktor(age_of_retirement: float, _erwerbsm_rente_langj_versicherte_wartezeit: bool, ges_rente_params: dict, erwerbsm_rente_params: dict) float [source]#
Zugangsfaktor for Erwerbsminderungsrente (public disability insurance) For each month that a pensioner retires before the age limit, a fraction of the pension is deducted. The maximum deduction is capped. This max deduction is the norm for the public disability insurance.
Legal reference: § 77 Abs. 2-4 SGB VI
Paragraph 4 regulates an exceptional case in which pensioners can already retire at 63 without deductions if they can prove 40 years of (Pflichtbeiträge, Berücksichtigungszeiten and certain Anrechnungszeiten or Ersatzzeiten).
- Parameters:
age_of_retirement – See
age_of_retirement()
._erwerbsm_rente_langj_versicherte_wartezeit – See
_erwerbsm_rente_langj_versicherte_wartezeit()
.ges_rente_params – See params documentation :ref:`ges_rente_params <ges_rente_params>.
erwerbsm_rente_params – See params documentation :ref:`erwerbsm_rente_params <erwerbsm_rente_params>.
- Returns:
Zugangsfaktor for Erwerbsminderungsrente (public disability insurance)
- erziehungsgeld_abzug_transfer(erziehungsgeld_eink_relev_kind_m: float, _erziehungsgeld_einkommensgrenze_kind_m: float, alter_monate: float, erziehungsgeld_params: dict) float [source]#
Reduction of parental leave benefits (means-test).
Legal reference: Bundesgesetzblatt Jahrgang 2004 Teil I Nr. 6 (p.209)
- Parameters:
erziehungsgeld_eink_relev_kind_m – See
erziehungsgeld_eink_relev_kind_y()
._erziehungsgeld_einkommensgrenze_kind_m – See
_erziehungsgeld_einkommensgrenze_kind_y()
.alter_monate – See
alter_monate()
.erziehungsgeld_params – See params documentation erziehungsgeld_params.
- Returns:
Income reduction for parental leave benefit (Erziehungsgeld)
- erziehungsgeld_anspruch_eltern(arbeitsstunden_w: float, hat_kinder: bool, erziehungsgeld_anspruch_kind_fg: bool, erziehungsgeld_params: dict) bool [source]#
Eligibility for parental leave benefit (Erziehungsgeld) on parental level.
Legal reference: Bundesgesetzblatt Jahrgang 2004 Teil I Nr. 6 (p.207)
- Parameters:
arbeitsstunden_w – See :See basic input variable arbeitsstunden_w.
hat_kinder – See :See basic input variable hat_kinder.
erziehungsgeld_anspruch_kind_fg – See
erziehungsgeld_anspruch_kind_fg()
.erziehungsgeld_params – See params documentation erziehungsgeld_params.
- Returns:
eligibility of parental leave benefit (Erziehungsgeld) as a bool
- erziehungsgeld_eink_relev_kind_y(bruttolohn_vorj_y_fg: float, anz_erwachsene_fg: int, erziehungsgeld_anspruch_kind: bool, erziehungsgeld_params: dict, eink_st_abzuege_params: dict) float [source]#
Income relevant for means testing for parental leave benefit (Erziehungsgeld).
Legal reference: Bundesgesetzblatt Jahrgang 2004 Teil I Nr. 6 (p.209)
There is special rule for “Beamte, Soldaten und Richter” which is not implemented yet.
- Parameters:
bruttolohn_vorj_y_fg – See
bruttolohn_vorj_y_fg()
.anz_erwachsene_fg – See
anz_erwachsene_fg()
.erziehungsgeld_anspruch_kind – See
erziehungsgeld_anspruch_kind()
.erziehungsgeld_params – See params documentation erziehungsgeld_params.
eink_st_abzuege_params – See params documentation eink_st_abzuege_params.
- Returns:
Relevant income
- erziehungsgeld_kind_mit_budgetsatz_m(erziehungsgeld_anspruch_kind: bool, erziehungsgeld_abzug_transfer: float, erziehungsgeld_ohne_abzug_m: float) float [source]#
Parental leave benefit (Erziehungsgeld) on child level.
For the calculation, the relevant income, the age of the youngest child, the income threshold and the eligibility for erziehungsgeld is needed.
Legal reference: Bundesgesetzblatt Jahrgang 2004 Teil I Nr. 6
- Parameters:
erziehungsgeld_anspruch_kind – See
erziehungsgeld_anspruch_kind()
.erziehungsgeld_abzug_transfer – See
erziehungsgeld_abzug_transfer()
.erziehungsgeld_ohne_abzug_m – See
erziehungsgeld_ohne_abzug()
.
- Returns:
Monthly claim of parental leave benefit (Erziehungsgeld) on child level
- erziehungsgeld_m(erziehungsgeld_eltern_m: int, erziehungsgeld_anspruch_eltern: bool) bool [source]#
Total parental leave benefits (Erziehungsgeld).
Parental leave benefits for the parent that claims the benefit.
Legal reference: BErzGG (BGBl. I 1985 S. 2154; BGBl. I 2004 S. 206)
- Parameters:
erziehungsgeld_eltern_m – See
erziehungsgeld_eltern_m()
.erziehungsgeld_anspruch_eltern – See
erziehungsgeld_anspruch_eltern()
.
- Returns:
Parental leave benefits (Erziehungsgeld).
- erziehungsgeld_ohne_abzug_m(budgetsatz_erzieh: bool, erziehungsgeld_eink_relev_kind_y: float, _erziehungsgeld_einkommensgrenze_kind_y: float, alter_monate: float, erziehungsgeld_params: dict) float [source]#
Parental leave benefit (Erziehungsgeld) without means-test on child level.
- Parameters:
budgetsatz_erzieh – See :See basic input variable budgetsatz_erzieh.
erziehungsgeld_eink_relev_kind_y – See
erziehungsgeld_eink_relev_kind_y()
._erziehungsgeld_einkommensgrenze_kind_y – See
_erziehungsgeld_einkommensgrenze_kind_y()
.alter_monate – See
alter_monate()
.erziehungsgeld_params – See params documentation erziehungsgeld_params.
- Returns:
Parental leave benefit (Erziehungsgeld) without means-test
- freibeträge_ind_y(_eink_st_behinderungsgrad_pauschbetrag_y: float, eink_st_altersfreib_y: float, alleinerz_freib_y_sn: float) float [source]#
Sum up all tax-deductible allowances applicable at the individual level.
#ToDo: Check whether these columns are really calculated at the individual level. :param _eink_st_behinderungsgrad_pauschbetrag_y: See
_eink_st_behinderungsgrad_pauschbetrag_y()
. :param eink_st_altersfreib_y: Seeeink_st_altersfreib_y()
. :param alleinerz_freib_y_sn: Seealleinerz_freib_y_sn()
.
- freibeträge_y_sn(eink_st_sonderausgaben_y_sn: float, vorsorgeaufw_y_sn: float, freibeträge_ind_y_sn: float) float [source]#
Calculate total allowances on Steuernummer level.
- Parameters:
eink_st_sonderausgaben_y_sn – See
eink_st_sonderausgaben_y_sn()
.vorsorgeaufw_y_sn – See
vorsorgeaufw_y_sn()
.freibeträge_ind_y_sn – See
freibeträge_ind_y_sn()
.
- geburtsdatum(geburtsjahr: int, geburtsmonat: int, geburtstag: int) numpy.datetime64 [source]#
Create date of birth datetime variable.
- Parameters:
geburtsjahr – See basic input variable geburtsjahr.
geburtsmonat – See basic input variable geburtsmonat.
geburtstag – See basic input variable geburtstag.
- geringfügig_beschäftigt(bruttolohn_m: float, minijob_grenze: float) bool [source]#
Check if individual earns less than marginal employment threshold.
Marginal employed pay no social insurance contributions.
Legal reference: § 8 Abs. 1 Satz 1 and 2 SGB IV
- Parameters:
bruttolohn_m – See basic input variable bruttolohn_m.
minijob_grenze – See
minijob_grenze()
.
- Returns:
Whether person earns less than marginal employment threshold.
- ges_krankenv_beitr_arbeitg_m_mit_midijob(geringfügig_beschäftigt: bool, in_gleitzone: bool, bruttolohn_m: float, _ges_krankenv_beitr_midijob_arbeitg_m: float, _ges_krankenv_bruttolohn_m: float, selbstständig: bool, sozialv_beitr_params: dict, _ges_krankenv_beitr_satz_arbeitg: float) float [source]#
Employer’s public health insurance contribution.
- Parameters:
geringfügig_beschäftigt – See
geringfügig_beschäftigt()
._ges_krankenv_beitr_midijob_arbeitg_m – See
_ges_krankenv_beitr_midijob_arbeitg_m()
._ges_krankenv_bruttolohn_m – See
_ges_krankenv_bruttolohn_m()
._ges_krankenv_beitr_satz_arbeitg – See
_ges_krankenv_beitr_satz_arbeitg()
.in_gleitzone – See
in_gleitzone()
.bruttolohn_m – See basic input variable bruttolohn_m.
selbstständig – See basic input variable selbstständig.
sozialv_beitr_params – See params documentation sozialv_beitr_params.
- ges_krankenv_beitr_arbeitg_m_vor_midijob(geringfügig_beschäftigt: bool, bruttolohn_m: float, _ges_krankenv_bruttolohn_m: float, selbstständig: bool, sozialv_beitr_params: dict, _ges_krankenv_beitr_satz_arbeitg: float) float [source]#
Employer’s public health insurance contribution.
- Parameters:
geringfügig_beschäftigt – See
geringfügig_beschäftigt()
._ges_krankenv_bruttolohn_m – See
_ges_krankenv_bruttolohn_m()
._ges_krankenv_beitr_satz_arbeitg – See
_ges_krankenv_beitr_satz_arbeitg()
.bruttolohn_m – See basic input variable bruttolohn_m.
selbstständig – See basic input variable selbstständig.
sozialv_beitr_params – See params documentation sozialv_beitr_params.
- ges_krankenv_beitr_m_mit_midijob(geringfügig_beschäftigt: bool, ges_krankenv_beitr_rente_m: float, ges_krankenv_beitr_selbst_m: float, in_gleitzone: bool, _ges_krankenv_beitr_midijob_arbeitn_m: float, _ges_krankenv_beitr_reg_beschäftigt_m: float, selbstständig: bool) float [source]#
Employee’s public health insurance contribution.
- Parameters:
geringfügig_beschäftigt – See
geringfügig_beschäftigt()
.ges_krankenv_beitr_rente_m – See
ges_krankenv_beitr_rente_m()
.ges_krankenv_beitr_selbst_m – See
ges_krankenv_beitr_selbst_m()
._ges_krankenv_beitr_midijob_arbeitn_m – See
_ges_krankenv_beitr_midijob_arbeitn_m()
._ges_krankenv_beitr_reg_beschäftigt_m – See
_ges_krankenv_beitr_reg_beschäftigt_m()
.in_gleitzone – See
in_gleitzone()
.selbstständig – See basic input variable selbstständig.
- ges_krankenv_beitr_m_vor_midijob(geringfügig_beschäftigt: bool, ges_krankenv_beitr_rente_m: float, ges_krankenv_beitr_selbst_m: float, _ges_krankenv_beitr_reg_beschäftigt_m: float, selbstständig: bool) float [source]#
Employee’s public health insurance contribution.
- Parameters:
geringfügig_beschäftigt – See
geringfügig_beschäftigt()
.ges_krankenv_beitr_rente_m – See
ges_krankenv_beitr_rente_m()
.ges_krankenv_beitr_selbst_m – See
ges_krankenv_beitr_selbst_m()
._ges_krankenv_beitr_reg_beschäftigt_m – See
_ges_krankenv_beitr_reg_beschäftigt_m()
.selbstständig – See basic input variable selbstständig.
- ges_krankenv_beitr_rente_m(_ges_krankenv_bemessungsgrundlage_rente_m: float, ges_krankenv_beitr_satz: float) float [source]#
Calculate health insurance contributions for pension incomes.
- Parameters:
_ges_krankenv_bemessungsgrundlage_rente_m – See
_ges_krankenv_bemessungsgrundlage_rente_m()
.ges_krankenv_beitr_satz – See
ges_krankenv_beitr_satz()
.
- Returns:
Pandas Series containing monthly health insurance contributions on pension income
income.
- ges_krankenv_beitr_satz(sozialv_beitr_params: dict) float [source]#
Contribution rates of employees for health insurance, just a basic split between employees and employers. Incorporates regime changes regarding different values across insurers (pick “official” mean) and same contribution rate for all.
- Parameters:
sozialv_beitr_params – See params documentation sozialv_beitr_params.
- Returns:
Beitragssatz for statutory health insurance.
- ges_krankenv_beitr_satz_arbeitg_einheitlich_zusatzbeitrag_nur_arbeitn(sozialv_beitr_params: dict) float [source]#
Contribution rates of employers for health insurance. Uniform contribution rate for all health insurers, Zusatzbeitrag irrelevant.
- Parameters:
sozialv_beitr_params – See params documentation sozialv_beitr_params.
- ges_krankenv_beitr_satz_arbeitg_einheitlich_zusatzbeitrag_nur_arbeitn_jahresanfang(sozialv_beitr_params: dict) float [source]#
Contribution rates of employers for health insurance at the beginning of the year. Uniform contribution rate for all health insurers, Zusatzbeitrag irrelevant.
- Parameters:
sozialv_beitr_params – See params documentation sozialv_beitr_params.
- ges_krankenv_beitr_satz_arbeitg_mean_kassenspezifisch_zusatzbeitrag_nur_arbeitn(sozialv_beitr_params: dict) float [source]#
Contribution rates of employers for health insurance. Zusatzbeitrag irrelevant.
- Parameters:
sozialv_beitr_params – See params documentation sozialv_beitr_params.
- ges_krankenv_beitr_satz_arbeitg_mean_kassenspezifisch_zusatzbeitrag_nur_arbeitn_jahresanfang(sozialv_beitr_params: dict) float [source]#
Contribution rates of employers for health insurance. Zusatzbeitrag irrelevant.
- Parameters:
sozialv_beitr_params – See params documentation sozialv_beitr_params.
- ges_krankenv_beitr_satz_einheitlich_zusatzbeitrag_nur_arbeitn(ges_krankenv_zusatzbeitr_satz: float, sozialv_beitr_params: dict) float [source]#
Contribution rates of employees for health insurance.
The contribution rates consists of a general rate (split equally between employers and employees, same for all sickness funds) and a top-up rate, which is fully paid by employees.
- Parameters:
ges_krankenv_zusatzbeitr_satz – See
ges_krankenv_zusatzbeitr_satz()
.sozialv_beitr_params – See params documentation sozialv_beitr_params.
- Returns:
Beitragssatz for statutory health insurance.
- ges_krankenv_beitr_satz_einheitlich_zusatzbeitrag_nur_arbeitn_jahresanfang(ges_krankenv_zusatzbeitr_satz: float, sozialv_beitr_params: dict) float [source]#
Contribution rates of employees for health insurance at the beginning of the year.
The contribution rates consists of a general rate (split equally between employers and employees, same for all sickness funds) and a top-up rate, which is fully paid by employees.
- Parameters:
ges_krankenv_zusatzbeitr_satz – See
ges_krankenv_zusatzbeitr_satz()
.sozialv_beitr_params – See params documentation sozialv_beitr_params.
- Returns:
Beitragssatz for statutory health insurance at the beginning of the year.
- ges_krankenv_beitr_satz_mean_kassenspezifisch_zusatzbeitrag_nur_arbeitn(ges_krankenv_zusatzbeitr_satz: float, sozialv_beitr_params: dict) float [source]#
Contribution rates of employees for health insurance.
The contribution rates consists of a general rate (split equally between employers and employees, differs across sickness funds) and a top-up rate, which is fully paid by employees.
- Parameters:
ges_krankenv_zusatzbeitr_satz – See
ges_krankenv_zusatzbeitr_satz()
.sozialv_beitr_params – See params documentation sozialv_beitr_params.
- Returns:
Beitragssatz for statutory health insurance.
- ges_krankenv_beitr_satz_mean_kassenspezifisch_zusatzbeitrag_nur_arbeitn_jahresanfang(ges_krankenv_zusatzbeitr_satz: float, sozialv_beitr_params: dict) float [source]#
Contribution rates of employees for health insurance at the beginning of the year.
The contribution rates consists of a general rate (split equally between employers and employees, differs across sickness funds) and a top-up rate, which is fully paid by employees.
- Parameters:
ges_krankenv_zusatzbeitr_satz – See
ges_krankenv_zusatzbeitr_satz()
.sozialv_beitr_params – See params documentation sozialv_beitr_params.
- Returns:
Beitragssatz for statutory health insurance at the beginning of the year.
- ges_krankenv_beitr_satz_zusatzbeitrag_paritätisch(ges_krankenv_zusatzbeitr_satz: float, sozialv_beitr_params: dict) float [source]#
Contribution rates of employees for health insurance.
Zusatzbeitrag is split equally between employers and employees.
- Parameters:
sozialv_beitr_params – See params documentation sozialv_beitr_params.
- ges_krankenv_beitr_satz_zusatzbeitrag_paritätisch_jahresanfang(ges_krankenv_zusatzbeitr_satz: float, sozialv_beitr_params: dict) float [source]#
Contribution rates of employees for health insurance at the beginning of the year.
Zusatzbeitrag is now split equally between employers and employees.
- Parameters:
sozialv_beitr_params – See params documentation sozialv_beitr_params.
- ges_krankenv_beitr_selbst_m(_ges_krankenv_bemessungsgrundlage_eink_selbst: float, sozialv_beitr_params: dict) float [source]#
Health insurance contributions for self-employed’s income. The self-employed pay the full reduced contribution.
- Parameters:
_ges_krankenv_bemessungsgrundlage_eink_selbst – See
_ges_krankenv_bemessungsgrundlage_eink_selbst()
.sozialv_beitr_params – See params documentation sozialv_beitr_params.
- Returns:
Monthly health insurance contributions for self-employed’s income.
- ges_krankenv_zusatzbeitr_satz_from_mean_zusatzbeitrag(sozialv_beitr_params: dict) float [source]#
Health insurance top-up rate since January 2015.
- Parameters:
sozialv_beitr_params – See params documentation sozialv_beitr_params.
- Returns:
Zusatzbeitragssatz (based on mean value of Zusatzbeitragssatz)
- ges_krankenv_zusatzbeitr_satz_from_sonderbeitr_satz(sozialv_beitr_params: dict) float [source]#
Health insurance top-up rate until December 2014.
- Parameters:
sozialv_beitr_params – See params documentation sozialv_beitr_params.
- Returns:
Zusatzbeitragssatz (based on Sonderbeitrag)
- ges_pflegev_beitr_arbeitg_m_mit_midijob(geringfügig_beschäftigt: bool, _ges_pflegev_beitr_midijob_arbeitg_m: float, _ges_krankenv_bruttolohn_m: float, sozialv_beitr_params: dict, in_gleitzone: bool, selbstständig: bool) float [source]#
Employer’s long-term care insurance contribution.
- Parameters:
geringfügig_beschäftigt – See
geringfügig_beschäftigt()
._ges_pflegev_beitr_midijob_arbeitg_m – See
_ges_pflegev_beitr_midijob_arbeitg_m()
._ges_krankenv_bruttolohn_m – See
_ges_krankenv_bruttolohn_m()
.sozialv_beitr_params – See params documentation sozialv_beitr_params.
in_gleitzone – See
in_gleitzone()
.selbstständig – See basic input variable selbstständig.
- ges_pflegev_beitr_arbeitg_m_vor_midijob(geringfügig_beschäftigt: bool, _ges_krankenv_bruttolohn_m: float, sozialv_beitr_params: dict, selbstständig: bool) float [source]#
Employer’s long-term care insurance contribution.
- Parameters:
geringfügig_beschäftigt – See
geringfügig_beschäftigt()
._ges_krankenv_bruttolohn_m – See
_ges_krankenv_bruttolohn_m()
.sozialv_beitr_params – See params documentation sozialv_beitr_params.
selbstständig – See basic input variable selbstständig.
- ges_pflegev_beitr_m_mit_midijob(_ges_pflegev_beitr_reg_beschäftigt_m: float, geringfügig_beschäftigt: bool, ges_pflegev_beitr_rente_m: float, ges_pflegev_beitr_selbst_m: float, _ges_pflegev_beitr_midijob_arbeitn_m: float, in_gleitzone: bool, selbstständig: bool) float [source]#
Employee’s long-term care insurance contribution since April 2003.
- Parameters:
geringfügig_beschäftigt – See
geringfügig_beschäftigt()
.ges_pflegev_beitr_rente_m – See
ges_pflegev_beitr_rente_m()
.ges_pflegev_beitr_selbst_m – See
ges_pflegev_beitr_selbst_m()
._ges_pflegev_beitr_midijob_arbeitn_m – See
_ges_pflegev_beitr_midijob_arbeitn_m()
.ges_pflegev_beitr_regulär_besch_m – See
ges_pflegev_beitr_regulär_besch_m()
.in_gleitzone – See
in_gleitzone()
.selbstständig – See basic input variable selbstständig.
- ges_pflegev_beitr_m_vor_midijob(_ges_pflegev_beitr_reg_beschäftigt_m: float, geringfügig_beschäftigt: bool, ges_pflegev_beitr_rente_m: float, ges_pflegev_beitr_selbst_m: float, selbstständig: bool) float [source]#
Employee’s long-term care insurance contribution until March 2003.
- Parameters:
geringfügig_beschäftigt – See
geringfügig_beschäftigt()
.ges_pflegev_beitr_rente_m – See
ges_pflegev_beitr_rente_m()
.ges_pflegev_beitr_selbst_m – See
ges_pflegev_beitr_selbst_m()
.ges_pflegev_beitr_regulär_besch_m – See
ges_pflegev_beitr_regulär_besch_m()
.selbstständig – See basic input variable selbstständig.
- ges_pflegev_beitr_rente_m_ohne_zusatz_für_kinderlose(_ges_krankenv_bemessungsgrundlage_rente_m: float, ges_pflegev_beitr_satz: float) float [source]#
Health insurance contribution from pension income from April until December 2004.
Pensioners pay twice the contribution of employees.
- Parameters:
_ges_krankenv_bemessungsgrundlage_rente_m – See
_ges_krankenv_bemessungsgrundlage_rente_m()
.ges_pflegev_beitr_satz – See
ges_pflegev_beitr_satz()
.
- Returns:
Monthly health insurance contributions for pension income.
- ges_pflegev_beitr_rente_m_reduz_beitrag(_ges_krankenv_bemessungsgrundlage_rente_m: float, ges_pflegev_beitr_satz: float) float [source]#
Long-term care insurance contribution from pension income.
Pensioners pay the same contribution as employees.
- Parameters:
_ges_krankenv_bemessungsgrundlage_rente_m – See
_ges_krankenv_bemessungsgrundlage_rente_m()
.ges_pflegev_beitr_satz – See
ges_pflegev_beitr_satz()
.
- Returns:
Monthly health insurance contributions for pension income.
- ges_pflegev_beitr_rente_m_zusatz_kinderlos_dummy(_ges_krankenv_bemessungsgrundlage_rente_m: float, ges_pflegev_beitr_satz: float, sozialv_beitr_params: dict) float [source]#
Health insurance contribution from pension income since 2005.
Pensioners pay twice the contribution of employees, but only once the additional charge for childless individuals.
- Parameters:
_ges_krankenv_bemessungsgrundlage_rente_m – See
_ges_krankenv_bemessungsgrundlage_rente_m()
.ges_pflegev_beitr_satz – See
ges_pflegev_beitr_satz()
.sozialv_beitr_params – See params documentation sozialv_beitr_params.
- Returns:
Monthly health insurance contributions for pension income.
- ges_pflegev_beitr_satz_mit_kinder_abschlag(anz_eig_kind_bis_24: int, ges_pflegev_zusatz_kinderlos: bool, sozialv_beitr_params: dict) float [source]#
Care insurance contribution rate. For individuals with children younger than 25 rates are reduced.
- Parameters:
anz_eig_kind_bis_24 (int,) – See basic input variable anz_eig_kind_bis_24.
ges_pflegev_zusatz_kinderlos – See
ges_pflegev_zusatz_kinderlos()
.sozialv_beitr_params – See params documentation sozialv_beitr_params.
- ges_pflegev_beitr_satz_ohne_zusatz_fuer_kinderlose(sozialv_beitr_params: dict) float [source]#
Long-term care insurance contribution rate.
- Parameters:
sozialv_beitr_params – See params documentation sozialv_beitr_params.
- ges_pflegev_beitr_satz_zusatz_kinderlos_dummy(ges_pflegev_zusatz_kinderlos: bool, sozialv_beitr_params: dict) float [source]#
Long-term care insurance contribution rate.
- Parameters:
ges_pflegev_zusatz_kinderlos – See
ges_pflegev_zusatz_kinderlos()
.sozialv_beitr_params – See params documentation sozialv_beitr_params.
- ges_pflegev_beitr_selbst_m_ohne_zusatz_fuer_kinderlose(_ges_krankenv_bemessungsgrundlage_eink_selbst: float, ges_pflegev_beitr_satz: float) float [source]#
Self-employed individuals’ long-term care insurance contribution until 2004.
Self-employed pay the full contribution (employer + employee), which is either assessed on their self-employement income or 3/4 of the ‘Bezugsgröße’
- Parameters:
_ges_krankenv_bemessungsgrundlage_eink_selbst – See
_ges_krankenv_bemessungsgrundlage_eink_selbst()
.ges_pflegev_beitr_satz – See
ges_pflegev_beitr_satz()
.
- Returns:
Monthly care insurance contributions for self employed income.
- ges_pflegev_beitr_selbst_m_zusatz_kinderlos_dummy(_ges_krankenv_bemessungsgrundlage_eink_selbst: float, ges_pflegev_beitr_satz: float, sozialv_beitr_params: dict) float [source]#
Self-employed individuals’ long-term care insurance contribution since 2005.
Self-employed pay the full contribution (employer + employee), which is either assessed on their self-employement income or 3/4 of the ‘Bezugsgröße’
- Parameters:
_ges_krankenv_bemessungsgrundlage_eink_selbst – See
_ges_krankenv_bemessungsgrundlage_eink_selbst()
.ges_pflegev_beitr_satz – See
ges_pflegev_beitr_satz()
.sozialv_beitr_params – See params documentation sozialv_beitr_params.
- Returns:
Monthly care insurance contributions for self employed income.
- ges_pflegev_zusatz_kinderlos(hat_kinder: bool, alter: int, sozialv_beitr_params: dict) bool [source]#
Whether additional care insurance contribution for childless individuals applies.
- Parameters:
hat_kinder – See basic input variable hat_kinder.
alter – See basic input variable alter.
sozialv_beitr_params (dict,) – See params documentation sozialv_beitr_params.
- ges_rente_anrechnungszeit(m_arbeitsunfähig: float, m_krank_ab_16_bis_24: float, m_mutterschutz: float, m_arbeitsl: float, m_ausbild_suche: float, m_schul_ausbild: float) float [source]#
Adds up all times that are accounted for in “Anrechnungszeiten” relevant for “Wartezeit von 35 Jahren” i.e. for Altersrente für langjährig Versicherte (pension for long term insured). (Ref: Studientext der Deutschen Rentenversicherung, Nr. 19, Wartezeiten, Ausgabe 2021, S. 24.)
- Parameters:
m_arbeitsunfähig – See basic input variable m_arbeitsunfähig.
m_krank_ab_16_bis_24 – See basic input variable m_krank_ab_16_bis_24.
m_mutterschutz – See basic input variable m_mutterschutz.
m_arbeitsl – See basic input variable m_arbeitsl.
m_ausbild_suche – See basic input variable m_ausbild_suche.
m_schul_ausbild – See basic input variable m_schul_ausbild.
- Returns:
Anrechnungszeit in months
- ges_rente_anrechnungszeit_45(m_arbeitsunfähig: float, m_alg1_übergang: float, m_geringf_beschäft: float) float [source]#
Adds up all times NOT included in Beitragszeiten, Berücksichtigungszeiten, Ersatzzeiten (a variant of Anrechnungszeiten) that are accounted for in “Wartezeit von 45 Jahren” i.e. for Altersrente für besonders langjährig Versicherte (pension for very long term insured). “nur Anrechnungszeiten mit Bezug von Entgeltersatzleistungen der Arbeitsförderung, Leistungen bei Krankheit und Übergangsgeld”. (Ref: Studientext der Deutschen Rentenversicherung, Nr. 19, Wartezeiten, Ausgabe 2021, S. 24)
- Parameters:
m_arbeitsunfähig – See basic input variable m_arbeitsunfähig.
m_alg1_übergang – See basic input variable m_alg1_übergang.
m_geringf_beschäft – See basic input variable m_geringf_beschäft.
- Returns:
Anrechnungszeit in months.
- ges_rente_arbeitsl_vorzeitig_mit_vertrauenss_1996(vertra_arbeitsl_1997: bool, _ges_rente_arbeitsl_vorzeitig_ohne_vertrauenss: float, ges_rente_params: dict) float [source]#
Early retirement age of pension for unemployed.
Includes Vertrauensschutz rules implemented from July to September 1996.
- Parameters:
vertra_arbeitsl_2006 – See basic input variable vertra_arbeitsl_2006.
_ges_rente_arbeitsl_vorzeitig_ohne_vertrauenss – See
_ges_rente_arbeitsl_vorzeitig_ohne_vertrauenss()
.ges_rente_params – See params documentation ges_rente_params.
- Returns:
Early retirement age for unemployed.
- ges_rente_arbeitsl_vorzeitig_mit_vertrauenss_ab_2006(vertra_arbeitsl_2006: bool, _ges_rente_arbeitsl_vorzeitig_ohne_vertrauenss: float, ges_rente_params: dict) float [source]#
Early retirement age of pension for unemployed.
Includes Vertrauensschutz rules implemented in 2006. Policy becomes inactive in 2018 because then all potential beneficiaries have reached the normal retirement age.
- Parameters:
vertra_arbeitsl_2006 – See basic input variable vertra_arbeitsl_2006.
_ges_rente_arbeitsl_vorzeitig_ohne_vertrauenss – See
_ges_rente_arbeitsl_vorzeitig_ohne_vertrauenss()
.ges_rente_params – See params documentation ges_rente_params.
- Returns:
Early retirement age for unemployed.
- ges_rente_arbeitsl_vorzeitig_ohne_vertrauenss_vor_1996(_ges_rente_arbeitsl_vorzeitig_ohne_vertrauenss: float) float [source]#
Early retirement age of pension for unemployed.
- Parameters:
_ges_rente_arbeitsl_vorzeitig_ohne_vertrauenss – See
_ges_rente_arbeitsl_vorzeitig_ohne_vertrauenss()
.- Returns:
Early retirement age for unemployed.
- ges_rente_frauen_altersgrenze(birthdate_decimal: float, ges_rente_regelaltersgrenze: float, ges_rente_params: dict) float [source]#
Full retirement age for women.
- Parameters:
birthdate_decimal – See
birthdate_decimal()
.ges_rente_regelaltersgrenze – See
ges_rente_regelaltersgrenze()
.ges_rente_params – See params documentation ges_rente_params.
- Returns:
Full retirement age for women.
- ges_rente_m_nach_grundr(ges_rente_vor_grundr_m: float, grundr_zuschlag_m: float, rentner: bool) float [source]#
Calculate total individual public pension including Grundrentenzuschlag. Is only active after 2021 when Grundrente is in place.
- Parameters:
ges_rente_vor_grundr_m – See
ges_rente_vor_grundr_m()
.grundr_zuschlag_m – See
grundr_zuschlag_m()
.rentner – See basic input variable rentner.
- ges_rente_regelaltersgrenze(geburtsjahr: int, ges_rente_params: dict) float [source]#
Normal retirement age (NRA).
The Regelaltersrente cannot be claimed earlier than at the NRA, i.e. the NRA does not serve as reference for calculating deductions. However, it serves as reference for calculating gains in the Zugangsfakor in case of later retirement.
- Parameters:
geburtsjahr – See basic input variable geburtsjahr.
ges_rente_params – See params documentation ges_rente_params.
- Returns:
Normal retirement age (NRA).
- ges_rente_vor_grundr_m(ges_rente_zugangsfaktor: float, entgeltp_ost_update: float, entgeltp_west_update: float, rentner: bool, ges_rente_params: dict) float [source]#
Old-Age Pensions claim without Grundrentenzuschlag. The function follows the following equation:
\[R = EP * ZF * Rw\]models ‘Rentenformel’: https://de.wikipedia.org/wiki/Rentenformel https://de.wikipedia.org/wiki/Rentenanpassungsformel
- Parameters:
ges_rente_zugangsfaktor – See
ges_rente_zugangsfaktor()
.entgeltp_ost_update – See
entgeltp_ost_update()
.entgeltp_west_update – See
entgeltp_west_update()
.rentner – See basic input variable rentner.
ges_rente_params – See params documentation ges_rente_params.
- ges_rente_vorauss_besond_langj(ges_rente_wartezeit_45: bool) bool [source]#
Determining the eligibility for Altersrente für besonders langjährig Versicherte (pension for very long-term insured). Wartezeit 45 years. aka “Rente mit 63”.
- Parameters:
ges_rente_wartezeit_45 – See
ges_rente_wartezeit_45()
- Returns:
Eligibility as bool.
- ges_rente_vorauss_erwerbsm(voll_erwerbsgemind: bool, teilw_erwerbsgemind: bool, m_pflichtbeitrag: float, ges_rente_wartezeit_5: bool) bool [source]#
Eligibility for Erwerbsminderungsrente (public disability insurance claim).
Legal reference: § 43 Abs. 1 SGB VI
- Parameters:
voll_erwerbsgemind – See basic input variable :ref:`voll_erwerbsgemind <voll_erwerbsgemind>.
teilw_erwerbsgemind – See basic input variable :ref:`teilw_erwerbsgemind <teilw_erwerbsgemind>.
m_pflichtbeitrag – See basic input variable :ref:`m_pflichtbeitrag <m_pflichtbeitrag>.
ges_rente_wartezeit_5 – See
ges_rente_wartezeit_5()
.
- Returns:
Eligibility for Erwerbsminderungsrente (public disability insurance claim) as a bool
- ges_rente_vorauss_frauen(weiblich: bool, ges_rente_wartezeit_15: bool, y_pflichtbeitr_ab_40: float, geburtsjahr: int, ges_rente_params: dict) bool [source]#
Eligibility for Altersrente für Frauen (pension for women).
Wartezeit 15 years, contributions for 10 years after age 40, being a woman. Policy becomes inactive in 2018 because then all potential beneficiaries have reached the normal retirement age.
- Parameters:
weiblich – See basic input variable weiblich.
ges_rente_wartezeit_15 – See
ges_rente_wartezeit_15()
y_pflichtbeitr_ab_40 – See basic input variable y_pflichtbeitr_ab_40.
geburtsjahr – See basic input variable geburtsjahr.
ges_rente_params – See params documentation ges_rente_params.
- Returns:
Eligibility as bool.
- ges_rente_vorauss_langj(ges_rente_wartezeit_35: bool) bool [source]#
Determining the eligibility for Altersrente für langjährig Versicherte (pension for long-term insured). Wartezeit 35 years and crossing the age threshold.
- Parameters:
ges_rente_wartezeit_35 – See
ges_rente_wartezeit_35()
.- Returns:
Eligibility as bool.
- ges_rente_vorauss_regelrente(ges_rente_wartezeit_5: bool) bool [source]#
Determining the eligibility for the Regelaltersrente.
- Parameters:
ges_rente_wartezeit_5 – See
ges_rente_wartezeit_5()
.- Returns:
Eligibility as bool.
- ges_rente_vorauss_vorzeitig_mit_rente_arbeitsl_frauen(ges_rente_vorauss_frauen: bool, ges_rente_vorauss_langj: bool, _ges_rente_vorauss_arbeitsl: bool) bool [source]#
Eligibility for early retirement.
Can only be claimed if eligible for “Rente für langjährig Versicherte” or “Rente für Frauen” or “Rente für Arbeitslose” (or -not yet implemented - for disabled). Policy becomes inactive in 2018 because then all potential beneficiaries of the Rente wg. Arbeitslosigkeit and Rente für Frauen have reached the normal retirement age.
- Parameters:
ges_rente_vorauss_frauen – See
ges_rente_vorauss_frauen()
.ges_rente_vorauss_langj – See
ges_rente_vorauss_langj()
._ges_rente_vorauss_arbeitsl – See
_ges_rente_vorauss_arbeitsl()
.
- Returns:
Eligibility as bool.
- ges_rente_vorauss_vorzeitig_ohne_rente_arbeitsl_frauen(ges_rente_vorauss_langj: bool) bool [source]#
Eligibility for early retirement.
Can only be claimed if eligible for “Rente für langjährig Versicherte”.
- Parameters:
ges_rente_vorauss_langj – See
ges_rente_vorauss_langj()
.- Returns:
Eligibility as bool.
- ges_rente_wartezeit_15(m_pflichtbeitrag: float, m_freiw_beitrag: float, m_ersatzzeit: float, ges_rente_params: dict) bool [source]#
Whether Wartezeit von 15 Jahren Wartezeit has been completed. Aggregates time periods that are relevant for the Altersrente für Frauen and Leistungen zur Teilhabe. Wartezeit von 15 Jahren.
- Parameters:
m_pflichtbeitrag – See basic input variable m_pflichtbeitrag.
m_freiw_beitrag – See basic input variable m_freiw_beitrag.
m_ersatzzeit – See basic input variable m_ersatzzeit.
ges_rente_params – See params documentation ges_rente_params.
- Returns:
Fulfilled Wartezeit von 15 Jahren
- ges_rente_wartezeit_35(m_pflichtbeitrag: float, m_freiw_beitrag: float, ges_rente_anrechnungszeit: float, m_ersatzzeit: float, m_kind_berücks_zeit: float, m_pfleg_berücks_zeit: float, ges_rente_params: dict) bool [source]#
Whether Wartezeit von 35 Jahren Wartezeit has been completed. Aggregates time periods that are relevant for the eligibility of Altersrente für langjährig Versicherte (pension for long-term insured). Wartezeit von 35 Jahren. All “rentenrechtliche Zeiten” are considered.
- Parameters:
m_pflichtbeitrag – See basic input variable m_pflichtbeitrag.
m_freiw_beitrag – See basic input variable m_freiw_beitrag.
m_ersatzzeit – See basic input variable m_ersatzzeit.
ges_rente_anrechnungszeit – See
ges_rente_anrechnungszeit()
m_kind_berücks_zeit – See basic input variable m_kind_berücks_zeit.
m_pfleg_berücks_zeit – See basic input variable m_pfleg_berücks_zeit
ges_rente_params – See params documentation ges_rente_params.
- Returns:
Fulfilled Wartezeit von 35 Jahren
- ges_rente_wartezeit_45(m_pflichtbeitrag: float, m_freiw_beitrag: float, ges_rente_anrechnungszeit_45: float, m_ersatzzeit: float, m_kind_berücks_zeit: float, m_pfleg_berücks_zeit: float, ges_rente_params: dict) bool [source]#
Whether Wartezeit von 45 Jahren Wartezeit has been completed. Aggregates time periods that are relevant for the eligibility of Altersrente für besonders langjährig Versicherte (pension for very long-term insured). Wartezeit von 45 Jahren. Not all “rentenrechtliche Zeiten” are considered. Years with voluntary contributions are only considered if at least 18 years of mandatory contributions (m_pflichtbeitrag). Not all ges_rente_anrechnungszeiten are considered, but only specific ones (e.g. ALG I, Kurzarbeit but not ALG II).
- Parameters:
m_pflichtbeitrag – See basic input variable m_pflichtbeitrag.
m_freiw_beitrag – See basic input variable m_freiw_beitrag.
ges_rente_anrechnungszeit_45 – See
ges_rente_anrechnungszeit_45()
.m_ersatzzeit – See basic input variable m_ersatzzeit.
m_kind_berücks_zeit – See basic input variable m_kind_berücks_zeit.
m_pfleg_berücks_zeit – See basic input variable m_pfleg_berücks_zeit.
ges_rente_params – See params documentation ges_rente_params.
- Returns:
Fulfilled Wartezeit von 45 Jahren
- ges_rente_wartezeit_5(m_pflichtbeitrag: float, m_freiw_beitrag: float, m_ersatzzeit: float, ges_rente_params: dict) bool [source]#
Whether Allgemeine Wartezeit has been completed. Aggregates time periods that are relevant for the general eligibility of the regular pension (regelaltersrente). “Allgemeine Wartezeit”.
- Parameters:
m_pflichtbeitrag – See basic input variable m_pflichtbeitrag.
m_freiw_beitrag – See basic input variable m_freiw_beitrag.
m_ersatzzeit – See basic input variable m_ersatzzeit.
ges_rente_params – See params documentation ges_rente_params.
- Returns:
Fulfilled Wartezeit von 5 Jahren.
- ges_rente_zugangsfaktor(rentner: bool, age_of_retirement: float, ges_rente_regelaltersgrenze: float, referenzalter_abschlag: float, _ges_rente_altersgrenze_abschlagsfrei: float, _ges_rente_altersgrenze_vorzeitig: float, ges_rente_vorauss_vorzeitig: bool, ges_rente_vorauss_regelrente: bool, ges_rente_params: dict) float [source]#
Zugangsfaktor (pension adjustment factor).
Factor by which the pension claim is multiplied to calculate the pension payment. The Zugangsfaktor is larger than 1 if the agent retires after the normal retirement age (NRA) and smaller than 1 if the agent retires earlier than the full retirement age (FRA).
At the regelaltersgrenze - normal retirement age (NRA), the agent is allowed to get pensions with his full claim. In general, if the agent retires earlier or later, the Zugangsfaktor and therefore the pension claim is higher or lower. The Zugangsfaktor is 1.0 in [FRA, NRA].
Legal reference: § 77 Abs. 2 Nr. 2 SGB VI
Since pension payments of the GRV always start at 1st day of month, day of birth within month does not matter. The eligibility always starts in the month after reaching the required age.
- Parameters:
rentner – See basic input variable rentner.
age_of_retirement – See
age_of_retirement()
.ges_rente_regelaltersgrenze – See
ges_rente_regelaltersgrenze()
.referenzalter_abschlag – See
referenzalter_abschlag()
._ges_rente_altersgrenze_abschlagsfrei – See
_ges_rente_altersgrenze_abschlagsfrei()
._ges_rente_altersgrenze_vorzeitig – See
_ges_rente_altersgrenze_vorzeitig()
.ges_rente_vorauss_vorzeitig – See
ges_rente_vorauss_vorzeitig()
.ges_rente_vorauss_regelrente – See
ges_rente_vorauss_regelrente()
.ges_rente_params – See params documentation ges_rente_params.
- Returns:
Zugangsfaktor
- ges_rentenv_beitr_arbeitg_m_mit_midijob(geringfügig_beschäftigt: bool, _ges_rentenv_beitr_midijob_arbeitg_m: float, _ges_rentenv_beitr_bruttolohn_m: float, sozialv_beitr_params: dict, in_gleitzone: bool, bruttolohn_m: float) float [source]#
Employer’s public pension insurance contribution.
- Parameters:
geringfügig_beschäftigt – See
geringfügig_beschäftigt()
._ges_rentenv_beitr_midijob_arbeitg_m – See
_ges_rentenv_beitr_midijob_arbeitg_m()
._ges_rentenv_beitr_bruttolohn_m – See
_ges_rentenv_beitr_bruttolohn_m()
.sozialv_beitr_params – See params documentation sozialv_beitr_params.
in_gleitzone – See
in_gleitzone()
.bruttolohn_m – See basic input variable bruttolohn_m.
- ges_rentenv_beitr_arbeitg_m_vor_midijob(geringfügig_beschäftigt: bool, _ges_rentenv_beitr_bruttolohn_m: float, sozialv_beitr_params: dict, bruttolohn_m: float) float [source]#
Employer’s public pension insurance contribution.
- Parameters:
geringfügig_beschäftigt – See
geringfügig_beschäftigt()
._ges_rentenv_beitr_bruttolohn_m – See
_ges_rentenv_beitr_bruttolohn_m()
.sozialv_beitr_params – See params documentation sozialv_beitr_params.
bruttolohn_m – See basic input variable bruttolohn_m.
- ges_rentenv_beitr_m_mit_midijob(geringfügig_beschäftigt: bool, _ges_rentenv_beitr_midijob_arbeitn_m: float, _ges_rentenv_beitr_bruttolohn_m: float, sozialv_beitr_params: dict, in_gleitzone: bool) float [source]#
Employee’s public pension insurance contribution.
- Parameters:
geringfügig_beschäftigt – See
geringfügig_beschäftigt()
._ges_rentenv_beitr_midijob_arbeitn_m – See
_ges_rentenv_beitr_midijob_arbeitn_m()
._ges_rentenv_beitr_bruttolohn_m – See
_ges_rentenv_beitr_bruttolohn_m()
.sozialv_beitr_params – See params documentation sozialv_beitr_params.
in_gleitzone – See
in_gleitzone()
.
- ges_rentenv_beitr_m_vor_midijob(geringfügig_beschäftigt: bool, _ges_rentenv_beitr_bruttolohn_m: float, sozialv_beitr_params: dict) float [source]#
Employee’s public pension insurance contribution.
- Parameters:
geringfügig_beschäftigt – See
geringfügig_beschäftigt()
._ges_rentenv_beitr_bruttolohn_m – See
_ges_rentenv_beitr_bruttolohn_m()
.sozialv_beitr_params – See params documentation sozialv_beitr_params.
- grundr_berechtigt(grundr_zeiten: int, ges_rente_params: dict) bool [source]#
Whether person has accumulated enough insured years to be eligible.
- Parameters:
grundr_zeiten – See
grundr_zeiten()
.ges_rente_params – See params documentation ges_rente_params.
- grundr_bew_zeiten_avg_entgeltp(grundr_entgeltp: float, grundr_bew_zeiten: int) float [source]#
Compute average number of Entgeltpunkte earned per month of Grundrentenbewertungszeiten.
- Parameters:
grundr_entgeltp – See basic input variable grundr_entgeltp.
grundr_bew_zeiten – See basic input variable grundr_bew_zeiten.
- grundr_zuschlag_bonus_entgeltp(grundr_bew_zeiten_avg_entgeltp: float, grundr_zuschlag_höchstwert_m: float, grundr_zeiten: int, ges_rente_params: dict) float [source]#
Calculate additional Entgeltpunkte for pensioner.
In general, the average of monthly Entgeltpunkte earnd in Grundrentenzeiten is doubled, or extended to the individual Höchstwert if doubling would exceed the Höchstwert. Then, the value is multiplied by 0.875.
Legal reference: § 76g SGB VI
- Parameters:
grundr_bew_zeiten_avg_entgeltp – See
grundr_bew_zeiten_avg_entgeltp()
.grundr_zuschlag_höchstwert_m – See
grundr_zuschlag_höchstwert_m()
.grundr_zeiten – See basic input variable grundr_zeiten.
ges_rente_params – See params documentation ges_rente_params.
- grundr_zuschlag_eink_m(_grundr_zuschlag_eink_vor_freibetrag_m_ehe: float, p_id_ehepartner: int, rentenwert: float, ges_rente_params: dict) float [source]#
Calculate income which is deducted from Grundrentenzuschlag.
Apply allowances. There are upper and lower thresholds for singles and couples. 60% of income between the upper and lower threshold is credited against the Grundrentenzuschlag. All the income above the upper threshold is credited against the Grundrentenzuschlag.
Reference: § 97a Abs. 4 S. 2, 4 SGB VI
- Parameters:
_grundr_zuschlag_eink_vor_freibetrag_m_ehe – See
_grundr_zuschlag_eink_vor_freibetrag_m_ehe()
.p_id_ehepartner – See
p_id_ehepartner()
.rentenwert – See
rentenwert()
.ges_rente_params – See params documentation ges_rente_params.
- grundr_zuschlag_höchstwert_m(grundr_zeiten: int, ges_rente_params: dict) float [source]#
Calculate the maximum allowed number of average Entgeltpunkte (per month) after adding bonus of Entgeltpunkte for a given number of Grundrentenzeiten.
- Parameters:
grundr_zeiten – See basic input variable grundr_zeiten.
ges_rente_params – See params documentation ges_rente_params.
- grundr_zuschlag_m(grundr_zuschlag_vor_eink_anr_m: float, grundr_zuschlag_eink_m: float) float [source]#
Calculate Grundrentenzuschlag (additional monthly pensions payments resulting from Grundrente)
- Parameters:
grundr_zuschlag_vor_eink_anr_m – See
grundr_zuschlag_vor_eink_anr_m()
.grundr_zuschlag_eink_m – See
grundr_zuschlag_eink_m()
.
- grundr_zuschlag_vor_eink_anr_m(grundr_zuschlag_bonus_entgeltp: float, grundr_bew_zeiten: int, rentenwert: float, ges_rente_zugangsfaktor: float, ges_rente_params: dict) float [source]#
Calculate additional monthly pensions payments resulting from Grundrente, without taking into account income crediting rules.
The Zugangsfaktor is limited to 1 and considered Grundrentezeiten are limited to 35 years (420 months).
- Parameters:
grundr_zuschlag_bonus_entgeltp – See
grundr_zuschlag_bonus_entgeltp()
.grundr_bew_zeiten – See basic input variable grundr_bew_zeiten.
rentenwert – See
rentenwert()
.ges_rente_zugangsfaktor – See
ges_rente_zugangsfaktor()
.ges_rente_params – See params documentation ges_rente_params.
- grunds_im_alter_eink_m(grunds_im_alter_erwerbseink_m: float, grunds_im_alter_priv_rente_m: float, grunds_im_alter_ges_rente_m: float, sonstig_eink_m: float, eink_vermietung_m: float, _grunds_im_alter_kapitaleink_brutto_m: float, eink_st_y_sn: float, soli_st_y_sn: float, anz_personen_sn: int, sozialv_beitr_m: float, elterngeld_anr_m: float) float [source]#
Calculate individual income considered in the calculation of Grundsicherung im Alter.
- Parameters:
grunds_im_alter_erwerbseink_m – See
grunds_im_alter_erwerbseink_m()
.grunds_im_alter_priv_rente_m – See
grunds_im_alter_priv_rente_m()
.grunds_im_alter_ges_rente_m – See
grunds_im_alter_ges_rente_m()
.sonstig_eink_m – See
sonstig_eink_m()
.eink_vermietung_m – See
eink_vermietung_m()
._grunds_im_alter_kapitaleink_brutto_m – See
_grunds_im_alter_kapitaleink_brutto_m()
.eink_st_y_sn – See
eink_st_y_sn()
.soli_st_y_sn – See
soli_st_y_sn()
.anz_personen_sn – See
anz_personen_sn()
.sozialv_beitr_m – See
sozialv_beitr_m()
.elterngeld_anr_m – See
elterngeld_anr_m()
.
- grunds_im_alter_erwerbseink_m(bruttolohn_m: float, eink_selbst_m: float, arbeitsl_geld_2_params: dict, grunds_im_alter_params: dict) float [source]#
Calculate individual earnings considered in the calculation of Grundsicherung im Alter.
Legal reference: § 82 SGB XII Abs. 3
Note: Freibeträge for income are currently not considered Note: the cap at 1/2 of Regelbedarf was only introduced in 2006 (which is currently not implemented): https://www.buzer.de/gesetz/3415/al3764-0.htm
- Parameters:
bruttolohn_m – See basic input variable bruttolohn_m.
eink_selbst_m – See basic input variable eink_selbst_m.
arbeitsl_geld_2_params – See params documentation arbeitsl_geld_2_params.
grunds_im_alter_params – See params documentation grunds_im_alter_params.
- grunds_im_alter_ges_rente_m_ab_2021(ges_rente_m: float, grundr_berechtigt: bool, arbeitsl_geld_2_params: dict, grunds_im_alter_params: dict) float [source]#
Calculate individual public pension benefits which are considered in the calculation of Grundsicherung im Alter since 2021.
Starting from 2021: If eligible for Grundrente, can deduct 100€ completely and 30% of private pension above 100 (but no more than 1/2 of regelbedarf)
- Parameters:
ges_rente_m – See basic input variable ges_rente_m.
grundr_berechtigt – See
grundr_berechtigt()
.arbeitsl_geld_2_params – See params documentation arbeitsl_geld_2_params.
grunds_im_alter_params – See params documentation grunds_im_alter_params.
- grunds_im_alter_ges_rente_m_bis_2020(ges_rente_m: float) float [source]#
Calculate individual public pension benefits which are considered in the calculation of Grundsicherung im Alter until 2020.
Until 2020: No deduction is possible.
- Parameters:
ges_rente_m – See basic input variable ges_rente_m.
- grunds_im_alter_m_eg(arbeitsl_geld_2_regelbedarf_m_bg: float, _grunds_im_alter_mehrbedarf_schwerbeh_g_m_eg: float, kindergeld_m_eg: float, kind_unterh_erhalt_m_eg: float, unterhaltsvors_m_eg: float, grunds_im_alter_eink_m_eg: float, erwachsene_alle_rentner_hh: bool, vermögen_bedürft_eg: float, grunds_im_alter_vermög_freib_eg: float, anz_kinder_eg: int, anz_personen_eg: int) float [source]#
Calculate Grundsicherung im Alter on household level.
# ToDo: There is no check for Wohngeld included as Wohngeld is # ToDo: currently not implemented for retirees.
- Parameters:
arbeitsl_geld_2_regelbedarf_m_bg – See
arbeitsl_geld_2_regelbedarf_m_bg()
._grunds_im_alter_mehrbedarf_schwerbeh_g_m_eg – See
_grunds_im_alter_mehrbedarf_schwerbeh_g_m_eg()
.kindergeld_m_eg – See
kindergeld_m_eg()
.kind_unterh_erhalt_m_eg – See basic input variable kind_unterh_erhalt_m_eg.
unterhaltsvors_m_eg – See
unterhaltsvors_m_eg()
.grunds_im_alter_eink_m_eg – See
grunds_im_alter_eink_m_eg()
.erwachsene_alle_rentner_hh – See
erwachsene_alle_rentner_hh()
.vermögen_bedürft_eg – See basic input variable vermögen_bedürft_eg.
grunds_im_alter_vermög_freib_eg – See
grunds_im_alter_vermög_freib_eg()
.anz_kinder_eg – See
anz_kinder_eg()
.anz_personen_eg – See
anz_personen_eg()
.
- grunds_im_alter_priv_rente_m(priv_rente_m: float, arbeitsl_geld_2_params: dict, grunds_im_alter_params: dict) float [source]#
Calculate individual private pension benefits considered in the calculation of Grundsicherung im Alter.
Legal reference: § 82 SGB XII Abs. 4
- Parameters:
priv_rente_m – See basic input variable priv_rente_m.
arbeitsl_geld_2_params – See params documentation arbeitsl_geld_2_params.
grunds_im_alter_params – See params documentation grunds_im_alter_params.
- grunds_im_alter_vermög_freib_eg(anz_erwachsene_fg: int, anz_kinder_fg: int, grunds_im_alter_params: dict) float [source]#
Calculate wealth not considered for Grundsicherung im Alter on household level.
- Parameters:
anz_erwachsene_fg – See
anz_erwachsene_fg()
.anz_kinder_fg – See
anz_kinder_fg()
.grunds_im_alter_params – See params documentation grunds_im_alter_params.
- heizkosten_m_bg(heizkosten_m_hh: float, _anteil_personen_in_haushalt_bg: float) float [source]#
Share of household’s heating expenses attributed to the Bedarfsgemeinschaft.
Reference: BSG Urteil v. 09.03.2016 - B 14 KG 1/15 R. BSG Urteil vom 15.04.2008 - B 14/7b AS 58/06 R.
- Parameters:
heizkosten_m_hh – See basic input variable heizkosten_m_hh.
_anteil_personen_in_haushalt_bg – See
_anteil_personen_in_haushalt_bg()
.
- in_gleitzone(bruttolohn_m: float, geringfügig_beschäftigt: bool, sozialv_beitr_params: dict) bool [source]#
Check if individual’s income is in midi-job range.
Employed people with their wage in the range of gleitzone pay reduced social insurance contributions.
Legal reference: § 20 Abs. 2 SGB IV
- Parameters:
bruttolohn_m – See basic input variable bruttolohn_m.
geringfügig_beschäftigt – See
geringfügig_beschäftigt()
.sozialv_beitr_params – See params documentation sozialv_beitr_params.
- Returns:
Whether individual’s income is in midi-job range.
- join_numpy(foreign_key: numpy.ndarray.~Key, primary_key: numpy.ndarray.~Key, target: numpy.ndarray.~Out, value_if_foreign_key_is_missing: ~_gettsim.shared.Out) numpy.ndarray.~Out [source]#
Given a foreign key, find the corresponding primary key, and return the target at the same index as the primary key.
- Parameters:
foreign_key (numpy.ndarray[Key]) – The foreign keys.
primary_key (numpy.ndarray[Key]) – The primary keys.
target (numpy.ndarray[Out]) – The targets in the same order as the primary keys.
value_if_foreign_key_is_missing (Out) – The value to return if no matching primary key is found.
- Returns:
numpy.ndarray[Out] – The joined array.
- jüngstes_kind_oder_mehrling(alter_monate: float, alter_monate_jüngstes_mitglied_hh: float, kind: bool) bool [source]#
Check if person is the youngest child in the household or a twin, triplet, etc. of the youngest child.
# ToDo: replace kind by some age restriction # ToDo: Check definition as relevant for Elterngeld. Currently, it is calculated as # ToDo: age not being larger than 0.1 of a month
- Parameters:
alter_monate – See
alter_monate()
.alter_monate_jüngstes_mitglied_hh – See
alter_monate_jüngstes_mitglied_hh()
.kind – See basic input variable kind.
- kapitaleink_brutto_y(kapitaleink_brutto_m: float) float [source]#
Aggregate monthly gross capital income to yearly income.
- Parameters:
kapitaleink_brutto_m – See basic input variable kapitaleink_brutto_m.
- kapitaleink_y(kapitaleink_brutto_y: float, eink_st_abzuege_params: dict) float [source]#
Capital income minus Sparerpauschbetrag.
- Parameters:
kapitaleink_brutto_y – See
kapitaleink_brutto_y()
.eink_st_abzuege_params – See params documentation eink_st_abzuege_params.
- kind_ab_14_bis_17(alter: int, kind: bool) bool [source]#
Calculate if child between 14 and 17 years old. :param alter: See basic input variable alter. :param kind: See basic input variable kind.
- kind_ab_14_bis_24(alter: int, kind: bool) bool [source]#
Calculate if child between 14 and 24 years old.
- kind_ab_18_bis_24(alter: int, kind: bool) bool [source]#
Calculate if child between 18 and 24 years old. :param alter: See basic input variable alter. :param kind: See basic input variable kind.
- kind_ab_6_bis_13(alter: int, kind: bool) bool [source]#
Calculate if child between 6 and 13 years old.
- kind_bis_10_mit_kindergeld(alter: int, kindergeld_anspruch: bool) bool [source]#
Child under the age of 11 and eligible for Kindergeld.
- Parameters:
alter – See basic input variable alter.
kindergeld_anspruch – See
kindergeld_anspruch_nach_stunden()
.
- kind_unterh_zahlbetr_m(kind_unterh_anspr_m: float, kindergeld_m: float, unterhalt_params: dict, kind: bool) float [source]#
Monthly actual child alimony payments to be received after deductions.
- Parameters:
kind_unterh_anspr_m – See basic input variable kind_unterh_anspr_m.
kindergeld_m – See
kindergeld_m()
.unterhalt_params – See params documentation unterhalt_params.
kind – See basic input variable kind.
- kinderbonus_m(kindergeld_m: float, kindergeld_params: dict) float [source]#
Calculate Kinderbonus for an individual child.
(one-time payment, non-allowable against transfer payments)
- Parameters:
kindergeld_m – See
kindergeld_m()
.kindergeld_params – See params documentation kindergeld_params.
- kinderfreib_für_soli_st_lohnst_y(steuerklasse: int, _eink_st_kinderfreib_anz_ansprüche: int, eink_st_abzuege_params: dict) float [source]#
Calculate Child Allowance for Lohnsteuer-Soli.
For the purpose of Soli on Lohnsteuer, the child allowance not only depends on the number of children, but also on the steuerklasse
- kinderfreib_günstiger_sn(eink_st_ohne_kinderfreib_y_sn: float, eink_st_mit_kinderfreib_y_sn: float, eink_st_rel_kindergeld_y_sn: float) bool [source]#
Kinderfreibetrag more favorable than Kindergeld.
- Parameters:
eink_st_ohne_kinderfreib_y_sn – See
eink_st_ohne_kinderfreib_y_sn()
.eink_st_mit_kinderfreib_y_sn – See
eink_st_mit_kinderfreib_y_sn()
.eink_st_rel_kindergeld_y_sn – See
eink_st_rel_kindergeld_y_sn()
.
- kindergeld_anspruch_nach_lohn(alter: int, in_ausbildung: bool, bruttolohn_m: float, kindergeld_params: dict) bool [source]#
Determine kindergeld eligibility for an individual child depending on kids wage.
Until 2011, there was an income ceiling for children returns a boolean variable whether a specific person is a child eligible for child benefit
- Parameters:
alter – See basic input variable alter.
kindergeld_params – See params documentation kindergeld_params.
in_ausbildung – See basic input variable in_ausbildung.
bruttolohn_m – See basic input variable bruttolohn_m.
- kindergeld_anspruch_nach_stunden(alter: int, in_ausbildung: bool, arbeitsstunden_w: float, kindergeld_params: dict) bool [source]#
Determine kindergeld eligibility for an individual child depending on working hours.
The current eligibility rule is, that kids must not work more than 20 hour and are below 25.
- Parameters:
alter – See basic input variable alter.
in_ausbildung – See
in_ausbildung()
.arbeitsstunden_w – See
arbeitsstunden_w()
.kindergeld_params – See params documentation kindergeld_params.
- Returns:
Boolean indiciating kindergeld eligibility.
- kindergeld_gestaffelt_m(kindergeld_anz_ansprüche: int, kindergeld_params: dict) float [source]#
Sum of Kindergeld for eligible children.
Kindergeld claim for each child depends on the number of children Kindergeld is being claimed for.
- Parameters:
kindergeld_anz_ansprüche – See
kindergeld_anz_ansprüche()
.kindergeld_params – See params documentation kindergeld_params.
- kindergeld_ohne_staffelung_m(kindergeld_anz_ansprüche: int, kindergeld_params: dict) float [source]#
Sum of Kindergeld for eligible children.
Kindergeld claim is the same for each child, i.e. increases linearly with the number of children.
- Parameters:
kindergeld_anz_ansprüche – See
kindergeld_anz_ansprüche()
.kindergeld_params – See params documentation kindergeld_params.
- kindergeld_zur_bedarfsdeckung_m(_mean_kindergeld_per_child_m: float, p_id_kindergeld_empf: numpy.ndarray.<class 'int'>, p_id: numpy.ndarray.<class 'int'>) numpy.ndarray.<class 'float'> [source]#
Kindergeld that is used to cover the SGB II Regelbedarf of the child.
Even though the Kindergeld is paid to the parent (see function
kindergeld_m()
), the child that gives rise to the Kindergeld claim is entitled to it to cover its needs (§ 11 Abs. 1 Satz 5 SGB II). The amount of Kindergeld for which the child is entitled to is the sum of the Kindergeld for all children divided by the amount of children. Hence, the age of the child (in comparison to siblings) does not matter.- Parameters:
kindergeld_m – See
kindergeld_m()
.p_id_kindergeld_empf – See
p_id_kindergeld_empf()
.p_id – See
p_id()
.
- kinderzuschl_bruttoeink_eltern_m(arbeitsl_geld_2_bruttoeink_m: float, kindergeld_anspruch: bool, erwachsen: bool) float [source]#
Calculate parental gross income for calculation of child benefit.
This variable is used to check whether the minimum income threshold for child benefit is met.
- Parameters:
arbeitsl_geld_2_bruttoeink_m – See
arbeitsl_geld_2_bruttoeink_m()
.kindergeld_anspruch – See
kindergeld_anspruch()
.erwachsen – See basic input variable erwachsen.
- kinderzuschl_eink_anrechn_m_bg(kinderzuschl_eink_eltern_m_bg: float, kinderzuschl_eink_relev_m_bg: float, kinderzuschl_params: dict) float [source]#
Calculate parental income subtracted from child benefit.
(§6a (6) S. 3 BKGG)
- Parameters:
kinderzuschl_eink_eltern_m_bg – See
kinderzuschl_eink_eltern_m_bg()
.kinderzuschl_eink_relev_m_bg – See
kinderzuschl_eink_relev_m_bg()
.kinderzuschl_params – See params documentation kinderzuschl_params.
- kinderzuschl_eink_eltern_m(_arbeitsl_geld_2_nettoeink_ohne_transfers_m: float, kindergeld_anspruch: bool, erwachsen: bool) float [source]#
Parental income (after deduction of taxes, social insurance contributions, and other deductions) for calculation of child benefit.
- Parameters:
_arbeitsl_geld_2_nettoeink_ohne_transfers_m – See
_arbeitsl_geld_2_nettoeink_ohne_transfers_m()
.kindergeld_anspruch – See
kindergeld_anspruch()
.erwachsen – See basic input variable erwachsen.
- kinderzuschl_eink_max_m_bg(kinderzuschl_eink_relev_m_bg: float, _kinderzuschl_anz_kinder_anspruch_bg: int, kinderzuschl_params: dict) float [source]#
Calculate maximum income to be eligible for additional child benefit (Kinderzuschlag).
There is a maximum income threshold, depending on the need, plus the potential kiz receipt (§6a (1) Nr. 3 BKGG).
- Parameters:
kinderzuschl_eink_relev_m_bg – See
kinderzuschl_eink_relev_m_bg()
._kinderzuschl_anz_kinder_anspruch_bg – See
_kinderzuschl_anz_kinder_anspruch_bg()
.kinderzuschl_params – See params documentation kinderzuschl_params.
- kinderzuschl_eink_min_m_bg(_kinderzuschl_anz_kinder_anspruch_bg: int, alleinerz_bg: bool, kinderzuschl_params: dict) float [source]#
Calculate minimal claim of child benefit (kinderzuschlag).
Min income to be eligible for KIZ (different for singles and couples) (§6a (1) Nr. 2 BKGG).
- Parameters:
_kinderzuschl_anz_kinder_anspruch_bg – See
_kinderzuschl_anz_kinder_anspruch_bg
.alleinerz_bg – See basic input variable alleinerz_bg.
kinderzuschl_params – See params documentation kinderzuschl_params.
- kinderzuschl_eink_regel_m_bg(_arbeitsl_geld_2_alleinerz_mehrbedarf_m_bg: float, alleinerz_bg: bool, arbeitsl_geld_2_params: dict) float [source]#
Calculate income relevant for calculation of child benefit since 2011.
- Parameters:
_arbeitsl_geld_2_alleinerz_mehrbedarf_m_bg – See
_arbeitsl_geld_2_alleinerz_mehrbedarf_m_bg()
.alleinerz_bg – See
alleinerz_bg()
.arbeitsl_geld_2_params – See params documentation arbeitsl_geld_2_params.
- kinderzuschl_eink_regel_m_bg_arbeitsl_geld_2_params_old(_arbeitsl_geld_2_alleinerz_mehrbedarf_m_bg: float, alleinerz_bg: bool, arbeitsl_geld_2_params: dict) float [source]#
Calculate income relevant for calculation of child benefit until 2010.
- Parameters:
_arbeitsl_geld_2_alleinerz_mehrbedarf_m_bg – See
_arbeitsl_geld_2_alleinerz_mehrbedarf_m_bg()
.alleinerz_bg – See
alleinerz_bg()
.arbeitsl_geld_2_params – See params documentation arbeitsl_geld_2_params.
- kinderzuschl_eink_relev_m_bg(kinderzuschl_eink_regel_m_bg: float, kinderzuschl_kost_unterk_m_bg: float) float [source]#
Aggregate relevant income and rental costs.
- Parameters:
kinderzuschl_eink_regel_m_bg – See
kinderzuschl_eink_regel_m_bg()
.kinderzuschl_kost_unterk_m_bg – See
kinderzuschl_kost_unterk_m_bg()
.
- kinderzuschl_kindereink_abzug_m(kindergeld_anspruch: bool, bruttolohn_m: float, kind_unterh_erhalt_m: float, unterhaltsvors_m: float, arbeitsl_geld_2_eink_anr_frei_m: float, kinderzuschl_params: dict) float [source]#
Child benefit after children income for each eligible child is considered.
(§6a (3) S.3 BKGG)
- Parameters:
kindergeld_anspruch – See
kindergeld_anspruch()
.bruttolohn_m – See basic input variable bruttolohn_m.
kind_unterh_erhalt_m – See basic input variable kind_unterh_erhalt_m.
unterhaltsvors_m – See
unterhaltsvors_m()
.arbeitsl_geld_2_eink_anr_frei_m – See
arbeitsl_geld_2_eink_anr_frei_m()
.kinderzuschl_params – See params documentation kinderzuschl_params.
- kinderzuschl_kost_unterk_m_bg(_kinderzuschl_wohnbedarf_eltern_anteil_bg: float, bruttokaltmiete_m_bg: float, heizkosten_m_bg: float) float [source]#
Calculate costs of living eligible to claim.
Unlike ALG2, there is no check on whether living costs are “appropriate”.
- Parameters:
_kinderzuschl_wohnbedarf_eltern_anteil_bg – See
_kinderzuschl_wohnbedarf_eltern_anteil_bg()
.bruttokaltmiete_m_bg – See
bruttokaltmiete_m_bg()
.heizkosten_m_bg – See
heizkosten_m_bg()
.
- kinderzuschl_m_bg(_kinderzuschl_nach_vermög_check_m_bg: float, kinderzuschl_vorrang_bg: bool, wohngeld_kinderzuschl_vorrang_hh: bool, anz_rentner_hh: int) float [source]#
Aggregate child benefit on household level.
- Parameters:
_kinderzuschl_nach_vermög_check_m_bg – See
_kinderzuschl_nach_vermög_check_m_bg()
.kinderzuschl_vorrang_bg – See
kinderzuschl_vorrang_bg()
.wohngeld_kinderzuschl_vorrang_hh – See
wohngeld_kinderzuschl_vorrang_hh()
.anz_rentner_hh – See
anz_rentner_hh()
.
- kinderzuschl_vermög_freib_bg_ab_2023(_arbeitsl_geld_2_vermög_freib_karenzz_bg: float) float [source]#
Wealth exemptions for Kinderzuschlag since 2023.
- Parameters:
_arbeitsl_geld_2_vermög_freib_karenzz_bg – See
_arbeitsl_geld_2_vermög_freib_karenzz_bg()
.
- kinderzuschl_vermög_freib_bg_bis_2022(arbeitsl_geld_2_vermög_freib_bg: float) float [source]#
Wealth exemptions for Kinderzuschlag until 2022.
- Parameters:
arbeitsl_geld_2_vermög_freib_bg – See
arbeitsl_geld_2_vermög_freib_bg()
.
- kinderzuschl_vorrang_bg(_kinderzuschl_nach_vermög_check_m_bg: float, arbeitsl_geld_2_vor_vorrang_m_bg: float) bool [source]#
Check if child benefit has priority.
- Parameters:
_kinderzuschl_nach_vermög_check_m_bg – See
_kinderzuschl_nach_vermög_check_m_bg()
.arbeitsl_geld_2_vor_vorrang_m_bg – See
arbeitsl_geld_2_vor_vorrang_m_bg()
.
- lohnst_eink_y(bruttolohn_m: float, steuerklasse: int, eink_st_abzuege_params: dict, vorsorgepauschale_y: float) float [source]#
Calculate tax base for Lohnsteuer (withholding tax on earnings).
- Parameters:
bruttolohn_m – See basic input variable bruttolohn_m.
steuerklasse – See
steuerklasse()
eink_st_abzuege_params – See
eink_st_abzuege_params()
vorsorgepauschale_y – See
vorsorgepauschale_y()
- lohnst_m(lohnst_eink_y: float, eink_st_params: dict, lohnst_params: dict, steuerklasse: int) float [source]#
Calls _lohnst_m with individual income
- lohnst_mit_kinderfreib_m(lohnst_eink_y: float, kinderfreib_für_soli_st_lohnst_y: float, eink_st_params: dict, lohnst_params: dict, steuerklasse: int) float [source]#
Same as lohnst_m, but with an alternative income definition that takes child allowance into account. Important only for calculation of soli on Lohnsteuer!
- midijob_bemessungsentgelt_m_ab_10_2022(bruttolohn_m: float, midijob_faktor_f: float, minijob_grenze: float, sozialv_beitr_params: dict) float [source]#
Total income subject to social insurance contributions for employers a and employees for midijob since October 2022. In the law, the considered income is referred to as “beitragspflichtige Einnahme”.
Beitragspflichtige Einnahme is the reference income for midijobs subject to employer and employee social insurance contribution.
Legal reference: Changes in § 20 SGB IV from 01.10.2022
- Parameters:
bruttolohn_m – See basic input variable bruttolohn_m.
midijob_faktor_f – See
midijob_faktor_f()
.minijob_grenze – See
minijob_grenze()
.sozialv_beitr_params – See params documentation sozialv_beitr_params.
- Returns:
Income subject to social insurance contributions for midijob.
- midijob_bemessungsentgelt_m_bis_09_2022(bruttolohn_m: float, midijob_faktor_f: float, minijob_grenze: float, sozialv_beitr_params: dict) float [source]#
Income subject to social insurance contributions for midijob until September 2022.
Bemessungsgeld (Gleitzonenentgelt) is the reference income for midijobs subject to social insurance contribution.
Legal reference: § 163 Abs. 10 SGB VI
- Parameters:
bruttolohn_m – See basic input variable bruttolohn_m.
midijob_faktor_f – See
midijob_faktor_f()
.minijob_grenze – See
minijob_grenze()
.sozialv_beitr_params – See params documentation sozialv_beitr_params.
- Returns:
Income subject to social insurance contributions for midijob.
- midijob_faktor_f_mit_minijob_steuerpauschale_ab_2005(sozialv_beitr_params: dict, _ges_krankenv_beitr_satz_jahresanfang: float, _ges_krankenv_beitr_satz_arbeitg_jahresanfang: float) float [source]#
Midijob Faktor F between 2005 and September 2025.
Legal reference: § 163 Abs. 10 SGB VI
- Parameters:
sozialv_beitr_params – See params documentation sozialv_beitr_params.
_ges_krankenv_beitr_satz_jahresanfang – See
_ges_krankenv_beitr_satz_jahresanfang()
._ges_krankenv_beitr_satz_arbeitg_jahresanfang – See
_ges_krankenv_beitr_satz_arbeitg_jahresanfang()
.
- Returns:
Income subject to social insurance contributions for midijob.
- midijob_faktor_f_mit_minijob_steuerpauschale_bis_2004(sozialv_beitr_params: dict, _ges_krankenv_beitr_satz_jahresanfang: float, _ges_krankenv_beitr_satz_arbeitg_jahresanfang: float) float [source]#
Midijob Faktor F until December 2004.
Legal reference: § 163 Abs. 10 SGB VI
- Parameters:
sozialv_beitr_params – See params documentation sozialv_beitr_params.
_ges_krankenv_beitr_satz_jahresanfang – See
_ges_krankenv_beitr_satz_jahresanfang()
._ges_krankenv_beitr_satz_arbeitg_jahresanfang – See
_ges_krankenv_beitr_satz_arbeitg_jahresanfang()
.
- Returns:
Income subject to social insurance contributions for midijob.
- midijob_faktor_f_ohne_minijob_steuerpauschale(sozialv_beitr_params: dict, _ges_krankenv_beitr_satz_jahresanfang: float, _ges_krankenv_beitr_satz_arbeitg_jahresanfang: float) float [source]#
Midijob Faktor F since October 2022.
Legal reference: § 163 Abs. 10 SGB VI
- Parameters:
sozialv_beitr_params – See params documentation sozialv_beitr_params.
_ges_krankenv_beitr_satz_jahresanfang – See
_ges_krankenv_beitr_satz_jahresanfang()
._ges_krankenv_beitr_satz_arbeitg_jahresanfang – See
_ges_krankenv_beitr_satz_arbeitg_jahresanfang()
.
- Returns:
Income subject to social insurance contributions for midijob.
- minijob_grenze_einheitlich(sozialv_beitr_params: dict) float [source]#
Select the income threshold depending on place of living.
- Parameters:
sozialv_beitr_params – See params documentation sozialv_beitr_params.
- minijob_grenze_from_minimum_wage(sozialv_beitr_params: dict) float [source]#
Obtains marginal job threshold since 10/2022. Since then, it is calculated from the statutory minimum wage.
- Parameters:
sozialv_beitr_params – See params documentation sozialv_beitr_params.
- Returns:
Marginal Job Threshold
- minijob_grenze_unterscheidung_ost_west(wohnort_ost: bool, sozialv_beitr_params: dict) float [source]#
Select the income threshold depending on place of living.
- Parameters:
wohnort_ost – See basic input variable wohnort_ost.
sozialv_beitr_params – See params documentation sozialv_beitr_params.
- p_id_kinderfreib_empfänger_1(p_id_elternteil_1: int) int [source]#
Assigns child allowance to parent 1.
- Parameters:
p_id_elternteil_1 – See
p_id_elternteil_1()
.
- p_id_kinderfreib_empfänger_2(p_id_elternteil_2: int) int [source]#
Assigns child allowance to parent 2.
- Parameters:
p_id_elternteil_2 – See
p_id_elternteil_2()
.
- parent_alleinerz(p_id_kindergeld_empf: numpy.ndarray.<class 'int'>, p_id: numpy.ndarray.<class 'int'>, alleinerz: numpy.ndarray.<class 'bool'>) numpy.ndarray.<class 'bool'> [source]#
Check if parent that receives Unterhaltsvorschuss is a single parent.
Only single parents receive Unterhaltsvorschuss.
- Parameters:
p_id_kindergeld_empf – See basic input variable p_id_kindergeld_empf.
p_id – See basic input variable p_id.
alleinerz – See basic input variable alleinerz.
- piecewise_polynomial(x, thresholds, rates, intercepts_at_lower_thresholds, rates_multiplier=None)[source]#
Calculate value of the piecewise function at x.
- Parameters:
x (pd.Series) – Series with values which piecewise polynomial is applied to.
thresholds (numpy.array) – A one-dimensional array containing the thresholds for all intervals.
rates (numpy.ndarray) – A two-dimensional array where columns are interval sections and rows correspond to the nth polynomial.
intercepts_at_lower_thresholds (numpy.ndarray) – The intercepts at the lower threshold of each interval.
rates_multiplier (pd.Series, float) – Multiplier to create individual or scaled rates. If given and not equal to 1, the function also calculates new intercepts.
- Returns:
out (float) – The value of x under the piecewise function.
- policy_info(*, start_date: str = '0001-01-01', end_date: str = '9999-12-31', name_in_dag: str | None = None, params_key_for_rounding: str | None = None, skip_vectorization: bool = False) Callable [source]#
A decorator to attach additional information to a policy function.
Dates active (start_date, end_date, name_in_dag):
Specifies that a function is only active between two dates, start and end. By using the change_name argument, you can specify a different name for the function in the DAG.
Note that even if you use this decorator with the change_name argument, you must ensure that the function name is unique in the file where it is defined. Otherwise, the function would be overwritten by the last function with the same name.
Rounding spec (params_key_for_rounding):
Adds the location of the rounding specification to a function.
- Parameters:
start_date – The start date (inclusive) in the format YYYY-MM-DD (part of ISO 8601).
end_date – The end date (inclusive) in the format YYYY-MM-DD (part of ISO 8601).
name_in_dag – The name that should be used as the key for the function in the DAG. If omitted, we use the name of the function as defined.
params_key_for_rounding – Key of the parameters dictionary where rounding specifications are found. For functions that are not user-written this is just the name of the respective .yaml file.
skip_vectorization – Whether the function is already vectorized and, thus, should not be vectorized again.
- Returns:
The function with attributes __info__[“start_date”],
__info__[“end_date”], __info__[“name_in_dag”], and
__info__[“params_key_for_rounding”].
- regulär_beschäftigt_mit_midijob(bruttolohn_m: float, sozialv_beitr_params: dict) bool [source]#
Regular employment check since April 2003.
Employees earning more than the midijob threshold, are subject to all ordinary income and social insurance contribution regulations. In gettsim we call these regular employed.
- Parameters:
bruttolohn_m – See basic input variable bruttolohn_m.
sozialv_beitr_params – See params documentation sozialv_beitr_params.
- Returns:
Whether regular employed persons.
- regulär_beschäftigt_vor_midijob(bruttolohn_m: float, minijob_grenze: float) bool [source]#
Regular employment check until March 2003.
Employees earning more than the minijob threshold, are subject to all ordinary income and social insurance contribution regulations. In gettsim we call these regular employed.
- Parameters:
bruttolohn_m – See basic input variable bruttolohn_m.
sozialv_beitr_params – See params documentation sozialv_beitr_params.
- Returns:
Whether regular employed persons.
- rente_ertragsanteil(jahr_renteneintr: int, eink_st_params: dict) float [source]#
Calculate the share of pensions subject to income taxation.
- Parameters:
jahr_renteneintr – See basic input variable jahr_renteneintr.
eink_st_params – See params documentation eink_st_params.
- rente_vorj_vor_grundr_proxy_m(rentner: bool, priv_rente_m: float, jahr_renteneintr: int, geburtsjahr: int, alter: int, entgeltp_west: float, entgeltp_ost: float, ges_rente_zugangsfaktor: float, ges_rente_params: dict) float [source]#
Estimated amount of public pensions of last year excluding Grundrentenzuschlag.
- Parameters:
rentner – See basic input variable rentner.
priv_rente_m – See basic input variable priv_rente_m. Assume this did not change from last year.
jahr_renteneintr – See basic input variable jahr_renteneintr.
geburtsjahr – See basic input variable geburtsjahr.
alter – See basic input variable alter.
entgeltp_west – See basic input variable entgeltp_west.
entgeltp_ost – See basic input variable entgeltp_ost.
ges_rente_zugangsfaktor – See
ges_rente_zugangsfaktor()
.ges_rente_params – See params documentation ges_rente_params.
- rentenartfaktor(teilw_erwerbsgemind: bool, erwerbsm_rente_params: dict) float [source]#
Rentenartfaktor for Erwerbsminderungsrente (public disability insurance)
Legal reference: SGB VI § 67: Rentenartfaktor
- rentenwert(wohnort_ost: bool, ges_rente_params: dict) float [source]#
Select the rentenwert depending on place of living.
- Parameters:
wohnort_ost – See basic input variable wohnort_ost.
ges_rente_params – See params documentation ges_rente_params.
- soli_st_lohnst_m(lohnst_mit_kinderfreib_m: float, soli_st_params: dict) float [source]#
Calculates the monthly Solidarity Surcharge on Lohnsteuer (withholding tax on earnings).
- Parameters:
lohnst_mit_kinderfreib_m – See
lohnst_mit_kinderfreib_m()
.soli_st_params – See params documentation soli_st_params.
Returns – Solidarity Surcharge on Lohnsteuer
-------
- soli_st_y_sn_mit_abgelt_st(eink_st_mit_kinderfreib_y_sn: float, anz_personen_sn: int, abgelt_st_y_sn: float, soli_st_params: dict) float [source]#
Calculate the Solidarity Surcharge on Steuernummer level.
Solidaritätszuschlaggesetz (SolZG) in 1991 and 1992. Solidaritätszuschlaggesetz 1995 (SolZG 1995) since 1995.
The Solidarity Surcharge is an additional tax on top of the income tax which is the tax base. As opposed to the ‘standard’ income tax, child allowance is always deducted for tax base calculation.
There is also Solidarity Surcharge on the Capital Income Tax, but always with Solidarity Surcharge tax rate and no tax exempt level. §3 (3) S.2 SolzG 1995.
- Parameters:
eink_st_mit_kinderfreib_y_sn – See
eink_st_mit_kinderfreib_y_sn()
.anz_personen_sn – See
anz_personen_sn()
.abgelt_st_y_sn – See
abgelt_st_y_sn()
.soli_st_params – See params documentation soli_st_params.
- soli_st_y_sn_ohne_abgelt_st(eink_st_mit_kinderfreib_y_sn: float, anz_personen_sn: int, soli_st_params: dict) float [source]#
Calculate the Solidarity Surcharge on Steuernummer level.
Solidaritätszuschlaggesetz (SolZG) in 1991 and 1992. Solidaritätszuschlaggesetz 1995 (SolZG 1995) since 1995.
The Solidarity Surcharge is an additional tax on top of the income tax which is the tax base. As opposed to the ‘standard’ income tax, child allowance is always deducted for tax base calculation.
There is also Solidarity Surcharge on the Capital Income Tax, but always with Solidarity Surcharge tax rate and no tax exempt level. §3 (3) S.2 SolzG 1995.
- Parameters:
eink_st_mit_kinderfreib_y_sn – See
eink_st_mit_kinderfreib_y_sn()
.anz_personen_sn – See
anz_personen_sn()
.soli_st_params – See params documentation soli_st_params.
- sonderausgaben_betreuung_y_sn(eink_st_abzuege_params: dict, eink_st_abz_betreuungskost_y_sn: float) float [source]#
Sonderausgaben for childcare on Steuernummer level.
We follow 10 Abs.1 Nr. 5 EStG. You can details here https://www.buzer.de/s1.htm?a=10&g=estg.
- Parameters:
eink_st_abzuege_params – See params documentation eink_st_abzuege_params.
eink_st_abz_betreuungskost_y_sn – See
eink_st_abz_betreuungskost_y_sn()
.
- sozialv_beitr_arbeitg_m(ges_pflegev_beitr_arbeitg_m: float, ges_krankenv_beitr_arbeitg_m: float, ges_rentenv_beitr_arbeitg_m: float, arbeitsl_v_beitr_arbeitg_m: float) float [source]#
Sum of employer’s social insurance contributions.
- Parameters:
ges_pflegev_beitr_arbeitg_m – See
ges_pflegev_beitr_arbeitg_m()
.ges_krankenv_beitr_arbeitg_m – See
ges_krankenv_beitr_arbeitg_m()
.ges_rentenv_beitr_arbeitg_m – See
ges_rentenv_beitr_arbeitg_m()
.arbeitsl_v_beitr_arbeitg_m – See
arbeitsl_v_beitr_arbeitg_m()
.
- sozialv_beitr_m(ges_pflegev_beitr_m: float, ges_krankenv_beitr_m: float, ges_rentenv_beitr_m: float, arbeitsl_v_beitr_m: float) float [source]#
Sum of employee’s social insurance contributions.
- Parameters:
ges_pflegev_beitr_m – See
ges_pflegev_beitr_m()
.ges_krankenv_beitr_m – See
ges_krankenv_beitr_m()
.ges_rentenv_beitr_m – See
ges_rentenv_beitr_m()
.arbeitsl_v_beitr_m – See
arbeitsl_v_beitr_m()
.
- sum_eink_mit_kapital_eink_y(eink_selbst_y: float, _zu_verst_eink_abhängig_beschäftigt_y: float, eink_vermietung_y: float, eink_rente_zu_verst_y: float, kapitaleink_y: float) float [source]#
Sum of gross incomes with capital income.
- Parameters:
eink_selbst_y – See
eink_selbst_y()
._zu_verst_eink_abhängig_beschäftigt_y – See
_zu_verst_eink_abhängig_beschäftigt_y()
.eink_vermietung_y – See
eink_vermietung_y()
.eink_rente_zu_verst_y – See
eink_rente_zu_verst_y()
.kapitaleink_y – See
kapitaleink_y()
.
- sum_eink_ohne_kapital_eink_y(eink_selbst_y: float, _zu_verst_eink_abhängig_beschäftigt_y: float, eink_vermietung_y: float, eink_rente_zu_verst_y: float) float [source]#
Sum of gross incomes without capital income.
Since 2009 capital income is not subject to normal taxation. :param eink_selbst_y: See
eink_selbst_y()
. :param _zu_verst_eink_abhängig_beschäftigt_y: See_zu_verst_eink_abhängig_beschäftigt_y()
. :param eink_vermietung_y: Seeeink_vermietung_y()
. :param eink_rente_zu_verst_y: Seeeink_rente_zu_verst_y()
.
- sum_ges_rente_priv_rente_m(priv_rente_m: float, ges_rente_m: float) float [source]#
Calculate total individual pension as sum of private and public pension.
- Parameters:
priv_rente_m – See basic input variable priv_rente_m.
ges_rente_m – See
ges_rente_m()
.
- unterhaltsvors_m(kind_unterh_erhalt_m: float, _unterhaltsvors_anspruch_kind_m: float, parent_alleinerz: bool) float [source]#
Advance alimony payments (Unterhaltsvorschuss) on child level after deducting alimonies.
Single Parents get alimony payments for themselves and for their child from the ex partner. If the ex partner is not able to pay the child alimony, the government pays the child alimony to the mother (or the father, if he has the kids).
According to §1 Abs.1 Nr.3 UhVorschG those single parents are entitled to advance alimony payments, who do not or not regularly receive child alimony payments or orphans’ benefits (Waisenbezüge) in at least the amount specified in §2 Abs.1 and 2 UhVorschG. The child alimonay payment paid by the other parent is credited against the amount of the advance alimony payments (§2 Abs.3 Nr.1 UhVorschG).
The amount is specified in §1612a BGB and, ultimately, in Mindestunterhaltsverordnung.
- Parameters:
kind_unterh_erhalt_m – See basic input variable kind_unterh_erhalt_m.
_unterhaltsvors_anspruch_kind_m – See
_unterhaltsvors_anspruch_kind_m()
.parent_alleinerz – See
parent_alleinerz()
.
- unterhaltsvorschuss_eink_m(bruttolohn_m: float, sonstig_eink_m: float, eink_selbst_m: float, eink_vermietung_m: float, kapitaleink_brutto_m: float, sum_ges_rente_priv_rente_m: float, arbeitsl_geld_m: float) float [source]#
Calculate relevant income for advance on alimony payment.
- Parameters:
bruttolohn_m – See
bruttolohn_m()
.sonstig_eink_m – See
sonstig_eink_m()
.eink_selbst_m – See
eink_selbst_m()
.eink_vermietung_m – See
eink_vermietung_m()
.kapitaleink_brutto_m – See
kapitaleink_brutto_m()
.sum_ges_rente_priv_rente_m – See
sum_ges_rente_priv_rente_m()
.arbeitsl_geld_m – See
arbeitsl_geld_m()
.
- vorsorge_krankenv_option_a(_ges_krankenv_bruttolohn_reg_beschäftigt_y: float, eink_st_abzuege_params: dict, steuerklasse: int) float [source]#
For health care deductions, there are two ways to calculate the deuctions. This function calculates option a where at least 12% of earnings of earnings can be deducted, but only up to a certain threshold.
- Parameters:
_ges_krankenv_bruttolohn_reg_beschäftigt_m – See basic input variable _ges_krankenv_bruttolohn_reg_beschäftigt_m
eink_st_abzuege_params – See params documentation eink_st_abzuege_params
steuerklasse – See basic input variable steuerklasse.
- Returns:
Health care deductions for withholding taxes option a
- vorsorge_krankenv_option_b_ab_2015_bis_2018(_ges_krankenv_bruttolohn_reg_beschäftigt_m: float, ges_krankenv_zusatzbeitr_satz: float, sozialv_beitr_params: dict, ges_pflegev_beitr_satz: float) float [source]#
For health care deductions, there are two ways to calculate the deductions: “Option a” and “Option b”. This function calculates option b where the actual contributions are used.
- Parameters:
_ges_krankenv_bruttolohn_reg_beschäftigt_m – See basic input variable _ges_krankenv_bruttolohn_reg_beschäftigt_m
ges_krankenv_zusatzbeitr_satz – See :func:ges_krankenv_zusatzbeitr_satz`.
ges_pflegev_beitr_satz – See :func:ges_pflegev_beitr_satz`.
- Returns:
Health care deductions for withholding taxes option b
- vorsorge_krankenv_option_b_ab_2019(_ges_krankenv_bruttolohn_reg_beschäftigt_m: float, ges_krankenv_zusatzbeitr_satz: float, sozialv_beitr_params: dict, ges_pflegev_beitr_satz: float) float [source]#
For health care deductions, there are two ways to calculate the deductions: “Option a” and “Option b”. This function calculates option b where the actual contributions are used.
- Parameters:
_ges_krankenv_bruttolohn_reg_beschäftigt_m – See basic input variable _ges_krankenv_bruttolohn_reg_beschäftigt_m
ges_krankenv_zusatzbeitr_satz – See :func:ges_krankenv_zusatzbeitr_satz`.
sozialv_beitr_params – See params documentation sozialv_beitr_params
ges_pflegev_beitr_satz – See :func:ges_pflegev_beitr_satz`.
- Returns:
Health care deductions for withholding taxes option b
- vorsorgeaufw_alter_y_sn(ges_rentenv_beitr_m_sn: float, priv_rentenv_beitr_m_sn: float, anz_personen_sn: int, eink_st_abzuege_params: dict) float [source]#
Determine contributions to retirement savings deductible from taxable income.
- Parameters:
ges_rentenv_beitr_m_sn – See
ges_rentenv_beitr_m_sn()
.priv_rentenv_beitr_m_sn – See
priv_rentenv_beitr_m_sn()
.anz_personen_sn – See
anz_personen_sn()
.eink_st_abzuege_params – See params documentation eink_st_abzuege_params.
- vorsorgeaufw_alter_y_sn_einfuehrung(ges_rentenv_beitr_m_sn: float, priv_rentenv_beitr_m_sn: float, anz_personen_sn: int, eink_st_abzuege_params: dict) float [source]#
Determine contributions to retirement savings deductible from taxable income.
The share of deductible contributions increases each year from 60% in 2005 to 100% in 2025.
- Parameters:
ges_rentenv_beitr_m_sn – See
ges_rentenv_beitr_m_sn()
.priv_rentenv_beitr_m_sn – See
priv_rentenv_beitr_m_sn()
.anz_personen_sn – See
anz_personen_sn()
.eink_st_abzuege_params – See params documentation eink_st_abzuege_params.
- vorsorgeaufw_y_sn_ab_2020(vorsorgeaufw_alter_y_sn: float, ges_pflegev_beitr_m_sn: float, ges_krankenv_beitr_m_sn: float, arbeitsl_v_beitr_m_sn: float, anz_personen_sn: int, eink_st_abzuege_params: dict) float [source]#
Calculate Vorsorgeaufwendungen since 2020.
Vorsorgeaufwendungen after the regime implemented in 2010 is in full effect, see § 10 (3) EStG.
- Parameters:
vorsorgeaufw_alter_y_sn – See
vorsorgeaufw_alter_y_sn()
.ges_pflegev_beitr_m_sn – See
ges_pflegev_beitr_m_sn()
.ges_krankenv_beitr_m_sn – See
ges_krankenv_beitr_m_sn()
.arbeitsl_v_beitr_m_sn – See
arbeitsl_v_beitr_m_sn()
.anz_personen_sn – See
anz_personen_sn()
.eink_st_abzuege_params – See params documentation eink_st_abzuege_params.
- vorsorgeaufw_y_sn_bis_2004(_vorsorgeaufw_vom_lohn_y_sn_bis_2004: float, ges_krankenv_beitr_m_sn: float, ges_rentenv_beitr_m_sn: float, anz_personen_sn: int, eink_st_abzuege_params: dict) float [source]#
Calculate Vorsorgeaufwendungen until 2004.
- Parameters:
_vorsorgeaufw_vom_lohn_y_sn_bis_2004 – See
_vorsorgeaufw_vom_lohn_y_sn_bis_2004()
.ges_krankenv_beitr_m_sn – See
ges_krankenv_beitr_m_sn()
.ges_rentenv_beitr_m_sn – See
ges_rentenv_beitr_m_sn()
.anz_personen_sn – See
anz_personen_sn()
.eink_st_abzuege_params – See params documentation eink_st_abzuege_params.
- vorsorgeaufw_y_sn_guenstiger(vorsorgeaufw_y_sn_bis_2004: float, einführung_vorsorgeaufw_y_sn: float) float [source]#
Calculate Vorsorgeaufwendungen from 2005 to 2019.
With the 2005 reform, no taxpayer was supposed to be affected negatively. Therefore, one needs to compute amounts under the 2004 and 2005 regimes and take the more favourable one.
After a supreme court ruling, the 2005 rule had to be changed in 2010. Therefore, one needs to compute amounts under the 2004 and 2010 regimes and take the more favourable one. (§10 (3a) EStG).
Sidenote: The 2010 rules are by construction at least as beneficial as the 2005 regime, so there is no need for a separate check.
- Parameters:
vorsorgeaufw_y_sn – See
vorsorgeaufw_y_sn()
.vorsorgeaufw_y_sn_bis_2004 – See
vorsorgeaufw_y_sn_bis_2004()
.
- vorsorgepauschale_y_ab_2010(bruttolohn_m: float, wohnort_ost: bool, eink_st_abzuege_params: dict, sozialv_beitr_params: dict, vorsorge_krankenv_option_a: float, vorsorge_krankenv_option_b: float) float [source]#
Calculate Vorsorgepauschale for Lohnsteuer valid since 2010. Those are deducted from gross earnings. Idea is similar, but not identical, to Vorsorgeaufwendungen used when calculating Einkommensteuer.
- Parameters:
bruttolohn_m – See basic input variable bruttolohn_m.
wohnort_ost – See basic input variable wohnort_ost.
eink_st_abzuege_params – See params documentation eink_st_abzuege_params
sozialv_beitr_params – See params documentation sozialv_beitr_params
vorsorge_krankenv_option_a – See
vorsorge_krankenv_option_a()
vorsorge_krankenv_option_b – See
vorsorge_krankenv_option_b()
- Returns:
Individual Vorsorgepauschale on annual basis
- wohnfläche_bg(wohnfläche_hh: float, _anteil_personen_in_haushalt_bg: float) float [source]#
Share of household’s dwelling size attributed to the Bedarfsgemeinschaft.
- Parameters:
wohnfläche_hh – See basic input variable wohnfläche_hh.
_anteil_personen_in_haushalt_bg – See
_anteil_personen_in_haushalt_bg()
.
- wohngeld_abzüge_st_sozialv_m(eink_st_y_sn: float, ges_rentenv_beitr_m: float, ges_krankenv_beitr_m: float, kind: bool, wohngeld_params: dict) float [source]#
Calculate housing benefit subtractions on the individual level.
Note that eink_st_y_sn is used as an approximation for taxes on income (as mentioned in § 16 WoGG Satz 1 Nr. 1).
- Parameters:
eink_st_y_sn – See
eink_st_y_sn()
.ges_rentenv_beitr_m – See
ges_rentenv_beitr_m()
.ges_krankenv_beitr_m – See
ges_krankenv_beitr_m()
.kind – See basic input variable kind.
wohngeld_params – See params documentation wohngeld_params.
- wohngeld_arbeitendes_kind(bruttolohn_m: float, kindergeld_anspruch: bool) bool [source]#
Check if children are working.
- Parameters:
bruttolohn_m – See basic input variable bruttolohn_m.
kindergeld_anspruch – See
kindergeld_anspruch()
.
- wohngeld_eink_freib_m_ab_2016(bruttolohn_m: float, wohngeld_arbeitendes_kind: bool, behinderungsgrad: int, alleinerz: bool, wohngeld_params: dict) float [source]#
Calculate housing benefit subtracting for one individual since 2016.
- Parameters:
bruttolohn_m – See basic input variable bruttolohn_m.
wohngeld_arbeitendes_kind – See
wohngeld_arbeitendes_kind()
.behinderungsgrad – See basic input variable behinderungsgrad.
alleinerz – See basic input variable alleinerz.
kind – See basic input variable kind.
wohngeld_params – See params documentation wohngeld_params.
- wohngeld_eink_freib_m_bis_2015(bruttolohn_m: float, wohngeld_arbeitendes_kind: bool, behinderungsgrad: int, alleinerz: bool, kind: bool, _wohngeld_eink_freib_alleinerz_bonus: int, wohngeld_params: dict) float [source]#
Calculate housing benefit subtractions for one individual until 2015.
- Parameters:
bruttolohn_m – See basic input variable bruttolohn_m.
wohngeld_arbeitendes_kind – See
wohngeld_arbeitendes_kind()
.behinderungsgrad – See basic input variable behinderungsgrad.
alleinerz – See basic input variable alleinerz.
kind – See basic input variable kind.
_wohngeld_eink_freib_alleinerz_bonus – See
_wohngeld_eink_freib_alleinerz_bonus()
.wohngeld_params – See params documentation wohngeld_params.
- wohngeld_eink_m_hh(anz_personen_hh: int, wohngeld_eink_freib_m_hh: float, wohngeld_eink_vor_freib_m_hh: float, wohngeld_params: dict) float [source]#
Calculate final income relevant for calculation of housing benefit on household level. Reference: § 13 WoGG
- Parameters:
anz_personen_hh – See
anz_personen_hh()
.wohngeld_eink_freib_m_hh – See
wohngeld_eink_freib_m_hh()
.wohngeld_eink_vor_freib_m_hh – See
wohngeld_eink_vor_freib_m_hh()
.wohngeld_params – See params documentation wohngeld_params.
- wohngeld_eink_vor_freib_m_mit_elterngeld(eink_selbst_y: float, eink_abhängig_beschäftigt_y: float, kapitaleink_brutto_y: float, eink_vermietung_y: float, arbeitsl_geld_m: float, sonstig_eink_m: float, eink_rente_zu_verst_m: float, kind_unterh_erhalt_m: float, unterhaltsvors_m: float, elterngeld_anr_m: float, wohngeld_abzüge_st_sozialv_m: float) float [source]#
Sum gross incomes relevant for housing benefit calculation on individual level and deducting individual housing benefit subtractions. Reference: § 14 WoGG
- Parameters:
eink_selbst_y – See
_eink_selbst()
.eink_abhängig_beschäftigt_y – See
eink_abhängig_beschäftigt_y()
.kapitaleink_brutto_y – See
kapitaleink_brutto_y()
.eink_vermietung_y – See
eink_vermietung_y()
.arbeitsl_geld_m – See
arbeitsl_geld_m()
.sonstig_eink_m – See
sonstig_eink_m()
.eink_rente_zu_verst_m – See
eink_rente_zu_verst_m()
.kind_unterh_erhalt_m – See basic input variable kind_unterh_erhalt_m.
unterhaltsvors_m – See
unterhaltsvors_m()
.elterngeld_anr_m – See
elterngeld_anr_m()
.wohngeld_abzüge_st_sozialv_m – See
wohngeld_abzüge_st_sozialv_m()
.
- wohngeld_eink_vor_freib_m_ohne_elterngeld(eink_selbst_y: float, eink_abhängig_beschäftigt_y: float, kapitaleink_brutto_y: float, eink_vermietung_y: float, arbeitsl_geld_m: float, sonstig_eink_m: float, eink_rente_zu_verst_m: float, kind_unterh_erhalt_m: float, unterhaltsvors_m: float, wohngeld_abzüge_st_sozialv_m: float) float [source]#
Sum gross incomes relevant for housing benefit calculation on individual level and deducting individual housing benefit subtractions. Reference: § 14 WoGG
- Parameters:
eink_selbst_y – See
_eink_selbst()
.eink_abhängig_beschäftigt_y – See
eink_abhängig_beschäftigt_y()
.kapitaleink_brutto_y – See
kapitaleink_brutto_y()
.eink_vermietung_y – See
eink_vermietung_y()
.arbeitsl_geld_m – See
arbeitsl_geld_m()
.sonstig_eink_m – See
sonstig_eink_m()
.eink_rente_zu_verst_m – See
eink_rente_zu_verst_m()
.kind_unterh_erhalt_m – See basic input variable kind_unterh_erhalt_m.
unterhaltsvors_m – See
unterhaltsvors_m()
.wohngeld_abzüge_st_sozialv_m – See
wohngeld_abzüge_st_sozialv_m()
.
- wohngeld_kinderzuschl_vorrang_hh(wohngeld_nach_vermög_check_m_hh: float, _kinderzuschl_nach_vermög_check_m_bg: float, arbeitsl_geld_2_vor_vorrang_m_bg: float) bool [source]#
Check if housing and child benefit have priority.
- Parameters:
wohngeld_nach_vermög_check_m_hh – See
wohngeld_nach_vermög_check_m_hh()
._kinderzuschl_nach_vermög_check_m_bg – See
_kinderzuschl_nach_vermög_check_m_bg()
.arbeitsl_geld_2_vor_vorrang_m_bg – See
arbeitsl_geld_2_vor_vorrang_m_bg()
.
- wohngeld_m_hh(wohngeld_nach_vermög_check_m_hh: float, wohngeld_vorrang_hh: bool, wohngeld_kinderzuschl_vorrang_hh: bool, erwachsene_alle_rentner_hh: bool) float [source]#
Calculate final housing benefit on household level.
- Parameters:
wohngeld_nach_vermög_check_m_hh – See
wohngeld_nach_vermög_check_m_hh()
.wohngeld_vorrang_hh – See
wohngeld_vorrang_hh()
.wohngeld_kinderzuschl_vorrang_hh – See
wohngeld_kinderzuschl_vorrang_hh()
.erwachsene_alle_rentner_hh – See
erwachsene_alle_rentner_hh()
.
- wohngeld_miete_m_hh_ab_2009(mietstufe: int, anz_personen_hh: int, bruttokaltmiete_m_hh: float, wohngeld_min_miete_m_hh: float, wohngeld_params: dict) float [source]#
Maximum rent considered in housing benefit since 2009.
- Parameters:
mietstufe – See basic input variable mietstufe.
anz_personen_hh – See
anz_personen_hh()
.bruttokaltmiete_m_hh – See basic input variable bruttokaltmiete_m_hh.
wohngeld_min_miete_m_hh – See
wohngeld_min_miete_m_hh()
.wohngeld_params – See params documentation wohngeld_params.
- wohngeld_miete_m_hh_bis_2008(mietstufe: int, immobilie_baujahr_hh: int, anz_personen_hh: int, bruttokaltmiete_m_hh: float, wohngeld_min_miete_m_hh: float, wohngeld_params: dict) float [source]#
Maximal rent subject housing benefit calculation on household level until 2008.
- Parameters:
mietstufe – See basic input variable mietstufe.
immobilie_baujahr_hh – See basic input variable immobilie_baujahr_hh.
anz_personen_hh – See
anz_personen_hh()
.bruttokaltmiete_m_hh – See basic input variable bruttokaltmiete_m_hh.
wohngeld_min_miete_m_hh – See
wohngeld_min_miete_m_hh()
.wohngeld_params – See params documentation wohngeld_params.
- wohngeld_min_miete_m_hh(anz_personen_hh: int, wohngeld_params: dict) float [source]#
Calculate minimal monthly rent subject housing benefit calculation on household level.
- Parameters:
anz_personen_hh – See
anz_personen_hh()
.wohngeld_params – See params documentation wohngeld_params.
- wohngeld_nach_vermög_check_m_hh(wohngeld_vor_vermög_check_m_hh: float, vermögen_bedürft_hh: float, anz_personen_hh: int, wohngeld_params: dict) float [source]#
Set preliminary housing benefit to zero if it exceeds the wealth exemption.
The payment depends on the wealth of the household and the number of household members.
- Parameters:
wohngeld_vor_vermög_check_m_hh – See
wohngeld_vor_vermög_check_m_hh()
.vermögen_bedürft_hh – See basic input variable vermögen_bedürft_hh.
anz_personen_hh – See
anz_personen_hh()
.wohngeld_params – See params documentation wohngeld_params.
- wohngeld_vor_vermög_check_m_hh(anz_personen_hh: int, wohngeld_eink_m_hh: float, wohngeld_miete_m_hh: float, wohngeld_params: dict) float [source]#
Calcualte preliminary housing benefit.
- Parameters:
anz_personen_hh – See
anz_personen_hh()
.wohngeld_eink_m_hh – See
wohngeld_eink_m_hh()
.wohngeld_miete_m_hh – See
wohngeld_miete_m_hh()
.wohngeld_params – See params documentation wohngeld_params.
- wohngeld_vorrang_hh(wohngeld_nach_vermög_check_m_hh: float, arbeitsl_geld_2_vor_vorrang_m_bg: float) bool [source]#
Check if housing benefit has priority.
- Parameters:
wohngeld_nach_vermög_check_m_hh – See
wohngeld_nach_vermög_check_m_hh()
.arbeitsl_geld_2_vor_vorrang_m_bg – See
arbeitsl_geld_2_vor_vorrang_m_bg()
.
- zu_verst_eink_y_sn(_zu_verst_eink_mit_kinderfreib_y_sn: float, _zu_verst_eink_ohne_kinderfreib_y_sn: float, kinderfreib_günstiger_sn: bool) float [source]#
Calculate taxable income on Steuernummer level.
- Parameters:
_zu_verst_eink_mit_kinderfreib_y_sn – See
_zu_verst_eink_mit_kinderfreib_y_sn()
._zu_verst_eink_ohne_kinderfreib_y_sn – See
_zu_verst_eink_ohne_kinderfreib_y_sn()
.kinderfreib_günstiger_sn – See
kinderfreib_günstiger_sn()
.
- zu_verst_kapitaleink_y_sn(kapitaleink_brutto_y_sn: float, anz_personen_sn: int, eink_st_abzuege_params: dict) float [source]#
Calculate taxable income on Steuernummer level.
- Parameters:
kapitaleink_brutto_y_sn – See
kapitaleink_brutto_y_sn()
.anz_personen_sn – See
anz_personen_sn()
.eink_st_abzuege_params – See params documentation eink_st_abzuege_params.