const express = require('express'); const impsController = require('../controllers/imps.controller'); const { logger } = require('../util/logger'); const impsValidator = require('../validators/imps.validator'); const paymentSecretValidator = require('../validators/payment.secret.validator'); const router = express.Router(); router.use(impsValidator, paymentSecretValidator); const impsRoute = async (req, res) => { const { fromAccount, toAccount, ifscCode, amount, beneficiaryName } = req.body; try { const result = await impsController.send( req.user, fromAccount, toAccount, amount, ifscCode, beneficiaryName, 'SAVING', 'check' ); if (result.startsWith('Message produced successfully')) { return res.json({ message: 'SUCCESS' }); } else { return res.json({ error: 'INVALID_REQUEST' }); } } catch (error) { logger.error(error, 'error occured while doing IMPS'); return res.json({ error: 'INTERVAL_SERVER_ERROR' }); } }; router.post('/', impsRoute); module.exports = router;