Preheat oven to 350 degrees F. Line a muffin tin with cupcake liners and set aside.
In a large bowl, whisk together flour, sugar, and baking soda. Set aside.
In a saucepan over medium heat, boil the water and butter to a slow boil and remove from heat. Stir in the peanut butter and the oil until melted and well blended.
Add the eggs, vanilla and buttermilk until well blended.
Add the wet ingredients to the dry ingredients until blended. Batter will be loose.
Fill cupcake liners evenly about 3/4 full.
Bake at 350 degrees for about 18-20 minutes or until a toothpick inserted in center comes out clean.
Allow to cool completely.
Once cooled, scoop out a well into the top of each cupcake and fill with jelly of your choice. Fill the holes with the cake you removed pushing down gently.
For Peanut Butter Frosting:
In the bowl of a stand mixer, beat the peanut butter and the butter until creamy and combined.
Add powdered sugar, a little a time with stand mixer on low until well blended, scraping down the sides frequently. Add the vanilla.
Continuing on low speed, add the milk and stir until well blended. Beat entire mixture for about 30 seconds to a minute to be sure everything is nice and smooth and combined.
When cupcakes are completely cooled and filled with jelly, pipe frosting on using a piping bag with desired tip.