Heat the oil in a large pot over medium heat. Add the onion, carrots and bell pepper with a pinch of salt and cook, stirring occasionally, until softened, about 8 minutes.
Add the garlic, jalapeño, cumin, smoked paprika and oregano and stir for 1 minute until fragrant.
Add the beans, broth, tomatoes and salt. Bring to a boil, then reduce the heat and simmer uncovered for 20 minutes.
Ladle about half the soup into a blender and blend until smooth (vent the lid and cover with a towel), or use an immersion blender directly in the pot for a few pulses. Return to the pot.
Simmer 5 more minutes to thicken. Stir in the lime juice and adjust the salt.
Serve hot with your choice of toppings.