1. Heat oil in a large, deep frying pan, saucepan or stockpot. Fry the onion and grated carrot with a little salt for a couple of minutes until soft. Add the garlic and fry for another minute. Remove from the pan and keep to one side.
2. Fry the celery in the same pan until softened and then put the onion, carrot and garlic back in the pan. Add the spices and fry for another minute.
3. Pour in the chopped tomatoes then fill the empty can with water and pour half of that in. Stir well and bring to the boil.
4. Once simmering, add the tomato puree, crumbled stock cube, ketchup, tabasco, Worcestershire sauce and brown sugar. Stir well and simmer for 5 minutes before adding the beans. Season with additional salt and pepper if required and simmer for a further 15-20 minutes until it starts to thicken, adding more water gradually if needed.
5. Serve with rice or tortilla chips and your favourite chilli accompaniments.