37 lines
884 B
JavaScript
37 lines
884 B
JavaScript
const rtgsValidator = (req, res, next) => {
|
|
const {
|
|
fromAccount,
|
|
toAccount,
|
|
amount,
|
|
remitterName,
|
|
beneficiaryName,
|
|
ifscCode,
|
|
} = req.body;
|
|
|
|
if (!isAccountNumbersValid(fromAccount, toAccount)) {
|
|
return res.status(400).json({ error: 'INVALID_ACCOUNT_NUMBER_FORMAT' });
|
|
}
|
|
|
|
if (amount < 200000) {
|
|
return res.status(400).json({ error: 'AMOUNT_SHOULD_BE_MORE_THAN_200000' });
|
|
}
|
|
|
|
if (!remitterName || !beneficiaryName) {
|
|
return res
|
|
.status(400)
|
|
.json({ error: 'REMITTER_NAME AND BENEFICIARY_NAME REQUIRED' });
|
|
}
|
|
|
|
if (!ifscCode || !/^[A-Z]{4}0[0-9]{6}$/.test(ifscCode)) {
|
|
return res.status(400).json({ error: 'INVALID_IFSC_CODE' });
|
|
}
|
|
|
|
next();
|
|
};
|
|
|
|
const isAccountNumbersValid = (fromAcct, toAcct) => {
|
|
return !(!fromAcct || !toAcct || fromAcct.length != 11 || toAcct.length < 7);
|
|
};
|
|
|
|
module.exports = rtgsValidator;
|