Preheat your oven to 350°F and line two cupcake pans with grease-proof liners.
In a medium bowl, whisk flour, baking powder, and salt together and set aside.
In the bowl of your stand mixer with the paddle attachment or using a handheld electric mixer, beat butter at medium speed until light and fluffy, about 2 minutes.
Add sugar and beat until well-combined, another minute or so.
Scrape bottom and sides of bowl and add the eggs one at a time, mixing well after each.
Add vanilla extract and mix.
Turn mixer on low and add flour mixture a little at a time. Mix until just combined.
Fill cupcake cups just half full. We want them to bake up slightly below the wrapper, to make adding the milk easier later. You should have at least 20 cupcakes. Bake on the center rack for 15-17 minutes until lightly golden and a toothpick inserted into the center comes out clean.
Allow cupcakes to cool in the pans.
Once cool, poke each of the cupcakes all over with a fork 10-15 times.
Combine evaporated milk, condensed milk, half-and-half and Kahlua in a large liquid measuring cup and stir. Pour as much of the liquid over each of the cupcakes as the cupcake will hold without overflowing.
Wait a couple minutes for the cupcakes to absorb the liquid and then repeat. You may have to make a third pass, but the cupcakes should soak up all or very nearly all the liquid.
Place cupcakes in the refrigerator and allow to soak up the liquid overnight--they do not need to be covered.
Pipe on whipped cream with a large open star tip just before serving and top with toppings of choice.