Coat the chicken pieces well with the ingredients listed in the marination section. Set it aside for at least 30 minutes.
Heat oil in a saucepan/pot over medium heat.
Add onions and fry until soft.
Add garlic, ginger, curry leaves, lemongrass, pandan leaves, green chilies, and sauté until the raw smell disappears.
Add salt and the spices and stir fry till fragrant.
Add marinated chicken, and stir fry to coat chicken pieces evenly with the spice paste.
Add tomatoes and mix well.
Pour in the warm water and mix well.
Put the lid on and cook for about 10 minutes on low flame until the chicken is fully cooked. Make sure to check once or twice in between and stir the curry.
When the chicken is cooked soft, open the lid and cook for a further 5 minutes.
Now pour coconut milk and mix well.
Cook more for about 5 minutes (without covering) while stirring occasionally.
Check the taste and add salt if needed.
Turn the heat off and allow it to sit for about 15 to 30 minutes until the curry gets thick.
Serve with rice, bread, naan, roti, or string hoppers.