Heat a pot over medium heat and add the oil and onion. Fry the onion until soft and translucent then add the garlic and fry until fragrant.
Add the bell pepper and jalapeño and fry until soft.
Add the tomato paste and spices and fry, stirring frequently, for a couple of minutes until the tomato paste darkens and the spices are fragrant.
Add the tvp, beans (with the aquafaba), cocoa powder, diced tomatoes (with their juices), vegetable stock and soy sauce. Bring to a simmer then reduce the heat to medium-low and simmer for 20 minutes to allow the flavours to meld. Stir from time to time and add more stock or water if it begins to look dry.
Taste and add salt and pepper if you think it’s necessary. Serve with a slice of lime in each bowl and your favourite chili toppings.