As sales of digital products are quickly becoming a major industry, there are many ways to make a website that lets people download products after purchasing them. In this guide we will show you how to sell digital downloadable products using Ubercart, which is a module for Drupal.

You must have Drupal installed, with the Ubercart module to complete this guide.

Selling Downloadable products using Ubercart for Drupal:

  1. After installing the Ubercart module in Drupal, make sure File Downloads are enabled:
    Login to the Drupal Dashboard, then click Modules in the navigation menu. Under the UBERCART-CORE section, make sure the File downloads option is checked, if it is, skip to the next step. If it is not click it, then click the Save configuration button on the bottom.
    allow file downloads in ubercart
  2. Now set the permissions, so people can download from your Ubercart store:
    In the navigation menu, click People, then click the Permissions tab.
    setting downloadable product permissions
  3. Scroll down to the File downloads section, and click the check box to allow Authenticated Users to download files.
    set permission level
    Then scroll down to the bottom and click the Save permissions button.
  4. In the navigation menu, click the Store option. Then under the Configuration section, click the Products link.
  5. Click the File download settings tab, you will then have several options. Below is the brief description of the available options provided by Ubercart:
    Option Description
    Files path The absolute path (or relative to Drupal root) where files used for file downloads are located. For security reasons, it is recommended to choose a path outside the web root.
    Warn about purchasing duplicate files. If a customer attempts to purchase a product containing a file download, warn them and notify them that the download limits will be added onto their current limits.
    Downloads The number of times a file can be downloaded. Leave empty to set no limit.
    IP addresses The number of unique IPs that a file can be downloaded from. Leave empty to set no limit.
    Time How long after a product has been purchased until its file download expires.
    Choose your options, then click the Save configuration button.
  6. In the navigation menu, click the Store button
  7. Then under Products, click View file downloads.
    view of file downloads in ubercart
  8. Under Action make sure Upload file is selected, and click the Perform action button.
    adding a digital file
  9. On the Upload file menu, click the Browse button, and choose the file you want to upload. Click the Upload file button. After the file is uploaded, you will see it listed. In my tests I am uploading an MP3 file.
    looking at the added file
  10. Now, create the product you want to add the file download to, by clicking the Add content button in the navigation menu. Then, click Product.
    adding a product in ubercart
  11. Enter the name and SKU, these are the only required fields. Fill in the other options as needed, then click the save button.
  12. You will then see the product page you just created, click the Edit tab.
    edit product
  13. Click the Features button, make sure the File download option is selected, and click the Add button.
  14. In the File download field enter the full name of the file, including the extension. For example: mysong.mp3, then uncheck the Shippable product option and click the Save feature button. You will see a message stating "The product feature has been added."

    Now when someone purchases the downloadable product they will be able to download it from their account:
    digital downloadable file

Congratulations, now you know how to sell a downloadable product using the Ubercart module for Drupal.
Did you find this article helpful?

We value your feedback!

Why was this article not helpful? (Check all that apply)
The article is too difficult or too technical to follow.
There is a step or detail missing from the instructions.
The information is incorrect or out-of-date.
It does not resolve the question/problem I have.
How did you find this article?
Please tell us how we can improve this article:
Email Address

new! - Enter your name and email address above and we will post your feedback in the comments on this page!

Did you find this article helpful?


n/a Points
2014-11-13 11:49 pm

I do not have a "files download setting tab" option, i do have a "view file downloads"

i'm using drupal 7




12,339 Points
2014-11-14 3:04 am
Hello Rick,

Thank you for your question. I confirmed in the Selling Digital Goods guide that this setting is correct.

You should be able to get to it here: "Administer > Store administration › Configuration > Product settings > Product features. You should see a link that says File download settings..."

If you are not seeing the File download settings option in UberCart, it is possible UberCart was not successfully installed, or a dependency is missing.

I recommend ensuring that UberCart was successfully installed, here is the helpful Official guide.

Thank you,
n/a Points
2015-04-09 4:19 am

Thank you for this nice tutorial, 

I'm using drupal 7.35 and ubercart 7.x 3.8 and I have the uc_auction module as will. 


I'm trying to allow users to create auction with downloadable file, so the auction winner can download the file after payment.


any idea how can I achive that ? 

It would be so amazing if the download file is a field that can be add to the auction content type. 

12,339 Points
2015-04-09 10:58 pm
Hello Abdul,

Thank you for your question. After creating a digital product as described above, then use a module such as Ubercart Auction.

If you do not want to use a module/plugin you will have to custom code a solutions, since Drupal does not have auction capability built in.

Thank you,
n/a Points
2015-06-10 3:53 pm

how to make it automate added to download file when i upload the file first time? because i have problem in multiple user website if i do it manual, thanx

17,314 Points
2015-06-11 10:57 am
Hello Yoharsi,

That kind of situation would require custom code, or perhaps an extension/add-on. We unfortunately cannot provide that solution for you. You may want to consult with developers of the product for further information or possible solutions.

Arnel C.
n/a Points
2015-07-09 11:01 pm

I have a Drupal 6 site using Ubercart. When someone purchases a download file they receive an email and it appears in the My Account section, but I'd also like for there to be a message on the final checkout page (post purchase) that gives them the download link and lets them know an email has been sent and they can manage their downloads from their Account page. How do I set up something like that? Thanks for your help!

12,339 Points
2015-07-13 5:12 pm
Hello StuartJ,

Thank you for your question. I could not find a built-in way to customize the checkout page in ubercart.

Unfortunately, this means you will have to custom-code/develop a solution.

Thank you,

Post a Comment

Email Address:
Phone Number:

Please note: Your name and comment will be displayed, but we will not show your email address.

Related Questions

Here are a few questions related to this article that our customers have asked:
Ooops! It looks like there are no questions about this page.
Would you like to ask a question about this page? If so, click the button below!
Need More Help?

Help Center Search

Current Customers

Email: Ticket: Submit a Support Ticket
Call: 877-595-4HUB (4482)
757-416-6627 (Intl.)
Chat: Click To Chat Now

Ask the Community

Get help with your questions from our community of like-minded hosting users and Web Hosting Hub Staff.

Not a Customer?

Get web hosting from a company that is here to help.