Heat the oil in a large pot over medium heat. Once it’s hot, add the onion. Cook for 3-4 minutes, or until softened and fragrant. Stir in the garlic, rosemary, and spices, and cook for another minute.
Add the vegetable stock and increase the heat to high. Bring to a rolling boil, then add the cauliflower, potatoes, and white beans. Reduce to a simmer and cook, covered, for about 20 minutes, or until the potatoes and cauliflower are soft.
Take the soup off the heat and stir in the hazelnut butter. Use an immersion blender to puree until very smooth.
Add the lemon juice, then taste the pureed soup and season as needed. Serve hot, topped with extra hazelnut butter.