WP Simple Pay Blog

WordPress Tutorials, Tips, and Resources to Help Grow Your Business

How to Add a Setup Fee to a Subscription Plan in WordPress



Want to add an initial amount to your subscription payment form in WordPress?

Charging a fee for subscription activation is a great way to cover your upfront costs. In this article, we’ll show you how to add a fee initially to your subscription payment forms with Stripe.

Charging Setup Fees to Activate Subscription

There are a few benefits to covering your initial costs incurred by charging a one-time initial setup fee.

  • It makes great business sense if your service requires extra initial setup work.
  • It can help you attract committed customers, in turn significantly reducing subscription churn in the long run.
  • You can offer specialized white glove service configuration at an additional cost.

Using a WordPress Stripe plugin like WP Simple Pay is the EASIEST way to charge an initial amount to activate a subscription plan.


WP Simple Pay is one of the best WordPress Stripe plugins that supports around 13 payment modes, including Buy Now, Pay Later payments, digital wallet payments, ACH Direct Debit payments, and more.

Here’s the form we’re going to create today with this tutorial:

stripe wordpress form accepts setup fees

Step 1: Install WP Simple Pay to Create a Subscription Form

To create a subscription form that accepts a one-time setup / initial fee, the first thing you’ll need to do is to install and activate the WP Simple Pay plugin on your site. You can install the plugin by going to the pricing page and selecting a plan.

Once you logged in to your WP Simple Pay account, download the plugin and then upload it to your website.

For more details, see this step-by-step guide on how to install WP Simple Pay.

Remove an additional 3% fee! Most Stripe plugins charge an additional 3% fee for EVERY transaction… Click here to remove transaction fees with Pro!

After WP Simple Pay is activated, you’ll be directed to the setup wizard, where you can connect your site with your Stripe account. To proceed, click Let’s Get Started in the setup wizard.

wp simple pay setup wizard

Even if you skip the setup wizard now, you can always go to WP Simple Pay » Settings and then go to the Stripe tab where you can find the Connect with Stripe button. Just click on it to connect your Stripe account to your site.

Step 2: Connect Your Website to Stripe  

Next up, you need to set up a new Stripe account or connect an existing Stripe account to WordPress to start accepting payments with an initial fee. Click Connect with Stripe.

connect to stripe

Now enter your email address and create a Stripe account or connect your existing account with your site. On this page, let’s not select Skip this form as this will create a temporary Stripe account that cannot be recovered or moved to Live Mode.

create a stripe account

After completing this process, you’ll see a success page that says Setup Complete. Now it’s time to create a subscription payment form that accepts a setup fee. Click Create a Payment Form.

setup complete

Step 3: Accept Subscriptions With a One-time Setup Fee

So far, you’ve installed WP Simple Pay and connected your Stripe account to your website. Now you’ll need to create a subscription form that collects a one-time initial fee.

On this page, you’ll find lots of built-in payment form templates that let you create payment forms for different scenarios. Since we want to create a subscription form that accepts a one-time fee, let’s choose the template Recurring Services with Setup Fee.


In the future, whenever you want to create a payment form, you can navigate to WP Simple Pay  » Add New and choose any template you want to use.

Now that you’ve selected your preferred template, you’ll be prompted to configure the General settings of your form. Here you can customize the title, description, and a few other elements.

general settings initial fees

WP Simple Pay allows you to host your form either on your own site or on Stripe’s website with the URL, checkout.stripe.com. If you want to host the form on your site, there is no need to make any changes to the Type field. Otherwise, choose Off-site Stripe Checkout form.

For more details, check out our complete guide to the Stripe checkout page for WordPress

If you want to customize the Payment Success Page, you can either choose a Specific Page from your site or if you want to redirect users to an external thank you page, choose Redirect URL.

Next, select the Payment option on the left. Feel free to change the default price, add new price options, change the currency, and more. Since we’ve chosen a Subscription template in the previous step, the Subscription option has been chosen for this form. Plus, a setup fee of $25 will be added to the initial amount. Feel free to change the amount per your needs.

setup fees stripe

For now, let’s NOT change the payment mode to Live Mode.

In the Form Fields option, you can even add or customize any existing form fields. To display details like Total due and Recurring amount on your final form, you can add the Amount Breakdown field to this form.

add amount breakdown

Step 4: Publish Your Stripe Payment Form

That’s it! You can now go ahead and publish your payment form and then embed it on your site.

Make sure you test the form first before it goes live. You can toggle your entire site or individual payment forms between test and live modes (read more about Test mode).

To embed the form, go to the post or page where you want to publish it. Then click on the + icon to add the WP Simple Pay block. Then choose a form you just created. And then, click Publish or Update.  

embed a form

There you have it!

We hope this article helped you learn how to add an initial setup fee to a subscription plan in WordPress.

You might also want to check out our guide on how to accept Google Pay / Apple Pay / Microsoft Pay in WordPress.

Start using WP Simple Pay today and enable all the advanced Stripe features on your site.

To read more articles like this, follow us on Facebook and Twitter.

Leave a Reply

Your email address will not be published.

This site uses Akismet to reduce spam. Learn how your comment data is processed.

Start Accepting Payments Today

Start accepting one-time and recurring payments or donations on your WordPress website.