Cook the aubergine under a hot grill for 15-20 minutes, turning every 5 minutes until blackened and softened. Leave to cool a little.
Meanwhile, heat the oil in a large, non-stick casserole. Add the onion and peppers and fry over a medium heat for 10 minutes. Stir in the garlic and ground spices and cook for 2 more minutes. Add the chilli paste, tomatoes, black beans, vinegar and stock, then season.
Use a spoon to scoop the aubergine flesh out of its skin in nuggets, then add them to the pan. Stir, then cook uncovered over a low heat for 30 minutes. Stir in the chocolate and season to taste with salt.
Serve the chilli with nachos or rice, topped with avocado and pickled onions, if you like.