In a medium pot set over medium-low heat, combine 3 tablespoons of the olive oil, the onions, salt, pepper, and red pepper flakes. Sauté until the onions are golden and slightly caramelized, stirring often, 3 to 4 minutes.
Add the garlic and cook until fragrant, another minute.
Add the beans and just enough stock to cover. Increase the heat to medium-high and bring the mixture to an aggressive simmer until warmed through, about 3 minutes.
Remove the pot from the heat and, using a handheld immersion blender, puree the soup.
Stir in vinegar and serve in shallow bowls with desired toppings.
Drizzle with more olive oil just before eating.
