Office National de Sécurité Sociale (ONSS) 1 ONSS National Office of Social Security Fiscal Administration 1 Fiscal Administration Meal Voucher Vendor 1 Meal Voucher Vendor Gross BRUT Company Part COMP. PART Worker Social Contribution ONSS Employment Bonus EmpBonus Misc. Taxable DIV. IMPOS Withholding Tax Grid 2018 (Precompte Professionnel Bareme 2018) PP Misc. Net DIV. NET Child Allowance Belgium ChA Reduction for special family charges FamRed Withholding Tax Reduction PPRed Special social contribution SSC Worker Salary. Premium pay of 108% SALARY none code result = categories.BASIC * 1.08 Gross Salary SALARY none code result = categories.BASIC if contract.internet: result += 5.0 if contract.mobile: result += 12.0 20 Social contribution ONSS 41 none percentage SALARY -13.07 Employment Bonus EmpBonus.1 42 python result = categories.BRUT <= 2510.47 code salary = categories.BRUT if salary <= 1609.47: result = 197.67 elif salary <= 2510.47: result = 197.67 - (0.2194 * (salary - 1609.47)) Employment Bonus EmpBonus.2 42 python result = categories.BRUT + categories.ONSS <= 2510.47 code salary = categories.BRUT if salary <= 1609.47: result = 213.48 elif salary <= 2510.47: result = 213.48 - (0.2369 * (salary - 1609.47)) Special social cotisation M.ONSS.1 fix 165 python result = (((employee.marital in ['divorced', 'single', 'widower']) or (employee.marital in ['married', 'cohabitant'] and employee.spouse_fiscal_status=='without income')) and (employee.resident_bool!=True)) code wage = categories.BASIC if wage >= 0.01 and wage <= 1095.09: result = 0.0 elif wage >= 1095.10 and wage <= 1945.38: result = 0.0 elif wage >= 1945.39 and wage <= 2190.18: result = -min((wage - 1945.38) * 0.076, 18.60) elif wage >= 2190.19 and wage <= 6038.82: result = -min(18.60 + (wage - 2190.18) * 0.011, 60.94) else: result = -60.94 Special social cotisation M.ONSS.2 fix 165 python result = (((employee.marital in ['married', 'cohabitant'] and employee.spouse_fiscal_status=='with income')) and (employee.resident_bool!=True)) code wage = categories.BASIC if wage >= 0.01 and wage <= 1095.09: result = 0.0 elif wage >= 1095.10 and wage <= 1945.38: result = -9.30 elif wage >= 1945.39 and wage <= 2190.18: result = -min(max((wage - 1945.38) * 0.076, 9.30), 18.60) elif wage >= 2190.19 and wage <= 6038.82: result = -min(18.60 + (wage - 2190.18) * 0.011, 51.64) else: result = -51.64 Withholding Tax B.I. fix 120 python result = (((employee.marital in ['divorced', 'single', 'widower']) or (employee.marital in ['married', 'cohabitant'] and employee.spouse_fiscal_status=='with income')) and (employee.resident_bool!=True)) Withholding Tax B.II fix 120 python result = ((employee.marital in ['married', 'cohabitant'] and employee.spouse_fiscal_status=='without income') and (employee.resident_bool!=True)) Withholding Tax B.III fix 120 python result = employee.resident_bool==True Withholding Tax Reduction for Low Salaries (ONSS) PPRed.1 132 python result = categories.BRUT <= 2431.27 code salary = categories.BRUT percentage = 0.2803 if salary <= 1577.89: result = 193.79 * percentage elif salary <= 2461.27: result = (193.79 - (0.2194 * (salary - 1577.89))) * percentage Withholding Tax Reduction for Low Salaries (ONSS) PPRed.2 133 python result = categories.BRUT <= 2431.27 code salary = categories.BRUT percentage = 0.2803 if salary <= 1577.89: result = 209.29 * percentage elif salary <= 2461.27: result = (209.29 - (0.2369 * (salary - 1577.89))) * percentage Child Allowance Belgium Child.Allowance 140 fix python result = bool(employee.dependent_children) and (categories.PP + categories.PPRed + categories.FamRed + categories.ChA < 0.0) Child Allowance Belgium Ch.A fix 141 The recipient of income is an isolated or spouse beneficiary's income has also earned income (Schedule I / II scale) A. When the gross monthly earnings do not exceed € 7,500, the withholding tax is determined according to the Schedule I. The following reductions are then deducted from the payroll tax determined in accordance with this schedule: a) Reduction for dependent children python result = bool(employee.dependent_children) and (categories.PP + categories.PPRed + categories.FamRed + categories.ChA < 0.0) Other family charges reductions Oth.Fam.Red 143 fix python result = True Reduction for isolated people Red.Iso 144 python result = (employee.marital in ['divorced', 'single', 'widower']) and (categories.PP + categories.PPRed + categories.FamRed + categories.ChA < 0.0) code result = min(25.00, - (categories.PP + categories.PPRed + categories.FamRed + categories.ChA)) Reduction for isolated parent Red.Iso.Par 144 python result = (employee.marital == 'widower' or (employee.marital in ['divorced', 'single', 'widower'] and employee.dependent_children)) and (categories.PP + categories.PPRed + categories.FamRed + categories.ChA < 0.0) code result = min(36.00, - (categories.PP + categories.PPRed + categories.FamRed + categories.ChA)) Reduction for disabled employee Red.Dis 145 python result = (employee.disabled) and (categories.PP + categories.PPRed + categories.FamRed + categories.ChA < 0.0) code result = min(36.00, - (categories.PP + categories.PPRed + categories.FamRed + categories.ChA)) Reduction for dependent seniors Red.Seniors 146 python result = (employee.other_dependent_people and employee.dependent_seniors) and (categories.PP + categories.PPRed + categories.FamRed + categories.ChA < 0.0) code result = min(73.0 * employee.dependent_seniors, - (categories.PP + categories.PPRed + categories.FamRed + categories.ChA)) Reduction for dependent juniors Red.Juniors 147 python result = (employee.other_dependent_people and employee.dependent_juniors) and (categories.PP + categories.PPRed + categories.FamRed + categories.ChA < 0.0) code result = min(36.0 * employee.dependent_juniors, - (categories.PP + categories.PPRed + categories.FamRed + categories.ChA)) Reduction for low spouse revenue Red.Spouse.Net 148 python result = (employee.marital in ['married', 'cohabitant'] and employee.spouse_fiscal_status=='with income' and employee.spouse_net_revenue <= 225.0) and (categories.PP + categories.PPRed + categories.FamRed + categories.ChA < 0.0) code result = min(110.50, - (categories.PP + categories.PPRed + categories.FamRed + categories.ChA)) Reduction for low spouse other revenue Red.Spouse.Oth.Net 149 python result = (employee.marital in ['married', 'cohabitant'] and employee.spouse_fiscal_status=='with income' and not employee.spouse_net_revenue and employee.spouse_other_net_revenue <= 450.0) and (categories.PP + categories.PPRed + categories.FamRed + categories.ChA < 0.0) code result = min(220.0, - (categories.PP + categories.PPRed + categories.FamRed + categories.ChA)) Disabled Spouse Allowance Sp.handicap 150 python result = (employee.disabled_spouse_bool==True) and (categories.PP + categories.PPRed + categories.FamRed + categories.ChA < 0.0) code min(36.0, - (categories.PP + categories.PPRed + categories.FamRed + categories.ChA)) ATN Company Car ATN.CAR 70 python result = bool(contract.transport_mode == 'company_car' and contract.car_atn) code result = contract.car_atn ATN Internet ATN.INT 16 python result = bool(contract.internet) code result = 5.0 ATN Mobile ATN.MOB 17 python result = bool(contract.mobile) code result = 12.0 ATN Company Car ATN.CAR.2 160 python result = bool(contract.transport_mode == 'company_car' and contract.car_atn) code result = -contract.car_atn ATN Internet ATN.INT.2 161 python result = contract.internet code result = -5.0 ATN Mobile ATN.MOB.2 162 python result = contract.mobile code result = -12.0 Commission on Target COM 170 python result = bool(contract.commission_on_target) code result = contract.warrant_value_employee / 12.0 Retain on Meal Voucher MEAL_V_EMP 165 python result = bool(contract.meal_voucher_amount) percentage -100.0 contract.meal_voucher_amount - contract.meal_voucher_paid_by_employer worked_days.WORK100 and worked_days.WORK100.number_of_days Reimbursement of travel expenses Tr.E code 65 python result = bool(contract.others_reimbursed_amount) result = contract.others_reimbursed_amount Representation Fees REP.FEES code 171 python result = bool(contract.representation_fees) result = contract.representation_fees Net Supplement Net.S code 185 python result = bool(contract.additional_net_amount) result = contract.additional_net_amount Net retained Net.R code 190 python result = bool(contract.retained_net_amount) result = -contract.retained_net_amount C.P.218 Belgian Employee C.P.219 Belgian Worker Check Value Meal meal_voucher_amount 7.45 Internet internet 38.0 Mobile mobile 30.0 Mobile + mobile_plus 50.0 Net supplements additional_net_amount Net retained retained_net_amount Commission on target commission_on_target 0.0 Fuel card fuel_card 150.0 0.0 500.0 Leaves duration holidays 20.0 0.0 35.0 Representation fees representation_fees 150.0 Eco-checks eco_checks 250.0