Heat vegetable oil on medium-high for 30 seconds in a pot large enough to hold all the ingredients. Add the onion, lower the heat to medium-low, and sauté, stirring occasionally, for about 5 to 7 minutes or until the onions are translucent but not browned. Add ginger and sauté for 1 minute. Add garlic and bay leaves and sauté another 30 seconds. Pour in tomatoes with their juice and the stock. Bring to a low boil and then simmer partially covered for 20 to 25 minutes. Remove from heat and stir in ½ cup (120 mL) orange juice. Let cool before puréeing in batches with a hand blender, or in a blender or a food processor. Add salt and pepper to taste. More finely grated ginger can be added if you want a stronger ginger taste; if you want a more pronounced orange flavour, add the remaining orange juice.
Melt the butter over medium-high heat in a frying pan, add croutons, and sauté until golden brown. Drain on a paper towel.
Heat soup, ladle into bowls, and top each serving with a generous dollop of lightly whipped cream and some croutons.