Combine the marinade ingredients in a glass bowl. Cut the meat into small pieces or slice thinly and mix into the marinade. Refrigerate for at least one hour.
To make the soup, melt the butter in a medium-sized saucepan and add the marinated chicken and onion. Stir constantly until the chicken is sealed (white-looking) and the onion is soft.
Add the dried spices and ginger then stir in the tomatoes and stock. When simmering pour in the basmati rice, stir and simmer for 10 minutes.
Mix together the tomato paste and flour and whisk this, a little at a time, into the soup. Add the brown sugar and cream, and season to taste.
Serve in soup bowls with a dollop of natural yoghurt and some chopped fresh coriander on top. Provide some torn-up naan bread for dunking.
