Sell downloads on WordPress

How to Sell Downloads on WordPress Easily (2024)

Editorial Note: We may earn a commission when you visit links on our website.

Do you want to sell digital downloads on WordPress? Selling digital products is a great way to monetize your website and get extra passive income.

In this article, we’ll show you the easy way to sell downloads on WordPress. You can start selling your downloads today without writing a single line of code.

Create Your WordPress Download Form Now

How Do I Sell Downloadable Files on WordPress?

The easiest way to sell downloadable files is by using the WPForms plugin. It lets you add a payment field to any form on your site and instantly send out download links via email.

Selling downloads is a little different from selling physical products. You don’t need a full eCommerce platform. And offering instant downloads is a great way to increase form conversions and FOMO.

You can easily use a digital download form to sell digital goods like:

  • Ebooks and courses
  • Video streams
  • Software or WordPress plugins
  • And more!

In this tutorial, we’ll show you the easiest and fastest way to take payments for downloads.

How to Sell Downloads on WordPress

Let’s look at the steps we need to work through to get your download form up and running.

Step 1: Install the WPForms Plugin

The first thing you’ll need to do is install and activate the WPForms plugin. WPForms makes it easy to sell digital products. And you can set it up a lot faster than WooCommerce.

We recommend getting the WPForms Pro license so you can access over 1,600 ready-made templates and tons of advanced features for added convenience.

WPForms Pricing Page 2023

If you’re not sure how to install the plugin, see this step-by-step guide on how to install a plugin in WordPress.

Step 2: Set Up Your Payment Provider

In order to accept payments for downloads, you need to connect your forms with a payment gateway.

You can use Stripe with any WPForms license, including Lite. However, Pro users also have access to other payment gateways like PayPal and Square.

We’ll be using Stripe for this tutorial. To do that, open up WPForms » Settings.

Opening the WPForms settings

Now click the Payments tab at the top.

WPForms download settings for download forms

This screen lets you easily customize the currency for your payment form.

Just underneath the currency field, you’ll see the connection settings for Stripe. Click on the Connect with Stripe button to continue.

Connect with Stripe

At this stage, you’ll find yourself on the Stripe login page. You can enter the login details of your existing Stripe account here to connect or even create a new account.

Stripe login form

Did you notice that we’re using Stripe Test Mode? This will let us test all of the functionality in our form without making real payments.

You can also turn on test mode for PayPal, Square, or Authorize.Net if you need to.

Save your settings when everything’s set up the way you want it.

Save settings

Great! Now that Stripe is connected with your WordPress site, let’s start making a download form next.

Step 3: Create Your WordPress Download Form

In this step, we’ll make a form from a template and customize it to sell ebooks.

We don’t need a checkout page because we’ll have the items and payment fields on a single form. This is ideal if you don’t need to set up an entire shopping cart and simply make a quick buck with your download sales available through a simple form.

To start, click WPForms » Add New.

Add new form

You’ll see the form builder open in a fullscreen window.

Type in a name for your new form at the top.

Name your form

Next, scroll down to the Select a Template section.

Let’s search for “content download form template.”  Click on Use Template to select the content download form.

Selecting the Content Download Form template

Great! Now we can start to customize your form.

Step 4: Customize Your Download Form

The Content Download Form template has 4 fields to get you started:

  • Name
  • Business Email
  • Company
  • A field for questions or comments.

You can see them on the right-hand side.

Content download form builder

However, we still need to add a field containing the items we want to sell.

To achieve this,  we’re going to add a Dropdown Items field and sell 2 different downloads.

If you want, you can use dynamic field choices here. We’ll show you how to set up the fields manually for now.

Scroll all the way down to the Payment Fields section.

WPForms Payment Fields

Drag a Dropdown Items field from the left-hand panel over to the right. Then click on the dropdown field to edit it.

Opening the Dropdown Items field options

First, we’ll change the label to “Choose your ebook.”

Edit Dropdown Items field label

You can also see 3 answer choices. These are created by default, so let’s customize them now.

On each line, type in the name of the download that you want to sell.

Edit Dropdown Items choices

We’ve also edited the price for each item right next to their names. You can click the minus (-) icon to remove items and the plus (+) icon to add more.

Next, we’re going to turn on the Show price after item labels option here. This will automatically show the pricing in the dropdown.

Dropdown Items show price

This makes it easy for your customer to see how much they’ll pay.

On this form, we don’t need to add a Total field because the visitor can only buy 1 item at a time.

Step 5: Add the Stripe Credit Card Field

The last field we need is the Stripe Credit Card field. Let’s drag that onto the form now.

Adding a Stripe Credit Card field to a form

The credit card field works out of the box, so you don’t need to edit anything here. But if you do want to change the label or description, you can click on it to open Field Options and then make changes.

Changing the label of the Stripe Credit Card field

You’ll also see an Email subfield included in your Stripe Credit Card field. This field will enable customers to check out faster in the future via Stripe’s one-click checkout feature (Link).

This form now has all the fields it needs to allow customers to download files. But the Stripe Credit Card field will only take payments after you enable Stripe, as we show in the next step.

Step 6: Enable Stripe Payments

While inside the form builder, click on Payments » Stripe. After that, use the toggle switch to Enable Stripe Payments.

Enabling Stripe payments Stripe addon

After you’ve enabled Stripe payments, you’ll see additional options appear below. Here’s what these options mean:

  • Payment Description: This text will appear on your customer’s credit card statement.
  • Stripe Payment Receipt: Choose where to send the payment receipt for the purchase. You’ll normally want to choose Email here so that the receipt goes to the customer’s email address.

Filling out Stripe payment settings

Click Save at the top to save all of these settings.

Step 7: Customize Your Download Form Settings

In this step, we’ll edit the form settings. You can have different payment settings for every form in your online store.

On the left-hand side of the form builder window, click Settings. The General settings page for the form will open up.

Accessing a form's general settings

You can change several settings here:

  • Form Name — Change the name of your form here if you’d like.
  • Form Description — Give your form a description.
  • Tags — Add form tags to organize your WordPress forms.
  • Submit Button Text — Customize the copy on the submit button.
  • Submit Button Processing Text — Customize the text that will show while your form is submitting.

There are also some advanced settings, which include:

  • CSS Classes — Here you can enter any custom CSS classes you want to apply to your form or Submit button.
  • Enable Prefill by URL — Automatically fill in certain fields using information from a custom URL.
  • Enable AJAX form submission — This option is turned on by default. It lets users submit your form without reloading the page.
  • Disable storing entry information in WordPress — Disable the storing of entry information and user details, such as IP addresses and user-agent info. Check out our step-by-step instructions on how to add a GDPR agreement field to your form.

Next, move down to the Spam Protection and Security settings.

Opening the form spam and security settings

These options include:

  • Enable anti-spam protection — Turn on the WPForms anti-spam token to prevent bot submissions.
  • Enable Akismet anti-spam protection — If you use the Akismet anti-spam plugin, you can connect it to your form.
  • Enable country filter — Block entries from certain countries.
  • Enable keyword filter — Prevent submissions that include certain words or phrases.

You can also enable your preferred CAPTCHA option. Check out our complete spam prevention guide for more details.

All set? Click Save.

Next, let’s set up the way Stripe works on this form.

The form is ready to accept payments from customers who want to buy your digital file. But how are the customers going to receive the link to their purchased download?

One way to do that in WPFroms is by setting up an email to send automatically as soon as a customer submits the form, so they can instantly download their file.

You can set up form notifications by going to Settings » Notifications.

Accessing a form's notifications settings

WPForms automatically creates 1 notification here. This one will email you to let you know the form has been submitted.

We’re going to add a separate notification that sends the email with your download link to the customer.

Start by clicking on the Add New Notification button in the Notifications section.

Adding a new email notification

Type in a name for your notification. You’ll want to type in a name that matches the file so it’s easy to identify later.

Naming your ebook download notification email

Now we have a new notification ready to customize. You’ll see that it’s added right at the top of the Notifications window.

We want this email to go to the person who bought the download. So delete {admin_email} from the Send to Email Address, then click Show Smart Tags.

Showing Smart Tags for the email notification Send To address

And now, let’s select Email from the available fields.

Pulling the Send To email address from the Email field

Now the email notification will be sent to the email that was typed in on the download form.

Next, scroll down to the Email Message section and enter the message you’d like your customer to see when they receive the email from you.

We’re going to delete the {all_fields} Smart Tag and replace it with a custom message and a link to the file.

Ebook download email message

Perfect! Your form will now automatically send the download link to your customers after they’ve filled out the form and made the payment.

If there are multiple download files that people can choose from, we can use conditional logic to send different emails depending on the item that was purchased.

This makes it easy to send the right links without using a full shopping cart.

Creating Multiple File Download Notifications (Optional)

After creating your notification by following the steps above, click on the Enable Conditional Logic button at the bottom.

Enabling conditional logic for an ebook download email notification

Then, we need to tell WPForms to send this email only if the customer bought a specific email book.

Here’s how the conditional logic is set up for sending emails when a specific book is selected:

Setting up conditional logic for an ebook download email notification

To add your other download email, retrace the steps above by creating a new notification and using conditional logic to define when this email with a link to a different file should be sent.

That’s it! Now the customer will automatically be sent the right download link to the file they paid for.

Be sure to click Save to save your form. Now let’s publish it on your website.

Step 9: Publish Your Download Form in WordPress

After you’ve created your digital download order form, you need to add it to your WordPress website.

WPForms allows you to add your forms to many locations on your website, including your blog posts, pages, and sidebar widgets.

You can use a shortcode, but it’s a lot easier to use the Embed wizard.

At the top of the form builder window, click the Embed button to get started.

Embed form button

When the popup window opens, click Create New Page.

Create a new page

And then type in a name for the page. When you’re happy with it, click Let’s Go.

Name download form

Check that everything looks good, and add content or blocks here if you need to. You can also set up your SEO for the page.

When the page is ready to publish, click Publish at the top.

Publish ebook download form

It’s a good idea to make a test purchase for both items before you start to advertise your new page. Don’t forget to turn off test mode when you go live!

Once you’ve started collecting orders, you can track your payments and see how well your items are selling by going to WPForms » Payments.

Payments summary

And that’s it! You can go ahead and sell digital downloads on your WordPress site and take payments right away.

Next, Expand and Customize Your Payment Form

Did you know that you can use images in your forms?

WPForms lets you embed images using the Content field, or add images as choices to the Multiple Choice or Checkboxes fields. Check out this guide to adding images to your forms to find out how to give digital downloads an image instead of just using text.

You can also customize your Stripe payments if you want to accept Google Pay or Apple Pay in WordPress.

Create Your WordPress Download Form Now

Ready to build your form? Get started today with the easiest WordPress form builder plugin. WPForms Pro includes a free download form template 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. Thanks for the wonderful step by step wp form set up for digital downloads. Is it possible to add a discount coupon if you are offering to your buyers. Is there a way to add it to the payment page?

    1. Hey Mani- Currently we do not have a coupon code field integrated with WPForms. I do agree it would be super helpful, though, and it’s certainly on our radar as we plan out our roadmap for the future.

      A possible workaround might be to use conditional logic to display the correct payment field depending on the user’s input in another field. Please see the guide here

      I hope this helps! If you need any further help on this please feel welcome to reach out to our support team.

      Have a good one. 🙂

  2. hey can i use this plugin to sell serial keys, if a user buys a product then he will get that product aka serial key via instant email delivery and every key will be diffrent

  3. The sale of purchase of digital assets are on rise, since there are embedded legla rights and obligations, sale and buyer should clear all legal points, , I appreciate you sharing this good post. you write it in such a way that it makes even a common man to understand it.

    1. Hi Shahid! Thanks for reading our articles and letting us know you’re enjoying them 🙂 We really appreciate the kind words as well! Please come back often as we’re always adding new content and updating old ones.


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.