How to Create a WordPress Form with a Payment Option

Disclosure: This post may contain affiliate links. Purchasing a product through one of these links generates a commission for us at no additional expense to you.

Here’s the truth…

You don’t need an entire eCommerce store to accept payments on your site.

When selling with WordPress, it can seem like WooCommerce is the only option, but there are much simpler alternatives available.

If you have a product or service to offer and simply want to automate sales on your site, this is easy to do with the right tools.

In fact, the simplest way is to create a regular form and attach a payment field to it. It really is rather simple.

The key, of course, is choosing the right tools.

In this tutorial, I’ll show you the best way to create a form on your WordPress site to start accepting payments today.

Create the payment form

To create a form with payment processing, I recommend using the WPForms plugin.


WPForms is an extremely robust form plugin and includes a friendly drag-and-drop form builder. It’s the best-designed solution on the market in my opinion.

Once you’ve installed and activated the plugin, creating a form takes just a few minutes.

Create a new form

The first step is to visit the new WPForms menu that appears in your WordPress dashboard. Here you’ll find two buttons available to add a new form to your site.

WPForms Add New

After clicking either button, you’ll be taken to the best part of WPForms – the form builder!

Inside the form builder, you’ll see the setup page. Give your form a name and choose the Billing/Order Form option to get started.

WPForms Setup Order Form

You can use a blank form if you want, but the billing form will give you a headstart and show you how WPForms works for accepting payments.

Add the payment fields

Once the page reloads, you’ll see the default billing form.

The payment form includes a handful of basic fields for info like customer’s name, email, and address. Most importantly, you’ll find a couple of payment fields at the bottom.

Wpforms Example Payment Fields

In the example above, the user would select any of the three available items to purchase, and the Total Amount will update live as they make their selection.

Every field is completely configurable in WPForms, and here you can see how the prices are set in the Available Items field:

Multiple Items Field

WPForms provides four different ways for visitors to select the product or service they want to purchase and an additional field to display the order total based on their choice.

Payment Fields

At this point, you have a simple order form that allows customers to choose a product and view the total they owe. Of course, you can have a single item if you want and the price will remain fixed.

The next step is to hook up the actual payment processing so you can get paid!

Integrate payment processing

Once you’re finished designing the form, it’s time to turn your attention to the payment processing integration.

We’ve been looking at the Fields section in WPForms. Click on the Payments tab in the left sidebar and you’ll find options to integrate your form with both PayPal and Stripe.

Payment Options

WPForms includes both of these extensions in the Pro plan. Stripe is a more modern solution and doesn’t require customers to leave your site to make a purchase. However, it does require the customer to use a credit card. This can be an issue if you have lots of customers in countries like Germany where credit card use is rare.

I’ll use Stripe as my example.

The first step is to install the Stripe WPForms extension. It’s packaged as a plugin and can be uploaded just like any other plugin.

After the Stripe plugin is installed, you’ll find its options added into the Payments section of the Settings menu.

Stripe settings in payments menus

Here you can configure the secret keys you need to connect your WordPress site to Stripe. All you need to is copy and paste a few keys and you’re ready to go.

Back in the form builder, the following options become available for Stripe after the extension is installed and configured.

Stripe settings in form

There’s not much to do besides checking a box to enable Stripe and choosing how to deliver the receipt email to customers.

When a customer selects the item they’re going to purchase, WPForms automatically takes the total price and gives it to Stripe. When they submit the form, a Stripe popup will display and all customers have to do is enter their credit card info.

And with that, you’ve got a user-friendly form that can accept payments!

Start accepting payments today

You might be wondering how to control where the customer is redirected to after their purchase or how to customize the receipt email.

Our tutorial on how to create a contact form will show you the other essential features included in this form plugin including redirects after form submission.

You might also like our detailed WPForms review to see if it’s right for your site.

Lastly, check out our collection of the best contact form WordPress plugins if you want some alternative solutions.

If you have any questions about how to create a WordPress form with a payment option, please post in the comments section below.

Ben Sibley
Ben Sibley
This article was written by Ben Sibley. He is a WordPress theme designer & developer, and founder of Compete Themes.