In a large Dutch oven or heavy bottomed pot, heat the oil over medium heat. Add the chopped onions, carrots, sweet potato, and sugar (if using) and cook, stirring occasionally, until the vegetables start to soften slightly, about 8 to 10 minutes.
Add the garlic, chili powder, cumin, cocoa powder and cayenne pepper and cook, stirring often for about a minute or until fragrant.
Stir in the canned tomatoes, the balsamic vinegar, beans, salt, water or broth and bring to a boil.
Turn the heat to low, cover the pot and simmer, stirring occasionally, for about 25-35 minutes or until the sweet potatoes are tender and the chili has thickened.
Season to taste and serve with preferred toppings.