WPForms Documentation
Documentation, Reference Materials and Tutorials for WPForms
Documentation, Reference Materials and Tutorials for WPForms
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.
Before we get started, be sure to install WPForms on your WordPress site. Then, you can go ahead and install and activate the Stripe addon.
For information on how to set this up, please see WPBeginner’s guide to adding SSL and HTTPS in WordPress.
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, go ahead and select the option you need from the Currency dropdown before proceeding.
When you’re ready, scroll down to the Stripe section. These Stripe key fields will need to be filled out in order to connect your payment forms to your Stripe account.
To find these keys, you’ll need to log into your Stripe account. Be sure to do this in a new tab or window, as we’ll be returning to those payment settings soon.
We’ll start by copying the test keys. Stripe’s test keys will be used if you test Stripe payments, which we recommend doing before adding your form to a live page.
After logging in, click Developers in Stripe’s left menu. Within the additional menu options that will appear underneath this, you’ll then need to click on API Keys.
Under the section titled API Keys, you should see a notice that reads, “Viewing test API keys, toggle to view live keys”. This means that the keys shown here are the test keys you’ll need to copy.
When you return to your WPForms payment settings page to paste in these test keys, be careful to place them in the correct fields. The key names will help with this, as the key that begins with pk_test_
will go in the Test Publishable Key field and the key that begins with sk_test_
will go in the Test Secret Key field.
Next, we’ll need to copy the live keys, which will be used to collect actual payments when your form is displayed on your site. To find your live keys in Stripe, you’ll need to toggle the option that currently reads Viewing test data.
When you switch to the live keys, you’ll see a very similar screen. But you can quickly check that these are the keys you need by again looking to the beginning of each key. The Live Publishable Key will begin with pk_live_
, and the Live Secret Key will begin with sk_live_
.
You’ll need to copy these live keys into your WPForms payment settings, as well. Then once all of the Stripe keys have been added to your payment settings, click Save Settings.
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:
For our example, we’ll create a simple order form that includes Name, Email, Dropdown Items, Total, and a Credit Card field.
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.
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:
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:
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 Donation Type is Monthly.
This is all that’s needed to set up a conditional recurring payment!
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.
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 do I view purchase/subcription 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 cancel a subscription for a customer?
To cancel a subscription, you’ll need to open the individual entry and then look to the Payment Details section in the right sidebar. From here, you can click the Subscription ID link to open subscription details for this customer in Stripe.
At the top of this page in Stripe, you can click the Cancel Subscription button.
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.
wpforms_stripe_instance
function and WPForms_Stripe::instance()
.wpforms_stripe_process_complete
wpforms_stripe_creditcard_value