Prepare all the ingredients. Heat olive oil in a large pot, over medium heat. Add onion, carrot, and celery and stir to combine. Cover and cook, stirring occasionally, for 5 minutes. Lower the heat if the vegetables start to brown.
Add garlic, cumin, paprika, turmeric, chili flakes, and salt. Stir well and continue cooking for 2 minutes.
Add drained and rinsed chickpeas and stir to coat the chickpeas in the spices. Add broth and bring to a gentle simmer. Cover and continue to simmer for 30 minutes (check after a couple of minutes to make sure it isn’t boiling rapidly).
(Optional step) Partially puree with a hand blender in 2 or 3 bursts or remove 2 cups of the soup, making sure to scoop up some of the chickpeas and vegetables, and blend in a blender or food processor. Add back to soup pot. The goal isn’t to puree all the soup but to just add a bit of creaminess to the broth.
Add all of the spinach and stir. Let simmer for 5 minutes or until spinach is wilted. Remove from heat and add fresh herbs (if using) and lime juice. Taste and add salt as needed.