Preheat the oven to 160C(Fan)/325F/Gas Mark 3.
Lightly grease and line your loaf tin with baking paper overlapping on both sides for easy cake removal later.
Finely grate zest of one orange. You could also use 1-2 teaspoon of orange extract instead of zest or 1 teaspoon as an extra with the zest.
Add soya milk to a medium jug, squeeze 100ml of orange juice (or use one from the carton) and add it too. Acid from the juice will make soya milk curdle slightly which is what we want. Set aside.
In a large bowl mix together flour, sugar, cocoa/cacao powder, baking powder, baking soda and salt (if using). Set aside.
To the jug with soya milk and juice add vanilla extract, orange zest and/or orange extract (if using), oil and give it all a good whisk.
Next, add wet ingredients to dry ones and mix together until incorporated and you can no longer see any dry flour. It will be a pretty lumpy mixture which is fine.
Pour cake batter into prepared loaf tin and bake in preheated oven for 45-50 minutes or until skewer inserted into centre comes out clean.
Once baked, take the cake out of the oven and let it cool in the tin for a few minutes before you turn it out onto the rack to cool completely.
As your cake cools prepare chocolate orange buttercream by beating together vegan butter, icing sugar and cocoa powder until nice and fluffy.
Feel free to add a drop of plant milk to adjust consistency but hold off on it if using orange extract instead of zest.
Add orange zest or orange extract (to taste) and beat it in as well.
Once you've added the extract and mixture still appears stiff, add a drop of plant milk to loosen it a bit.
Once cooled, spread your cake with chocolate orange buttercream and some extra orange zest on top (optional).
Enjoy!