In a large pot or Dutch oven, heat the oil over medium heat. Add the chopped onion, garlic, and a pinch of salt. Cook for 3 to 4 minutes, stirring occasionally, until the onion is translucent and fragrant.
Stir in the chopped bell pepper. If using raw, cook for 3 to 4 minutes until slightly softened. If using roasted, proceed directly to the next step.
Add the black beans, navy beans, red kidney beans, corn, tomato puree, cumin, oregano, marjoram, chili powder, salt, and pepper. Stir well to combine.
Cover the pot and reduce the heat to low. Simmer for 15 minutes, stirring occasionally. If using fresh tomatoes or if the mixture is too thick, allow an extra few minutes and add a splash of water or vegetable broth as needed.
Taste the chili and adjust seasoning as needed. Add more chili powder for heat, or additional salt and pepper to taste.
Ladle into bowls and serve hot with your favorite toppings such as avocado, vegan crema, chopped herbs, or tortilla chips.
Notes
Beans can be swapped with any variety you have on hand, such as chickpeas, pinto, or lima beans.
To make this chili more filling, add cooked brown rice or diced sweet potato during the simmering step.
Leftovers keep well and taste even better the next day. Storage Refrigerator: Store in an airtight container for up to 5 days.
Freezer: Freeze in airtight containers or silicone freezer bags for up to 3 months. Reheat gently and adjust seasoning as needed after thawing.