Sell Media File Plugin For WordPress

Sell Media File is a WordPress download plugin which allows you to sell digital media files from your website. It allows you to sell any type of downloads or media content such as videos, music, mp3s, photos, e-books, documents, software. Selling digital goods has never been easier. This plugin accepts credit card payments in a popup and upon confirmation delivers the downloads automatically.

Sell Media File Plugin Installation

  • Login to your WordPress admin dashboard
  • Go to Plugins->Add New
  • Enter Sell Media File in the search box
  • Once you find the plugin hit the install button

Option 2

  • Download the zip version of the plugin
  • Go to Plugins->Add New and switch to the Upload tab
  • Select the zip file on your computer
  • Upload and install it

Option 3

  • Download the zip file and extract it
  • Connect to your website via FTP (you can use a software like Filezilla to transfer files to your server) and browse to the “/wp-content/plugins” folder
  • Select the folder containing the plugin files on your computer and upload it
  • Once all the files have been uploaded to your web server you can activate the plugin from the Plugins menu (WordPress admin dashboard)


  • Sell digital downloads online in WordPress
  • You can sell your downloads with the Stripe payment gateway
  • Enable on-site payment functionality by accepting credit card payments
  • Easily sell music downloads such as mp3
  • Accept payments with Stripe
  • Sell video downloads or movie downloads
  • Easily sell e-books such as pdf, ePub files
  • Increase conversion rate since customers never leave your site
  • Sell WordPress plugin downloads or photo downloads
  • TLS 1.2 support for making secure API requests (Stripe is progressively dropping support for old technologies such as SHA-1, TLS 1.0 and 1.1)
  • Sell game downloads

Sell Media File Plugin Configuration

Once you have installed the plugin you will be able to access the settings by navigating to “Sell Media File -> Settings”.

screenshot showing how to navigate to the setting menu of the sell media file WordPress plugin

In the settings area, you will need to configure some options related to your Stripe merchant account.

screenshot showing the settings area of the sell media file WordPress plugin

Click on the “Save Changes” button when you are done.

Sell Media File Plugin Usage

Create a new post/page and add the following shortcode to create a Buy Now/Pay Now button with Stripe.

[sell_media_file item_name="test download" description="this is my cool test download" amount="2.00" label="Buy Now" download_link=""]

Shortcode Parameters

Sell Media File shortcode currently supports the following parameters:


The name of the media file or digital download (required).


A description of the media file or digital download being purchased (optional).


The price of the item. It is also the amount shown to the user (required).


The name of your company or website (optional).

[sell_media_file item_name="test download" name="" description="this is my cool test download" amount="2.00" download_link=""]


The text that is shown on the payment button (optional).


If you are selling a digital download you can specify the URL to your file in this parameter (optional).


A URL pointing to a square image of your brand or product(128x128px recommended). The recommended image types are .gif, .jpeg, and .png (optional).

[sell_media_file item_name="test download" description="this is my cool test download" amount="2.00" image="" download_link=""]


Specify auto to display Checkout in the user’s preferred language, if available (optional). English will be used by default.

[sell_media_file item_name="test download" description="this is my cool test download" amount="2.00" locale="auto" download_link=""]


The currency of the item (optional). If not specified it will take it from the settings.

[sell_media_file item_name="test download" description="this is my cool test download" amount="2.00" currency="USD" download_link=""]


Specify whether Checkout should collect the user’s billing address (optional). The default is false.

[sell_media_file item_name="test download" description="this is my cool test download" amount="2.00" billingAddress="true" download_link=""]


Specify whether Checkout should collect the user’s shipping address (optional). The default is false.

[sell_media_file item_name="test download" description="this is my cool test download" amount="2.00" shippingAddress="true" download_link=""]


The label of the payment button in the Checkout form (optional). Checkout does not translate custom labels to the user’s preferred language.

[sell_media_file item_name="test download" description="this is my cool test download" amount="2.00" panelLabel="Pay Now $2.00" download_link=""]

When a user clicks on the pay button, a window will pop up where they can enter their credit card and complete the payment.

screenshot of sell media file payment window

Upon completing the payment your customer will be able to download the media file.

When you receive a new order you will be able to view it in the orders menu.

screenshot showing the orders menu in the sell media file plugin

28 thoughts on “Sell Media File Plugin For WordPress”

  1. what if I want different price options?

  2. @Kane, It’s possible since you can add as many shortcodes as you want.

  3. Hi, I’m using your plugin to sell digital downloads. How would a user get access to the download link upon purchase?

    • @Robert, If the transaction is successful the download link will be available to the user in the next window.

  4. What is the maximum size of the file that you can sell?

    • @Luke, There is no file size limit.

  5. I would like to use this (or another) plugin to sell podcasts specifically in the Netherlands (Euros). Paypal is not the common way to pay for online purchases here, so I would like to use something that’s called iDeal. I also want my sold podcasts to be accessible to the buyer only, so that it is impossible for one buyer to give it to all of his friends for free. Is that all possible with this plugin or do I need to search for something else?

    • @kirsten, iDeal is currently not supported in this plugin. It uses Stripe to process payments.

  6. Setting up the plugin and am a little bit stuck… when including a download link, it loads on a wordpress error page after checkout… is that expected behavior? if not, where is it supposed to be loading, maybe something is missing from my theme? The original page is on a custom post type “mp3-single”, if that matters… the checkout is currently in test mode.

  7. I figured out that the download link page is actually using wp_die and was able to style that, and change the default message in process.php.

    One thing to be aware of is that you need to write a custom function to hide the orders from search results… otherwise anyone can see ALL of the details from ALL of the orders. Which is a giant security hazard.

    • @julieH, You mean you only want the admin to see the orders?

      • Yes!

        How can we hide the order history (which includes customer email addresses!) from public?

        This URL:, should not be visible to the public! How to re-directed to homepage for any non-admin user?

        • @Jeromy, Thank you for reporting this. I have just released an update to fix this issue.

  8. Hey there and thanks for the great plugin!

    I’m having some issues with submitting to Stripe. I keep getting this error message:

    stripe_error: Stripe no longer supports API requests made with TLS 1.0. Please initiate HTTPS connections with TLS 1.2 or later. You can learn more about this at

    Is this an issue with the plugin or do I need to fix something else?


    • @Matt, Thank you for the feedback. I will investigate this issue and get back to you.

    • @Matt, It looks like this is not an issue in the plugin. Can you please contact your hosting provider to upgrade to TLS 1.2?

  9. can i use this for a one time download for instructional video’s?

    • @Deanna, Currently the plugin doesn’t automatically send any email after the purchase.

  10. Hello, I would like to know if it’s possible to block the number of download for the file ?
    For example : client can download only 1 time the file

    Thanks for your feedback.

    • @rapid_king, the plugin doesn’t actually send any download link to the customer. So there is no need to limit the number of downloads for a particular file.

  11. How do I style the download page, or can we embed that in the website somewhere?

    Also, I am having a wordpress error up top but it was working fine. See screenshot:

    • @Jo, That’s not really an error. It’s just printing the content using the wp_error function.

  12. Hi,

    Can I limit the supplies of each product to 1?
    If I only want to sell 2 or 1 limited edition digital print of an illustration?

    Or something that is digital and limited to one sell only.
    That would be an option that I seek. Any suggestions?

  13. Hello,
    For some reason, my checkout is stuck in test mode and when I try to test using the test API keys, I get the error message of “You did not set a valid publishable key. Call stripe.setPublishableKey() with your publishable key. ” I doubled checked my API keys so they are correct and even though i unchecked test mode checkbox, i still see “Test Mode” label on payment screen.

    • @Matt, So you don’t have test mode enabled in the settings but it’s trying to submit the data in live mode? Please provide a link to the page where you have the buy button so I can check it.

  14. Is there anyway to have the video file automatically download without having to right click on it and “download the video”?

    • @Katie, Unfortunately, that’s not possible at the moment.

  15. Can we make the downloadable link private to only people who purchased it?


Leave a Comment