Heat the oil in a large saucepan. Add the onion, garlic and capsicums then fry them gently, stirring constantly, for 2–3 minutes until softened. Add the mushrooms, chilli powder and ground cumin then cook gently, stirring, for about 30 seconds.
Tip the mixed beans and tomatoes with their juice into the saucepan. Add the tomato juice, stock and chopped coriander. Stir well, bring to the boil then reduce the heat. Partially cover the pan with a lid and simmer gently for 20 minutes until all the vegetables are tender.
Ladle the soup into bowls and garnish each portion with a dollop of sour cream and a coriander sprig.