Loan Calculator

PAYE IN KENYA CODE CALCULATOR

def calculate_paye_kenya(gross_salary):
“””
Calculate the PAYE tax for a given gross salary in Kenya.

:param gross_salary: The gross monthly salary of the employee.
:return: The PAYE amount after considering the tax bands and personal relief.
"""

# Define the tax bands and rates as per Kenya's tax regulations
tax_bands = [
    (24000, 0.1),  # 10% for the first KES 24,000
    (8333, 0.25),  # 25% for the next KES 8,333
    (41667, 0.3),  # 30% for the next KES 41,667
    (float('inf'), 0.3)  # 30% for the remaining amount
]

# Standard personal relief as of current tax regulations
personal_relief = 2400  # KES 2,400 per month

# Calculate the PAYE tax
tax_payable = 0
remaining_salary = gross_salary

for band_limit, rate in tax_bands:
    if remaining_salary > band_limit:
        tax_payable += band_limit * rate
        remaining_salary -= band_limit
    else:
        tax_payable += remaining_salary * rate
        break

# Deduct the personal relief
paye = max(0, tax_payable - personal_relief)

return round(paye, 2)

def calculate_net_salary(gross_salary, other_deductions):
“””
Calculate the net salary after PAYE and other deductions.

:param gross_salary: The gross monthly salary of the employee.
:param other_deductions: A list of additional deductions (e.g., loan repayments, pension contributions).
:return: The net salary after all deductions.
"""
# Calculate PAYE
paye = calculate_paye_kenya(gross_salary)

# Sum of all additional deductions
total_deductions = sum(other_deductions)

# Calculate the net salary
net_salary = gross_salary - paye - total_deductions

return {
    "Gross Salary": gross_salary,
    "PAYE": paye,
    "Other Deductions": total_deductions,
    "Net Salary": round(net_salary, 2)
}

Example usage

gross_salary = 50000 # Example gross salary in KES
other_deductions = [5000, 2000] # Example deductions (e.g., loan repayment of 5,000, pension contribution of 2,000)

net_salary_info = calculate_net_salary(gross_salary, other_deductions)

Print the salary breakdown

for key, value in net_salary_info.items():
print(f”{key}: KES {value}”)