Roughly chop the onion, celery and carrots.
Heat the oil in a large saucepan. Add the chopped onion and celery. Gently cook for 5 minutes, then add the carrots, paprika, the garlic and the leaves of the fresh herbs. Cook for 5 minutes or so, until the carrots are tender.
Meanwhile, drain the beans and thinly slice the cabbage.
Once the carrots have softened, add the stock together with the tinned tomatoes. Bring the soup to the boil, add the cabbage and beans then gently simmer for 15-20 minutes.
Serve with a spoonful of pesto, if you like.