Heat the olive oil in a large pot over medium heat. Add the chopped onion and sauté for about 3 minutes until softened.
Stir in the minced garlic and cook for an additional 1 minute until fragrant.
Add the diced carrots, celery, and bell pepper to the pot. Sauté for 5-7 minutes until the vegetables are tender.
Mix in the diced tomatoes (with their juices), vegetable broth, chickpeas, dried thyme, oregano, and bay leaf. Season with salt and pepper.
Bring the soup to a boil, then reduce the heat and let it simmer uncovered for 20 minutes.
In the final few minutes of cooking, stir in the spinach or kale until wilted.
Remove the bay leaf before serving. Adjust seasoning if necessary.
Serve hot, with a sprinkle of grated Parmesan cheese if desired.