Heat the olive oil in a large pot over medium heat.
Add the chopped onions and minced garlic and sauté until softened and translucent, about 5-7 minutes.
Add the chopped tomatoes, tomato puree, vegetable stock, sugar, salt and pepper to the pot and stir well to combine.
Bring the soup to a boil, then reduce the heat to low and let it simmer for 30 minutes, or until the tomatoes have completely softened.
Remove the pot from heat and let it cool for a few minutes.
Use an immersion blender or transfer the soup to a blender and puree until smooth.
Serve the soup hot with a sprinkle of fresh basil leaves on top, if desired.