1. Cut the chicken into bite size pieces and transfer to a large bowl. Add the next six ingredients and mix until chicken is coated. Marinate for at least 30 minutes, and for a juicier and softer chicken, preferably overnight.
2. In a large nonstick skillet, add 1 tablespoon cooking oil and sear the marinated chicken for 3 minutes on both sides. Remove from skillet and set aside.
3. Wipe the skillet clean and add 1 tablespoon cooking oil and melt the butter over medium heat. Once melted, add onion and cook until it starts to get golden brown.
4. Then, add in spices, garlic, ginger, and season with salt and pepper. Cook for about 1 minute until the spices open up.
5. Stir in tomato paste, tomato puree, stock, and honey. Bring it to a boil and reduce the heat to low. Simmer for 10 minutes, until the sauce is reduced.
6. Return the chicken to the skillet and simmer in the sauce for another 5-10 minutes over low heat.
7. Lastly, stir in coconut milk and cook for 1-2 minutes. Don’t boil the coconut cream.
8. If the sauce seems to be too thick for you, add in more stock or a little water to thin it out. The sauce will also thicken even more once cooled.
9. Serve over basmati rice with crusty bread or naan bread.