Gently heat the olive oil in a large saucepan for a couple of minutes and then add the onion and chorizo. Stir a little to coat everything in the oil, then cover the pan and leave to gently simmer away for 10 minutes, stirring a couple of times.
Add the minced garlic and the fennel seeds and stir the mixture. Re-cover and allow to simmer for a further 2 minutes.
Add the balsamic vinegar and allspice, stirring quickly to cover everything. Increase the heat to burn off the bitterness of the vinegar, stirring all the time. After a minute or two, add the beef stock, paprika, cumin and chilli powder, and bring to the boil.
Stir in the passata (or tomatoes) and the peppers and return to the boil. Once it reaches boiling point, reduce the heat to a gentle simmer and add the remaining ingredients. Cover the pan and allow to simmer for 1 hour (or until the sauce has thickened), stirring occasionally to make sure nothing sticks to the bottom of the pan.
You could adjust this recipe to taste with a teaspoon of sugar, or more heat, such as a green chilli or some hot sauce. It can also be made ahead and reheated.