Heat olive oil in a large pot over medium heat. Add diced onions, carrots, and celery; sauté for about 5 minutes until softened.
Stir in minced garlic and cook for another minute until fragrant.
Add zucchini, diced tomatoes (with juice), and vegetable broth; stir well and bring to a gentle simmer.
Season with oregano, basil, salt, and pepper; let simmer for about 20 minutes.
Just before serving, stir in fresh spinach until wilted.
Serve hot with crusty bread or sprinkle grated parmesan on top if desired.