Heat olive oil in a large saucepan over medium to medium-high heat. Once the oil is shimmering, add the onions to the pot and season generously with salt and pepper. Sauté, stirring often, until softened, about 3-5 minutes.
Add in garlic, ground cumin and chili powder. Sauté, stirring constantly, until fragrant, about 30 seconds to 1 minute.
Add the black beans, salsa, stock and cooked chicken to the pot. Stir to combine and then increase heat to high to bring the soup to a boil.
Once boiling, immediately reduce the heat to medium-low and let the soup simmer for 15 minutes, stirring occasionally.
Add in the fresh cilantro and stir to combine. Taste the soup and adjust for seasoning.
Ladle the warm soup into serving bowls and top with optional garnishes. Serve immediately and enjoy.
