Heat the oil in a saucepan, add the onion and carrot and fry for 5 minutes, stirring until softened and just turning golden around the edges. Stir in the tomatoes and piri piri and cook for 1 minute.
Grind the peanuts in a spice mill or liquidizer until you have a fine powder like ground almonds. Stir into the tomatoes, add the stock and then bring to the boil. Cover and simmer for 30 minutes. Mash or purée half the soup and reheat. Taste and adjust the seasoning if needed, then ladle into bowls, garnish with crushed chilli flakes and peanuts and serve with foo foo (see below).