Finely chop the onion, garlic, coriander leaves. Finely grate the ginger.
Heat the oil in a large frying pan and slowly cook the onion until tender and translucent.
Add the ground coriander, cumin, garam masala, curry powder, bay leaves, ginger, garlic and tomato paste. Heat for 3-4 minutes until fragrant and the garlic has darkened slightly.
Add the lentils, kidney beans, chopped tomatoes, and water. Mix, then season to taste.
Bring to a boil, then simmer for about 30 minutes, or until the mixture has lost most of its water.
Add the coconut milk and simmer for another 10 minutes or until the mixture is thick and creamy.
Before serving, stir in the coriander leaves and lemon juice.