Cut the chicken into bite sized pieces. Mix with 1 tbsp oil and the chilli powder. Leave to marinate, covered, for at least 25 minutes in the fridge.
Wash the spring onions and cut into rings. Peel and finely dice the garlic and ginger.
Peel the sweet potatoes and cut into 2cm cubes.
Wash and dice the tomatoes.
Heat the remaining oil in a pan and cook the onions, garlic and ginger over a medium heat for 2 minutes. Add the potato cubes and continue to cook for 3 minutes.
Add the tomatoes, stock and coconut milk to the pan and bring to the boil. Season with salt and pepper and simmer, covered, over a medium heat for 20 minutes.
Fry the chicken over high heat for 4-5 minutes until coloured on all sides, then season with salt.
Juice the lime. Wash the coriander and shake dry. Finely blend the soup and season with lime juice. Add the chicken to the soup and garnish with coriander.