Preheat the oven to 350°F (175°C) and line a cupcake pan with paper liners. In a large mixing bowl, whisk together the coconut milk, granulated sugar, and softened coconut oil until well combined. If the coconut oil is still solid or clumpy, microwave the mixture in short 10–15 second intervals until it melts and fully incorporates. Stir in the vanilla extract.
In a separate bowl, sift together the all-purpose flour, cocoa powder, baking soda, baking powder, and salt. Create a well in the center of the dry ingredients and pour in the wet coconut milk mixture. Gently stir the batter just until the ingredients are combined—avoid overmixing to keep the cupcakes light and tender.
Spoon the batter into the prepared liners, filling each about two-thirds full (roughly a scant 1/4 cup of batter per cupcake). Bake for approximately 20 minutes, or until a toothpick inserted in the center comes out clean. Transfer the cupcakes to a wire rack to cool completely before frosting.
To prepare the whipped coconut cream, scoop out the solidified cream from the chilled can of coconut cream, leaving any remaining liquid at the bottom (which you can discard or save for another use). Place the solid cream in a chilled mixing bowl—keeping it cold is essential—and beat on high speed until smooth and fluffy. Add the powdered sugar and continue mixing until smooth and soft peaks form. Note that this frosting will be softer than traditional whipped cream and won’t hold stiff peaks. Chill the whipped coconut frosting in the refrigerator for 15 to 20 minutes to help it firm up slightly before use.
To frost, spread a thin layer of the whipped coconut cream on each cooled cupcake. Because the frosting is fairly soft, it won’t hold elaborate swirls like buttercream. Instead, dollop a bit of frosting onto the center of each cupcake, then gently dip the tops into a bowl of shredded coconut. The shredded coconut will help the frosting stay in place and add extra texture and flavor.
These cupcakes are best enjoyed fresh on the day they’re made but can be stored in an airtight container in the refrigerator for up to 1 to 2 days.
*If using full-fat coconut milk instead of canned coconut cream, be sure to chill it in the refrigerator for at least 24 hours before using. When you open the can, carefully scoop off the solid layer of coconut cream that rises to the top—this is what you’ll use for the frosting. The liquid at the bottom can be discarded or saved for smoothies or cooking. You may need up to two cans of full-fat coconut milk to yield enough cream for the frosting, depending on how much solid separates out.