When I first needed to collect payments on my WordPress site, I made the mistake of installing WooCommerce.
Don’t get me wrong: it’s a fantastic plugin if you need a full online store. However, for simple payment needs (like donations, tips, or selling a handful of products) I’ve found that a basic payment form works much better.
They’re simpler, faster to set up, and way less overwhelming for both you and your visitors. No shopping carts, no complicated checkout pages. Instead, you get a clean form that collects exactly the information you need and processes the payment.
I’ve spent years testing different WordPress payment solutions, and I’ve narrowed it down to the two best options for creating forms with payment options.
Whether you need a simple donation button or a flexible form with conditional fields, I’ll show you exactly how to set everything up.
Why I Use Simple Payment Forms Instead of Full Stores
When you’re looking to collect money through your WordPress site, your first thought might be to install a dedicated eCommerce plugin like WooCommerce or Easy Digital Downloads.
In my experience, those tools are fantastic if you’re setting up an online store, but they’re often complete overkill for simpler tasks.
In those scenarios, creating a simple form with payment options is often the better approach. It’s a cleaner, more direct way to handle transactions without all the complexity of a full checkout system.
In particular, there’s several scenarios where I prefer this streamlined method:
- Non-profit donations: You might want to let visitors make a quick donation when they’re feeling most inspired to help. I’ve found that placing a simple ‘give’ option at the bottom of a heart-felt blog post is a great way to generate more donations.
- Accepting tips: Many WordPress blogs and websites give readers the option to leave a small tip. For example, you might include a ‘Buy Me a Coffee’ button at the end of your most popular tutorials. In my experience, people are often happy to chip in a few dollars when they feel like they’ve just learned something valuable for free.
- Pay what you want systems: If you sell digital products, you might want to let visitors decide how much they want to pay. This strategy often inspires goodwill because it makes your work accessible to everyone, regardless of their budget. In my experience, people may actually pay more than the suggested price, just because they appreciate the trust you’re placing in them.
- Optional upgrades: You can offer a basic file for free while providing a simple checkbox for a premium version or extra content right within the same form.
Method 1: Using WP Simple Pay (The Best Free Choice)
If you’re looking for the easiest way to add payments to your site, I suggest WP Simple Pay. In my opinion, it’s the best Stripe payment plugin because it’s so user-friendly and lightweight.
With WP Simple Pay, you can start accepting payments on your WordPress website, without having to set up an entire eCommerce platform like WooCommerce.

This makes WP Simple Pay a great fit for small businesses or volunteers who need to collect payments without investing a ton of time and effort into learning a complicated tool.
Installing WP Simple Pay
If you want to follow along, then you’ll need to install and activate the free version of WP Simple Pay. I’m using the free version in this guide because it has everything you’ll need to create a basic payment form.
If you haven’t done this before, you can check out our guide on how to install a WordPress plugin.
At some point, you might need more advanced features like recurring payments or ‘buy now pay later’ plans. In that case, you can upgrade to the premium version of WP Simple Pay.
Connecting Your Payment Processor
Upon activation, you’ll see the WP Simple Pay setup wizard. Go ahead and click the ‘Let’s Get Started’ button.

First, you’ll need to link the plugin to your Stripe account, so click ‘Connect with Stripe.’ You can now either log into an existing Stripe account, or follow the onscreen instructions to create a new account.
WP Simple Pay does a great job of walking you through every step, so this setup is nice and easy.

If the setup wizard doesn’t appear, don’t worry. You can launch it yourself by heading to WP Simple Pay » Settings » General » Advanced.
Then, click the ‘Launch Setup Wizard’ button.

Building Your First Payment Form
After connecting to your Stripe account, click the ‘Create a Payment Form’ button.

If you close this window by mistake, simply select WP Simple Pay » Add New in the left-hand menu.
WP Simple Pay comes with several templates to help you get started quickly, including templates for accepting donations and subscription payments.
To create a WordPress form with payment options, I recommend using the ‘Payment Button’ template. This is a clean, simple checkout experience without any distractions, making it a great place to start.
To use this template, simply hover over ‘Payment Button’ and then click on the ‘Use Template’ button when it appears.

To start, type a descriptive title for your payment form into the ‘Title’ field.
This will represent your form in the WordPress dashboard. WIth that in mind, try to be as specific as possible so you won’t get confused if you decide to create more forms later.

Configuring Your Payment Settings
Now, click the ‘Payment’ tab.

You’ll notice that WP Simple Pay starts in Test Mode. This lets you check that everything’s working smoothly without having to enter any real credit card details. That said, leave WP Simple Pay in Test Mode for now.
Next, scroll to the ‘Default Price’ box. In this box, make sure the ‘One-Time Amount’ tab is selected and then type in the price you want to charge.

Personalizing the Payment Button
With that done, select the ‘Form Fields’ tab. Here, you can change the default button text and the text that appears while the payment is processing.
For example, you might change ‘Pay Now’ to something more personal like ‘Send Us a Tip’ or ‘Buy Me a Coffee.’

I also like to change the ‘Button Processing Text’ to something a bit more friendly like ‘We’re processing your donation.’ It’s a small touch that makes the experience feel less like a transaction and more like a conversation.
Under ‘Button Style’ you can choose between ‘Stripe blue’ and ‘Default.’

‘Default’ uses the same button style as your WordPress theme.
WP Simple Pay also has a ‘Stripe blue’ style that you can use, as you can see in the following image.

In my experience, visitors feel much more comfortable entering their credit card details when they see that familiar Stripe branding. That said, I recommend using ‘Stripe blue’ for your payment button.
Next, select the ‘Stripe Checkout’ tab. Here, you can select any additional information you want to collect from the customer.

If you’re selling physical items that you plan to ship, make sure you check the box next to ‘Collect Shipping Address.’
Finally, click the ‘Confirmation Page’ tab. Here, you can type in the message that WP Simple Pay will show when the customer successfully completes a purchase.

While a simple message works, I’ve found that a custom ‘Thank You’ page feels much more professional. It’s also a great way to share the customer’s next steps, such as how to access their purchase or how to contact you if they have any questions.
To redirect customers in this way, select ‘Custom Page’ and then choose a page from the dropdown menu.

You can also send customers to a different website entirely by selecting ‘External URL.’
You can then type in the exact web address where you want them to go.

Adding the Form to Your Site
There’s more options you may want to explore, but this is all you need to create a straightforward payment form.
Once you’re happy with how the form is set up, click the ‘Publish’ button.

You can now place this form on your site using either the shortcode or the block that WP Simple Pay creates automatically.
Simply go ahead and click the ‘Copy’ button next to the method you want to use.

Then, open the page or post where you want to place the payment form.
If you copied the block code, simply paste it into the page, and the form will appear straight away.

If you copied the shortcode, then click on the ‘+’ button. In the popup that appears, start typing in ‘Shortcode.’
When the right block appears, click to add it to the page or post.

You can now paste the shortcode into that block.
With that done, go ahead and publish or update the page as normal. Now, if you visit your website you’ll see the payment form in action.
Testing and Launching for Real
When you first publish your form, you’ll notice that ‘test mode’ is displayed at the bottom.

This means you can test your Stripe payments without spending real money.
To do this, you’ll need to enter a dummy card number like 4242 4242 4242 4242. You can enter any three-digit number for the CVC and any future date for the expiration date.

To check if a test payment went through, head over to your Stripe dashboard and select the ‘Transactions’ tab.
You should now see your test transaction.
![]()
After testing the form, you can make it live and start accepting payments from real visitors and customers.
In your WordPress dashboard, go to WP Simple Pay » Payment Forms.

Here, hover over the form you created in the previous step.
When it appears, click the ‘Edit’ link.

Next, click the ‘Payment’ tab and select ‘Live Mode.’
With that done, click the ‘Update’ button.

Now, if you visit your site you’ll see that the ‘Test Mode’ button has vanished. You’re now ready to accept real payments on your WordPress website.
Method 2: Using WPForms (Best for Flexible and Optional Payments)
While simple buttons are great, sometimes you may want to collect extra details, run a survey, or let users choose how much they pay.
If you need a form that does more than basic transactions, I recommend checking out WPForms. It’s a popular form builder that lets you quickly add a form with payment options to your site.

You can even use advanced features like conditional logic so visitors can choose whether to send you a payment, or not. If they say ‘yes,’ the payment fields will appear. If they say no, the form stays short and simple.
With WPForms, you can also let visitors choose how much they want to pay you. This makes WPForms ideal if you’re running a donation drive or a ‘pay what you want’ sale where you want to give your audience more control.
Setting up the WPForms Plugin
For this method, I suggest using the premium version of WPForms. While there’s a free version, it charges an extra 3% transaction fee on every payment you take.
In my opinion, the premium version’s the smarter choice because it removes those extra fees. This means you get to keep more of your money. It also unlocks more ways to get paid through platforms like PayPal and Square.
To start, you’ll need to install and activate WPForms. If you need a walkthrough on that, check out our guide on how to install a WordPress plugin.
Once that’s done, go to WPForms » Settings and enter your license key.

You can find this key in your WPForms account or in the email you received when you bought the plugin.
After that, you’ll need to install some payment add-ons by going to WPForms » Addons.

You can install add-ons for every service you want to support, like Stripe, PayPal, or Square.
I suggest installing at least two payment add-ons. Some people prefer credit cards, while others only feel comfortable using PayPal, so giving customers a choice can help you get more payments.
To use a service, simply find it on the screen and click its ‘Install Addon’ button.

Repeat this process for every service you want to support.
Connecting Your Accounts
Next, you need to link these add-ons to your actual bank or payment accounts. To do this, go to WPForms » Settings in your WordPress dashboard, and select the ‘Payments’ tab.

You’ll see a section for each add-on you installed.
Before you connect, I suggest putting WPForms into test mode for each service. This lets you run a fake transaction to make sure everything’s working, without having to use real money.
For each add-on, click the ‘Test Mode’ slider so it turns red and says ‘On.’

Now, click the ‘Connect with’ button for each service.
In the setup wizard that appears, simply follow the onscreen instructions to connect to your account.

Once you’re finished, you’ll see a green checkmark next to ‘Connection Status.’
Go ahead and repeat this process for every payment service you want to use.

After completing these steps, scroll to the bottom of the screen and click ‘Save Settings.’
This stores your changes, so you can move onto the next steps.

Building Your Custom Form
Now for the fun part: creating the form. To get started, go to WPForms » Add New Form.

You can now type a name for your form into the ‘Name Your Form’ field.
It’s a good idea to use a descriptive name so you can find this form easily later on.

Next, you’ll need to choose a template. WPForms has over 2,000 templates to choose from, and you can add payment fields to any of them. This gives you lots of flexibility.
To preview any design, simply hover your mouse over it and click the ‘View Demo’ button when it appears.

This opens an interactive demo in a new tab.
When you find a design you want to use, hover your mouse over it and then click the ‘Use Template’ button when it appears.

I’m using the Credit Card Payment Form in all my screenshots, but the steps will be largely the same no matter what template you use.
Customizing Your Fields
At this point, WPForms will open your template in its drag-and-drop builder. You’ll see a preview of your form on the right and some settings on the left.

To add a new field, just drag it from the left column and drop it onto your form.
If you want to change a field, click it. The left-hand menu will then update to show all the settings you can use, such as changing the label or marking the field as ‘required.’

If you want to move a field, just drag it up or down.
To delete something you don’t need, hover over it and then click the small trashcan icon.

At this point, I recommend making any changes to the default template, such as removing fields you don’t need, adding fields, or changing the labels.
When you’re happy with the initial layout, it’s time to add your payment options.
Making Payments Optional
Sometimes, you may want to let users decide whether they want to pay or not. For example, you might be running a free webinar but want to give attendees the option to leave a small tip upon registration.
In that case, drag a Multiple Choice field onto your form.

With that done, I recommend changing the label to something clear, like ‘Would you like to support my site?’
To change the label, click to select the Multiple Choice field in the form preview. Then, type the text you want to use into the ‘Label’ field.

By default, the Multiple Choice field adds three options to your form, but we only need two (Yes and No).
That said, find the ‘-’ button next to the third option and click to remove it.

You can now replace the default First Choice and Second Choice with the text you want to use.
I’m using ‘Yes, I want to support your site!’ and ‘No, not right now’ but you can use anything you want.

Offering Different Price Points
When I’m creating a form with payment options, I like to give visitors a few different amounts to choose from. It’s often easier for people to click a button, rather than thinking of a number themselves.
To do this, add another Multiple Choice field to your form. You can then change the ‘Label’ to something descriptive, such as ‘Suggested Amounts.’

Finally, add the prices as options, like $10, $25, or $50.
Just like before, WPForms creates three options by default. If you want to add more, just click the blue ‘+’ button.

Adding Your Payment Fields
Depending on the template you’ve selected, you might already have some built-in payment fields. If you need to add more, just select the ‘Add Fields’ tab on the left.
Then, scroll to the ‘Payment Fields’ section.

Now, drag and drop any of these fields onto the form preview.
After adding a field, you can click to select it and then change its settings. For example, if you’ve made payments optional, make sure to deactivate the ‘Required’ slider. If you don’t, then visitors cannot submit the form without paying.

Using Smart Logic to Hide Fields
You don’t want to show payment options to someone who clicks ‘No’ to supporting your site.
This is where ‘Smart Logic’ comes in. It’s my favorite feature because it allows you to hide or show different fields based on the user’s responses. This keeps your form clear, focused and relevant.
To start, click to select your payment field in the form preview. Then, select the ‘Smart Logic’ tab in the left-hand menu.

Next, click to activate the ‘Enable Conditional Logic’ slider.
I’m going to create a rule that essentially says ‘Only show this payment field if the user selects ‘Yes’ in the ‘Would you like to support my site?’ field.
To begin, open the first dropdown menu and select ‘Show.’

Then, open the ‘Select a Field’ dropdown and choose the field where the user can answer ‘Yes’ or ‘No’ to submitting a payment.
For me, that’s the ‘Would you like to support my site?’ field.

In the next dropdown menu, select ‘Is.’
Then, open the final dropdown and select your ‘Yes’ option (for me, that’s ‘Yes, I want to support your site!’)

And that’s it. Now, this payment field will only appear if the user actually wants to pay.
Are you giving visitors a choice of payment methods? Then make sure you repeat this process for every payment field.
Managing Your Notifications
I also suggest customizing your notifications so you only get an email when someone makes a payment. This means your inbox doesn’t get cluttered with non-payment entries.
Select the ‘Settings’ tab in the left-hand menu, and then click on ‘Notifications.’

Now, find the ‘Enable Conditional Logic’ slider and give it a click so it turns blue.
We’re going to create a rule that essentially says: only send you an email if the user chooses ‘Yes, I want to support your site.’

With that in mind, open the first dropdown and select ‘Send.’ Then, open the ‘Select Field’ dropdown and choose your first Multiple Choice field.
For me, that’s ‘Would you like to support my site?’

After that, select ‘Is’ from the next dropdown menu.
Finally, open the ‘Select Choice’ dropdown and select your ‘Yes’ option.

Finally, don’t forget to click the ‘Save’ button.
Now, every time someone decides to send a payment, you’ll get an email letting you know the good news.

Launching Your Form
There’re lots more settings that you can explore, but this is all you’ll need to create a WordPress form with payment options.
When you’re happy with how your form is set up, click the ‘Save’ button at the top of the builder to store your changes.
With that done, it’s time to add the form to your site. Simply navigate to the page or post where you want to feature this form and click the ‘+’ button to add a new block.
Then, start typing ‘WPForms’ and select the block when it appears.

You can now open the dropdown menu within the block and choose the form you just created.
After that, use the ‘Preview’ button to see how the form looks on your actual website. Sometimes a form that looks great in the builder might need a little extra space or a different alignment once it’s displayed on your WordPress website.
That done, either update or publish the page as normal.

With that done, you can go ahead and visit your site to see your payment form in action.
I hope you’re feeling really confident about accepting payments on your site now.
Ready to grow your business even more? Then check out our ultimate WordPress toolkit: everything you need for your website. It’s my proven list of all the plugins and services I rely on to track my sales and keep my customers happy.

Leave a Reply