loan-emi-calculator-api
Version:
A simple API to calculate Loan EMI using Node.js and Express
35 lines (32 loc) • 1.22 kB
JavaScript
function calculateEMI(principal, annualRate, tenure) {
if (principal <= 0 || annualRate < 0 || tenure <= 0) {
return { error: "Invalid input values" };
}
const monthlyRate = annualRate / 12 / 100;
const emi = (principal * monthlyRate * Math.pow(1 + monthlyRate, tenure)) /
(Math.pow(1 + monthlyRate, tenure) - 1);
return {
loanAmount: principal,
annualInterestRate: annualRate,
tenureMonths: tenure,
emi: emi.toFixed(3)
};
}
exports.calculate_emi = async (principal, annualRate, tenure) => {
try {
if (principal === undefined) {
return { error: "Principal are required" };
}
if (annualRate === undefined) {
return { error: "AnnualRate are required" };
}
if (tenure === undefined) {
return { error: "Tenure are required" };
}
const result = calculateEMI(principal, annualRate, tenure);
return { status: 1, message: "Emi Calculated Successfully", result }
} catch (error) {
console.log(error);
res.status(500).json({ message: "Error fetching distance", error: error.message });
}
};