If roasting beets, preheat oven to 400°. Cut stems and toss beets with enough olive oil to coat the beets and sprinkle with kosher salt. Roast until tender, about 40 to 50 minutes. Remove from oven and let cool.
Meanwhile, process pistachios until fine in a food processor. Add water, a tablespoon of olive oil, and zest (if desired). This can be made a few days ahead, refrigerated, and brought to room temperature before using.
Make vinaigrette mixing 2 tablespoons of olive oil with the citrus juice and white wine vinegar. Add salt and pepper to taste.
Rub the skins off of the beets and cut them into a ⅜-inch dice. Toss them in a bowl with vinaigrette and let stand for 10 minutes. The beets can also be roasted and prepped a few days in advance. Simply dice beets if using storebought roasted beets.
Cut across the stems of the Belgian endive and separate leaves. Fill each with a tablespoon or so of beet filling. Spoon a small amount of pistachio butter over beets and garnish with chopped pistachios, if desired. Arrange on platter for serving.