Heat the olive oil in a large pot over medium heat. Add the onion and cook, stirring occasionally, until soft and translucent, about 5 minutes.
Stir in the garlic, and cook for another minute, or until fragrant. Add the tomato purée and cook, stirring constantly, for 1 more minute.
Add the minced beef and cook, breaking the meat up into smaller chunks, for 8-10 minutes, or until no longer pink. Drain the fat from the beef and return the pot to the heat.
Add the chili powder, cumin, oregano, paprika, cayenne (if using), and a generous pinch of salt and pepper.
Cook, stirring often, for 2 minutes to toast the spices. Add the bell peppers, kidney beans, and chopped tomatoes, chipotle peppers, broth, and bring to a boil over high heat.
Reduce the heat to medium-low and simmer for 20 minutes. Taste the chili and add additional salt and pepper, if necessary.
Serve the chili in bowls and top with freshly chopped cilantro/ parsley, grated cheddar, sour cream, and sliced spring onions.