Add the oil to a deep frying pan to warm before adding the onion. Stir and leave to fry on a low heat for about five minutes or until they become soft.
Add the garlic, ginger and spices and cook for two minutes.
Add the ground almonds, stir and allow to toast for about a minute.
Add the tinned tomatoes, tomato puree and stock, bring to the boil and simmer for five minutes before adding the coconut milk.
Leave to simmer and reduce for about twenty to thirty minutes on a low heat. If you are cooking rice by boiling, put on the heat now whilst the curry is reducing.
A few minutes before you are ready to serve the curry, add the fish and the spinach, stir and allow to wilt, taste and season with salt and pepper. If you are serving with quick cook microwave rice, put the pouch to cook now for two minutes.