Heat the oil in a large pot or a pressure cooker over medium heat. Add onions and garlic and cook for 3-4 minutes, stirring regularly.
Stir in the chopped carrots , celery and tomato paste . Cook for 1-2 minutes.
Season with salt , black pepper, Italian seasoning, red pepper flakes and paprika. Cook, stirring frequently . until the vegetables have softened and browned a bit , about 3-4 minutes.
Add the vegetable broth or if using stock cubes, add the stock cubes and 5-6 cups of water and bring to boil.
Add the rinsed and drained beans to it , lower the heat and simmer the beans for 20 minutes, partly covered. If using pressure cooker , pressure cook for 1 whistle for canned beans and 7-8 whistles for soaked and dried beans.
Once the steam is released, use an immersion blender to blend the soup partially, do not puree the soup completely. Some texture is essential.
Put it back on heat , stir in the spinach and chopped parsley and cook for few minutes. Check the seasoning and adjust. Stir in lime juice.
Transfer in to serving bowls , garnish with chopped parsley and serve with a side of crusty bread.
Enjoy!