A library to calculate German wage tax and solidarity charges.
Install using Yarn:
yarn add lohnsteuer
Alternatively, install using NPM:
npm install --save lohnsteuer
Note: This package comes with TypeScript typings included.
Example usage with TypeScript:
import { Bundesland, Input, Output, calculate } from 'lohnsteuer'
const input: Input = {
// Year to calculate the tax for, 2014-2019 currently supported
year: 2019,
// The state (Bundesland) you calculate for
state: Bundesland.HAMBURG,
// The tax class (see https://www.sachsen.de/en/1451.htm)
taxClass: 1,
// Whether you have to pay the church tax
churchTax: true,
// The year you were born in
yearOfBirth: 1990,
// The health insurance add on your provider wants
healthInsuranceAddOn: 0.9,
// The gross year salary in euro cents, for € 35,000 this is:
grossSalary: 35_000_00,
}
const output: Output = calculate(input)
The output
contains the following fields, all of them are of type number
and given in euro cents:
Property | Description |
---|---|
grossSalary |
Gross month salary. |
salaryTax |
Salary tax (Lohnsteuer) per month. |
churchTax |
Church tax (Kirchensteuer) per month. |
solidarityTax |
Solidarity tax (Solidaritätszuschlag) per month. |
wageTax |
The complete wage tax, salary + church + solidarity tax. |
healthInsurance |
Health insurance (Krankenversicherung) per month. |
pensionInsurance |
Pension insurance (Rentenversicherung) per month. |
unemploymentInsurance |
Unemployment insurance (Arbeitslosenversicherung) per month. |
careInsurance |
Care insurance (Pflegeversicherung) per month. |
socialCharges |
Sum of all social charges above: HI + PI + UI + CI. |
netSalary |
The remaining net salary. |
- Support basic wage tax calculation
- Calculate social charge
- Support special situation of Saxony
- Support for children
- Support for tax-free allowance
- Support private insurances
- Support care insurance without add on
This software is licensed under the MIT license.