Warm the oil and sauté aromatics. Heat olive oil in a large pot over medium heat.
Add the onion and a pinch of salt. Cook, stirring occasionally, until translucent and slightly golden, 5–7 minutes. Stir in the garlic and jalapeño and cook for 1 minute until fragrant.
Toast the spices. Add cumin, chili powder, smoked paprika, and coriander (if using).
Stir for 30 seconds to bloom the spices. This step deepens flavor and helps the spices taste toasty, not raw.
Add the sweet potatoes. Stir in the diced sweet potatoes to coat with the spice mixture. Cook for 2 minutes to start softening the edges.
Build the soup base. Add the black beans, fire-roasted tomatoes with their juices, and vegetable broth.
Season with 1 1/4 teaspoons salt and several grinds of black pepper. Increase heat to bring to a gentle boil.
Simmer until tender. Reduce heat to medium-low and simmer uncovered for 18–22 minutes, or until the sweet potatoes are tender when pierced with a fork. Stir occasionally to prevent sticking.
Partially blend for creaminess. Using an immersion blender, blend the soup briefly, pulsing 3–5 times to thicken while leaving lots of chunks.
If using a regular blender, transfer 2 cups of soup, blend until smooth, and return it to the pot. Adjust thickness with more broth if needed.
Finish with brightness. Stir in the lime juice and chopped cilantro. Taste and adjust for salt, pepper, and heat.
Add red pepper flakes if you want more spice.
Serve with toppings. Ladle into bowls and add your favorites: a dollop of yogurt, sliced avocado, extra cilantro, crunchy tortilla chips, or a sprinkle of cheese. Serve with lime wedges on the side.