Recurring Payments in WordPress

How to Accept Recurring Payments in WordPress (Easy Method)

Do you want an easy way to set up WordPress recurring payments?

Recurring payments really help to scale up your sales or donations. You get predictable income without spending time chasing up payments.

In this article, we’ll show you how to set up recurring payments in WordPress. You can add a payment field to any form on your site and collect the money through your favorite payment provider.

Create Your Recurring Payment Form Now

How Do I Set Up a Recurring Payment on WordPress?

The easiest way to set up recurring payments is with WPForms. You can easily add a Stripe credit card field to any form and then specify when you want the payment to recur.

Recurring payments are an awesome way to improve your cashflow with:

WPForms is the best WordPress Form Builder plugin. Get it for free!

WPForms is the best recurring payment plugin for WordPress. It lets you easily add subscription payments to any form on your website, even if you don’t know anything about APIs or code.

WPForms homepage

When your visitor submits the form, WPForms will trigger the first payment. From there, the payment provider will then take over and bill that customer on the schedule you chose in the form settings.

If you choose WPForms Pro as a recurring payments plugin, you’ll also unlock all of the other awesome addons that come with it. For example, you can:

In this tutorial, we’ll show you how to set up recurring payment forms without a separate eCommerce checkout.

How to Accept Recurring Payments in WordPress

If you prefer reading instructions, we’ve written out this tutorial below.

Let’s get started with accepting recurring payments on your WordPress site for monthly plans or subscriptions. We’ll walk you through the process step by step.

  1. Install the WPForms Plugin
  2. Create Your Recurring Payment Form
  3. Customize the Payment Form Fields
  4. Connect Your Payment Provider to Your Form
  5. Publish Your Recurring Payment Form

First, let’s install the plugin we’ll use to collect recurring payments.

Step 1: Install the WPForms Plugin

First, install and activate the WPForms plugin. If you need help, see this step by step guide on how to install a WordPress plugin.

WPForms pricing

After you’ve completed plugin activation, you’ll want to install the WPForms addon for the payment service you want to use:

Go to WPForms » Addons to install the addon you need for recurring payments.

WPForms addons menu

On the Addons page, scroll down to either the Stripe addon or the Authorize.Net addon and click the button to install it.

Don’t forget to Activate it here too.

Install the WPForms Stripe addon for recurring payments

Before moving on, we also recommend that you install the Form Templates Pack addon. This will give you 100+ extra WPForms templates that you can quickly use to make payment forms.

Form Templates Pack addon

Now we’re ready to make your recurring payment form in WordPress.

Step 2: Create Your Recurring Payment Form

In this example, we’ll create a donation form that takes a recurring monthly payment. The steps are basically the same for any kind of order form or subscription form.

First, go to WPForms » Add New to create a new form.

Add new WordPress form

Type in a name for your form at the top. We’ll call our form Recurring Donation.

WordPress recurring payments form name

Next, scroll down and click the donation form template to open it up.

WordPress recurring payments form template

This is what our donation form looks like before customizing any of the form fields.

You can drag fields over from the left hand panel to add them to your form. And if you want to customize a field, just click on it and edit the settings.

Recurring payments form for donations

Go ahead and tweak your form until it works the way you want. For help with this, check out our full tutorial on creating a nonprofit donation form in WordPress.

Step 3: Customize Your Payment Form Fields

Now it’s time to add the payment fields for the recurring donations in WordPress. WPForms makes this super easy. You’ll need to have:

  1. At least one ‘items’ field (Single Item, Multiple Items, or Dropdown Items)
  2. A Stripe Credit Card field

And that’s it.

On our donation form, we already have a Donation Amount field, which is a single item field. To add the credit card field, we can drag it onto our form from the Payment Fields section.

Add Stripe credit card field

Believe it or not, that’s all you need to do! Now your form has a credit card field for payments.

If you want, you can accept recurring payments and one-off payments through the same form. To do that, you’ll want to add a dropdown with the 2 different choices: one off or recurring.

Choose one-time or recurring donation

In the next step, you can use conditional logic in your Stripe payment settings to tell WPForms whether to process a one-time payment or a recurring payment.

Great! All we need to do now is set up Stripe on your recurring payment form.

Step 4: Connect Your Payment Provider to Your Form

For this next step, you’ll need to have your Stripe account connected in the main WPForms settings area. This is super easy and you’ll only have to do it once.

If you haven’t synced Stripe yet, check out our Stripe addon documentation.

Now let’s edit your form settings so that each entry creates a new subscription payment. In the form builder, click Payments » Stripe to start.

Recurring payments settings

Next, click Stripe to open up the payment settings for your form. If you’re using Authorize.Net, you can click that here instead.

Recurring payments Stripe settings

On the right hand side, you’ll see the payment settings in the form builder. Let’s click the checkbox labeled Enable Stripe payments.

Enable WordPress recurring payments

Rememeber how we said that you can accept one-time payments and recurring payments through the same form? The first set of settings applies to the one-time payment.

Add a Payment Description and select the Email field for the Stripe Payment Receipt here.

Description for WordPress recurring payments

Remember: if you’re using the same form for one-off and recurring payments, you’ll want to check the Enable conditional logic checkbox and set up the conditions.

Next, let’s scroll down to Subscriptions and click the checkbox labeled Enable recurring subscription payments.

Enable recurring subscription payments in WordPress

The settings underneath will apply to the recurring payments through Stripe:

  • Plan Name: Type in a descriptive name that your customer will recognize.
  • Recurring Period: Use the dropdown to choose how often people will be billed: weekly, monthly, yearly, etc.
  • Customer Email: Select the customer’s email address for the recurring payment notification emails.

Recurring payments plan and schedule

All set? Click Save.

Step 5: Publish Your Recurring Payment Form

Before adding your donation form to your website, make sure to test it to make sure everything processes correctly. For help with this, we have documentation walking you through how to test Stripe payments before accepting actual payments.

Now you can publish your form!

To start, hit the Embed button at the top of the form builder.

Embed recurring payment form in a new page

Click Create New Page in the popup that appears.

Create a new page for your form

And finally, type in a name for your new WordPress page and click Let’s Go.

Name your recurring payments page in WordPress

Check that your page is ready to go live, then hit the blue Publish button.

Publish recurring payments form in WordPress

Now you’re ready to start taking payments for your subscription plans or services.

If your customer wants to change or cancel their monthly plan, you’ll find the payment amendment or cancellation option in your payment processing account.

Create Your Recurring Payment Form Now

Next Step: Grow Your Online Store

And that’s it! Now you can take recurring card payments in WordPress without any hassle.

If you decide to upgrade to a full eCommerce store, this article on how to start an online store will be super helpful. We included some important benefits of WooCommerce vs Shopify.

Finally, if you want to accept recurring donations for your charity, be sure to check out the WPForms nonprofit discount.

Ready to build your form? Get started today with the easiest WordPress form builder plugin. WPForms Pro includes the Stripe addon and offers a 14-day money-back guarantee.

If this article helped you out, please follow us on Facebook and Twitter for more free WordPress tutorials and guides.

Using WordPress and want to get WPForms for free?

Enter the URL to your WordPress website to install.


  1. I purchased WP Forms Pro to create a membership application form for a non-profit association. There are several classes of membership, each with unique pricing and offered in a choice of annual (one-time) or monthly (recurring) payment plans. I have used conditional logic to achieve the relevant pricing total based on the user’s selections. Now I need the payment integration. We want to use PayPal, not Stripe. The tutorial here only shows how to do it with the Stripe add-on. is there a way to do it with PayPal instead? Thanks.

  2. I am looking for a plugin which does
    take subscriptions with recurring payments
    restrict content
    payments should be multi currency. Dollars, Euros, Rupees etc. based on country they are living in.
    Please help me achieve this.

    1. Hi Prasanna! Our forms would be able to process recurring payments, but what currency is charged to your customers would be dependent upon your payment processing (PayPal/Stripe/Authorize.Net) account’s settings. We do not have any features for restricting content. From what you’ve described it sounds like you’re looking for a full featured membership type of plugin such as Memberpress.

      I hope this helps to clarify 🙂 If you have any further questions, please submit a support ticket if you have an active WPForms license.
      If you don’t have an active license, we provide limited complimentary support in the WPForms Lite support forum.

    1. Hi there– Currently, we do not have a built-in way to let users select the recurring payments with the annual and monthly options. I do agree it would be super helpful, though. I’ve made a note of the feature request and we’ll keep it on our radar as we plan out our roadmap for the future.


      1. Thanks. So is there a work around for this through some sort of conditional logic? Such as ask “Choose: Annual or Monthly or Non-recurring” And if Monthly is selected a new form is show? Any other creative ways? Thanks!

      2. The best workaround at the moment would be to have one form set up to let users select their monthly recurring period and another form for the annual recurring period. Then after they submit the form to select their recurring period, the user would then be redirected to the form with Stripe enabled for that recurring period.

        In case it helps, here’s our guide on setting up conditional redirects with more details.

        Hope this helps!

      3. I’ve built just about everything with these forms, including full membership sites (with a little php functions help on page access permissions). There is almost always a work around. I have this same problem and the work around was to have the user complete the main form and then then redirect to a monthly, twice a year, or annual payment page based on their selection. Change the submit button to “Next” or “On To Payment” or whatever and it loads like it’s just the next step from the user’s perspective. Con: You have to check that they submitted both the registration and payment, but honestly I think we all check that we got the payment anyway, so it doesn’t really add that much work.

      4. Hey Gordon- Thank you so much for sharing your workaround and feedback on it!

        We appreciate it 🙂

  3. İs there any option to let user knows end date for this recurring payments….i mean there should be an option when end date of recurring payments should be.

    1. Hi Aqib- Currently, we do not have the option to notify the end date of the recurring payments. I’ve made a note of the feature request and we’ll keep it on our radar as we plan out our roadmap for the future.


  4. can we add end date in payment form i want to create monthly recurring form for donation i want to give end date to visitor he can select the ending month of a payment. Please help me out

    1. Hi Imran! I apologize, but currently it isn’t possible to set an “end date” for when the monthly recurring payments would stop. You would need to manually terminate the recurring payment from your Stripe account. I do agree it would be super helpful, though. I’ve made a note of the feature request and we’ll keep it on our radar as we plan out our roadmap for the future.

      I hope this helps to clarify 🙂 If you have any further questions about this, please contact us if you have an active subscription. If you do not, don’t hesitate to drop us some questions in our support forums.

Add a Comment

We're glad you have chosen to leave a comment. Please keep in mind that all comments are moderated according to our privacy policy, and all links are nofollow. Do NOT use keywords in the name field. Let's have a personal and meaningful conversation.

This form is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.