Soak the chana dal for two hours. Take one and a half cups of water in a deep pan. Add chana dal and bring to a boil. Cook until the dal is tender and all the water has been absorbed. Grind it to a smooth mixture. Take beancurd in a bowl, add potatoes, ground dal, salt, half teaspoon red chilli powder, quarter teaspoon garam masala powder, cumin powder, half teaspoon coriander powder and mix well.
Add cornflour, mix well and shape the mixture into lemon sized balls. Heat sufficient oil in a kadai and deep-fry the koftas until golden brown. Drain on absorbent paper. For the gravy, heat two tablespoons oil in a pan, add onion paste and sauté until golden brown. Add garlic paste, ginger paste, turmeric powder, remaining coriander powder and remaining red chilli powder and sauté for two minutes. Add cashewnut paste and cook for two to three minutes. Add tomato puree and continue to cook till oil surfaces. Add two cups of water and cook for further ten minutes or bring it to a boil. Add salt and the remaining garam masala powder and mix. Add cream and coriander leaves and let the gravy simmer for three to four minutes.
Pour the gravy over the koftas and serve hot.