Would you like to collect payments directly within your form? With our Stripe addon, you can provide an easy way for users to submit one-time payments, or even recurring/subscription payments, without ever leaving your site.
In this article, we’ll show you how to install and set up the Stripe addon with WPForms.
- Connecting Stripe to Your WordPress Site
- Adding Stripe to Your Forms
- (Optional) Setting Up Conditional Logic for Payments
- Frequently Asked Questions
Requirements: You will need a Pro license level or higher to access the Stripe addon.
Also, Stripe requires your site to have SSL (https) enabled on the page where you’re adding a live payment form, as this allows you to securely send credit card data to Stripe. For setup details, please see WPBeginner’s guide to adding SSL and HTTPS in WordPress.
1. Connecting Stripe to Your WordPress Site
Once the Stripe addon is ready to go, you’ll need to open WPForms » Settings in the left menu of your WordPress site. From there, click on the Payments tab.
If you’d like to adjust the currency your site uses, go ahead and select the option you need from the Currency dropdown before proceeding.
When you’re ready, scroll down to the Stripe section. Here, you should see a field labeled Connection Status. You’ll need to click the blue Connect with Stripe button.
Next, you’ll be asked to authorize the connection between your forms and Stripe. The exact content you see on this page will vary based on whether your Stripe account is already activated.
Once you’ve agreed to these requirements, you’ll be redirected back to your site’s admin area. Here, you should see that Connection Status has a green checkmark.
Note: Test and Live modes must be connected separately. If you’re currently using Test Mode, please be sure to repeat this connection process with the Test Mode option unchecked so that you’re ready to launch your forms when needed.
2. Adding Stripe to Your Forms
Now that you’ve connected Stripe to your WordPress site, you can start adding Stripe payments to your forms.
First, you’ll need to create a new form or edit an existing form.
In order for a form to work with Stripe, you’ll need at least two fields in your form:
- An Email field
- An items field (Single Item, Multiple Items, Checkbox Items, or Dropdown Items)
- A Stripe Credit Card field
For our example, we’ll create a simple order form that includes Name, Email, Dropdown Items, Total, and a Stripe Credit Card field.
Note: A Total field is not required for Stripe to work, however it’s often helpful for users to easily see how much they’ll be paying.
Once any fields you’d like have been added to the form builder, you’ll need to go to Payments » Stripe. From the Stripe panel, check the box labeled Enable Stripe payments.
Note: In order for the Stripe addon to function correctly, be sure to also enable AJAX form submissions before continuing.
Then you’ll be able to enter a short Payment Description, which will appear on the user’s credit card statement. Last, under Stripe Payment Receipt you can choose an Email field from the form where Stripe can send a receipt.
For one-time payments, you’re all set! If you’d like to set up a recurring payment, please continue to the next section.
Recurring / Subscription Payments
You can easily set up a subscription payment within this same settings panel. Under the section titled Subscriptions, go ahead and check the box labeled Enable recurring subscription payments.
Once you’ve checked this box, additional settings will appear.
Here are the fields you’ll need to complete with more details:
- Plan Name: You’ll need to enter a title for the subscription, such as “Donation to X”. This will appear within the Stripe transaction.
- Recurring Period: You can choose how often the recurring payments should occur: Daily, Weekly, Monthly, Quarterly, Semi-Yearly, or Yearly.
- Customer Email: Within this dropdown, select an Email field from your form where the customer can be contacted. This is required to create a subscription for a customer in Stripe.
3. (Optional) Setting Up Conditional Logic for Payments
The Stripe addon settings also include the option to set up conditional logic. Conditional logic lets you create “smart forms” that automatically change the form based on a user’s selections.
There are many ways you can use conditional logic with Stripe payments, for example:
- Letting your users choose whether to pay with Stripe or PayPal
- Making payment optional
- Letting your users choose whether to submit a one-time payment/donation or start recurring payment/donation
Note: For more general information on using smart logic in your forms, be sure to check out our introduction to conditional logic.
Conditional Logic for Payments
As an example, we’ll set up the last option from that list and let users choose whether to submit a one-time or recurring donation.
To get started, we’ll create a simple donation form. This will need to include either a Dropdown or Multiple Choice field that will let users choose whether they’d like to submit a one-time donation or set up recurring donation.
In our form, we’ll let users choose between two payment options: One-time and Monthly.
Next, we can return to our Stripe settings under Payments » Stripe. We’ve already followed the steps in the previous section to configure the basic settings, so now we need to set up logic for our recurring payment options.
First, we’ll set up the monthly recurring payment option. For this option the Recurring Period needs to be set to Monthly.
Then, we can scroll to the bottom of the settings (under the Subscriptions section) and check the box labeled Enable conditional logic.
This will display additional fields where you can set up any conditional rules. For our example, we’ll set up a conditional rule that states:
Process payment as recurring if How often would you like to donate is Monthly.
Conditional Notification Emails for Completed Payments
By default, WPForms will send out all notification emails as soon as a user has submitted your form. However, in some cases, you may not want a notification email to be sent until a payment has been successful in Stripe.
To delay notification emails until a payment has been successfully completed, check the Enable for Stripe completed payments box.
Note: Before launching your payment form, we recommend testing Stripe payments.
Frequently Asked Questions
I’ve been using WPForms for a while — why does this tutorial looks different from what I see?
We’ve updated our Stripe integration so that it’s even more secure and SCA (Strong Customer Authentication) compliant.
Why isn’t the Connect with Stripe button working for me?
Stripe will only allow owners or administrators to connect a Stripe account in this way. If you don’t seem to be able to complete the process, please check your Stripe user role to make sure it meets these requirements.
How can I switch to a different Stripe account within my site?
If you’d like to switch over to a different Stripe account for your site, you can do this by navigating to WPForms » Settings » Payments and scrolling to the Stripe section.
From there, click the Switch Accounts button in order to switch which Stripe account your site is using.
How do I test Stripe payments in my forms?
The best way to test out your forms is to submit an entry and follow the same steps as your users. We recommend setting up Stripe’s Test Mode before adding your form to a live page, which allows you to test transactions before accepting actual payments.
Does WPForms store my payment data?
No, WPForms does not store your payment data (or any other form entry data).
In fact, our forms don’t even store sensitive credit card data on your site. Instead, our Stripe integration ensures that this information is communicated securely and directly to Stripe, without ever touching your server. This protects both you and your users from the potential risks associated with storing credit card details.
Is WPForms partnered with Stripe?
How do I view purchase/subscription details in Stripe?
To easily access payment details in Stripe, go ahead and open an individual entry. In the right sidebar, you’ll see a section titled Payment Details. Here, you can see basic information or click the blue link to view details within Stripe.
For one-time purchases, you’ll see a single blue link (under Transaction ID).
For subscriptions, you’ll see three blue links in this same sidebar location (Transaction ID, Subscription ID, and Customer ID). Each link will take you to the relevant details page in your Stripe account.
How can I see if a payment is set up as a recurring subscription?
The easiest way to quickly see that a payment is recurring is to go to WPForms » Entries. Be sure you have the correct form selected in the upper left corner.
All entries for the form will be listed here. The Status column will include a dollar icon if a payment was made. If the payment is recurring, you’ll also see a circular arrow icon under the Total column.
How can I cancel a subscription for a customer?
You can cancel all subscriptions created through your forms directly within your Stripe account. For more details on how to cancel a subscription in Stripe, be sure to check out their guide on how to pause or cancel subscriptions.
Will I get charged any fees for using Stripe in my forms?
WPForms will never charge a fee for using PayPal within your forms. However, Stripe may have their own fees that are charged based on your usage. For more details on Stripe’s fees, be sure to check out Stripe’s breakdown of their pricing tiers.
That’s it! You can now set up one-time and subscription payments for your forms with the WPForms Stripe addon.
Now that you’ve set up an order form, would you like to start boosting sales? Be sure to check out our tutorial on optimizing your order forms to learn how.