Discard the soaked water from chana. Pressure cook chana with 3 cups water (refer notes for details) till it's done. Add salt to the cooked chana and mix well.
Blend onion, ginger, garlic and green chilli in a blender for few seconds to crush it, no need to make it a paste.
Heat oil in a deep and wide pan. Add crushed ingredients. When it browns, add all masala powders and mix well. Add 1 tbsp stock to mix it well. Add chopped tomatoes, salt and 1/4 cup of stock, cook till tomatoes becomes soft.
Add cooked chana with left over stock and mix well. Bring it to a boil and reduce flame to lowest. Cook for 10 mins. Add tomato puree and coriander leaves. Mix well, cook for another 5-7 mins.