Set your oven to 350°F (175°C). Grease a 9×13-inch baking dish with butter or oil, then sprinkle a little flour on it, or line it with parchment paper.
In a large mixing bowl, combine the cocoa powder, sugar, flour, baking soda, baking powder, and salt. Stir everything together until it’s evenly mixed.
In a separate bowl, whisk together the hot water, oil, eggs, buttermilk, and vanilla extract until smooth and uniform.
Gradually pour the wet ingredients into the dry mixture, stirring until just combined. The batter will be somewhat thin, which is normal.
Pour the batter into the prepared pan and smooth the surface. Bake for 35 to 40 minutes, or until a toothpick inserted in the center comes out clean. Let the cake cool slightly in the pan.
While the cake is cooling, make the filling. Place the peanut butter and sweetened condensed milk in a small saucepan over low heat. Stir constantly for 2–3 minutes until smooth and slightly thickened. Remove from heat and let it cool a bit.
When the cake is warm but not hot, poke holes all over the top using the end of a wooden spoon or a skewer. Pour the peanut butter mixture over the cake, allowing it to seep into the holes.
To make the peanut butter whipped cream, beat the heavy cream in a large bowl until it forms soft peaks. Add the peanut butter, powdered sugar, and vanilla extract, and continue whipping until the cream holds stiff peaks.
Spread the peanut butter whipped cream evenly over the cake once the filling has absorbed. Refrigerate the cake for 1–2 hours so the flavors can meld. Cut into squares and serve.