Preheat your oven to 350°F (175°C). Grease and flour two 9-inch round cake pans.
In a large mixing bowl, sift together the flour, cocoa powder, sugar, baking powder, baking soda, and salt. Add the orange zest and mix well.
In another bowl, whisk together the orange juice, buttermilk, vegetable oil, eggs, and vanilla extract until well combined.
Gradually add the wet ingredients to the dry ingredients, mixing until just combined. Be careful not to overmix. If desired, fold in the chocolate chips.
Divide the batter evenly between the prepared cake pans. Smooth the tops with a spatula.
Bake in the preheated oven for 30-35 minutes or until a toothpick inserted into the center comes out clean.
Once baked, remove the cakes from the oven and let them cool in the pans for about 10 minutes. Then, transfer them to a wire rack to cool completely.
For the chocolate orange buttercream frosting:
In a mixing bowl, beat the softened butter until it becomes creamy and smooth using a hand mixer or a stand mixer with a paddle attachment. This usually takes about 2-3 minutes.
Sift in the cocoa powder and add a pinch of salt to the creamed butter. Mix on low speed until well combined.
Gradually add the powdered sugar, one cup at a time, mixing well after each addition. Start with 3 cups of powdered sugar and adjust to your desired sweetness and consistency.
Once the sugar is well combined, add the orange zest and 2 tablespoons of fresh orange juice to the frosting. Mix until fully incorporated.
If the frosting is too thick, add more orange juice, a little at a time, until you reach the desired consistency. If it's too thin, add more powdered sugar, a quarter cup at a time, until it thickens.
Add the vanilla extract to the frosting and beat for an additional minute until the frosting is smooth and fluffy.
Taste the frosting and adjust the sweetness or orange flavor if needed by adding more powdered sugar or orange zest/juice.
To decorate the cake:
Place one cake layer on a serving plate. Dollop a generous amount of buttercream over the top and spread it evenly. Place the second cake layer on top and cover it with the remaining buttercream, spreading it down the sides.
Optionally, garnish the cake by pouring chocolate ganache over the cake and decorating with orange slices, candied oranges, additional orange zest, or chocolate shavings.