Heat a large casserole or heavy-based pan over a medium heat. Add a glug of oil and once hot add the onion. Cook for a minute and add the carrots. Cook for 5-7 minutes, or until the onions are softened and translucent. Add the garlic and cook for a further 2-3 minutes.
Add the spices and the oregano and cook for two minutes, or until aromatic. Add the beef, breaking it up as it fries into small pieces. Cook for 3-4 minutes, or until brown all over and broken down into small pieces. Stir in the tomato purée and cook for two minutes.
Stir in the kidney beans and chopped pepper, stirring over the heat for 3-4 minutes to soften the pepper a little, then add the tomatoes and enough beef stock to slightly more than cover the meat. Stir everything round, scraping the bottom of the pan with a wooden spoon to unstick any bits from the bottom, and season with salt and pepper.
Bring to a rapid simmer, reduce the heat to a gentle simmer and cook for 1½-2 hours, or until thickened and rich. If at any point the liquid level looks low then add a little hot water or any remaining stock.
Before serving, add the grated squares of chocolate and stir through the hot chilli con carne to melt. Taste and season with salt and pepper as necessary.
Serve with rice and garnish the chilli with coriander and soured cream.