Media Store is a Joomla 3 extension developed by ExtStore. It allows you to sell downloadable/digital products such as documents, e-books, software, images...

Media Store comes with SEO support, nice responsive design, easy usage for both users and administrators. Especially, it is designed to flexibly use various supporting plugins which make the component more capable.


  • Joomla MVC Standard: Media Store’s code is written based on Joomla 3 standard. That makes it work great on Joomla 3 websites and support the custom layout of templates.
  • SEO Support: Media Store is optimized for SEO and SEF. It is fully compatible with Joomla as well as SH404SEF or SEO components.
  • Capability: Media Store supports plugins to expand the capability of its features.
  • Multi level/nested categories: Media Store allows you to manage your products across infinite categories and subcategories.
  • Products management: Media Store allows you to enhance the product with title, short and full description, metadata, price, download restrictions, demo link, etc. You can also add unlimited files and images/screenshots to your products. Furthermore, product can also be assigned to multiple categories.
  • Super easy files/images management: Files/images are listed in a popup box. You can filter them by name or change the list's limitation. More especially, you can upload multiple files/images at one time with dragging and dropping files/images.
  • Support both free and paid products: For paid products, after buying one product, files will be automatically showed for download and 'Buy Now/Add to Cart' button will be changed to 'Download' button. For free products, you can configure which user group has permission to download files.
  • Special product type: Media Store supports the product in category type. If the users buy this kind of product, they can download all files in categories that the product is assigned to.
  • Payment methods support: Media Store supports payment methods by plugins, you can install more payment plugins for your purpose. Paypal, Skrill (Moneybookers) and 2Checkout are included by default.
  • Shopping cart and quick checkout: Users can add multiple products to the shopping cart as well as manage the cart, use coupon and do the checkout on only one page easily.
  • Coupon system: You can create coupons and discounts for your customers. You can apply coupon code to specific products or categories.
  • Flexible billing fields: You can configure to show/hide, make fields required or not for user to fill in checkout page.
  • Guest checkout: Your customers do not have to register and login before the checkout. Media Store will automatically create user account based on customer billing information.
  • Email notification system: You can configure notification email for both administrators and users when users place orders or orders are approved.
  • Orders management: You can manage orders in back-end, assign orders to users, add/remove products and print an order.
  • EU VAT support plugin: This plugin support for Media Store ensures the correct calculation and display tax on checkout page of customers in EU apply the new VAT rule for digital product. EU VAT plugin calculates automatically when customers in EU enter a billing address. 
  • Support Pause/ Resume for downloading file.
  • Review system allows users who buy the product rating and writing a review, users also can be easy to edit their reviews. Review system also allows admin to be easy to manage, edit or add new review for the products.
  • Flexible options: There are many options to configure Media Store in back-end.
    • Sales statistic with animated graph in daily, weekly, monthly or total.
    • 2Checkout payment method.
    • Search and Smart Search plugins.
    • Support Xmap to display sitemap.
    • Simple Buy X Get Y plugin.
    • Like to Download plugin.
    • Disqus comments.
    • European VAT Support plugin.
    • Joomla version compatibility plugin.
    • Add This plugin with sharing buttons.
    • Compatible with Bootstrap 3.
    • Multiple demo urls can be added to one product.
    • Assign new customers to configured user group after buying.
    • Allow delete folder on file and image manager page.
    • Image cache feature. Improve website loading time and SEO performance
    • Product quantity in checkout cart can be changed.

Click here to see demo of Media Store


First of all, you need to download the latest version of Media Store from ExtStore website. There are 3 ways to install an extension. You can upload an extension, install from a directory or install from a URL

  • Upload an extension:
    • Download the extension to your local machine as a zip file package.
    • From the backend of your Joomla site (administration) select Extensions -> Install/Uninstall.
    • Click the Browse button and select the extension package on your local machine.
    • Click the Upload File & Install button.
    • Note that modules and plugins must be enabled before they will work.
  • From a directory
    • Unzip all of the files locally.
    • Transfer the files (using FTP) to a folder in the install directory (for example administrator/components/com_installer/components) for the type of extension you are installing.
    • Use the installer, but select "install from directory" indicating the correct folder name. This folder name should be an absolute path from the root of the filesystem.
  • From a URL:

This will install your extension from any URL as long as you give the full URL (ex: The only problem with this option is depending on your connection speed and file size it can take quite a while to retrieve the file from an external site, which could cause installation issues.


Main screen in back-end

  • From the Administrator site, choose ComponentsMedia Store




  • Click the icons or left menu items to go to the specific parts of the component. There are also support links, version and other useful information in the dashboard view.

Create new category

  • Click Categories item or icon on the dashboard, choose New button.png to create a brand new category. Please notice that Media Store does not support tags so you could get an error message if you try to add tags to a Media Store category.


  • You can add the title, description or even images as well as strengthen SEO support in the categories. Media Store allows to create unlimited number of categories and sub-categories like this:

Extcms unnlimited categories.png

Create new product

Click Products then click New button.png to create a new product. In each product, there are tabs that contains many flexible options.

Settings for Details

  • The Title and Product SKU of the product are required. Product SKU is used to create a unique identifier for each product that refers to the particular stock keeping unit.
Extcms new product.png


  • Category: Choose a Category for the product.
  • Product Type: Type of product.
    • Normal: Products will be showed in a list of single products, one by one and customers can choose which one to download.
    • Category: Customers can download all products in specified categories.
    • Service: Choosing this option, admin have to upload products for every order.
  • Price: Enter the price of product. The currency type is set in General settings of the component's configuration
  • Limit Type: Restrict download times by the limitation in the number of downloads, number of days for downloads or no limitation.
  • Limit: Number of downloads or days which has just set in the Limit Type option.
  • Files: You can add, delete or manage files. Click Folder.png button to open the library. There are two ways to add files to the library. The first way is clicking to find the files you want to add. However, you can also drag&drop your files to the popup window then they will be automatically uploaded to the library. No matter what way you choose, the process are super simple and very quick to use.



  • Short Description: It has got the same role as a brief introduction of a product that provides general information.
  • Description: Full description gives more specified information and features of the products.

Images Manager

  • Thumbnail: Set the image for the thumbnail view of a product.
Extcms images library.png


  • Image: All the images for thumbnail or image slider can be uploaded and chosen from the image library. You can add images as much as you wish from the images library to create Images Slider. Like the files library, Media Store's image library also supports Drag&Drop feature.



Additional Attributes

Extcms additional attributes.png

  • Version: Add version number of the product or leave it blank if you do not want to add.
  • Demo URL: Demo link of the product.
  • Documentation URL: Link to the documentation for the product.
  • Changelog: This is where you write the record of changes made to the product.
  • Joomla Version: This feature is particularly necessary for media store owners who want to sell Joomla products.
  • JED Url: Link of Joomla extension (if available) to JED (Joomla Extension Directory) website.


Publishing and Metadata

Publishing OptionsParameters
Extcms publish options.png
  • Alias: Alias is for internal use only. Just leave it blank and Joomla will fill in a default value from the title. It has to be unique for each product in the same category.
  • ID: Record number of the product in the database.
  • Besides, there are more options of date and author. However, you should notice the Modified Date option and delete it before saving. If you didn't do this, the modified date couldn't be updated automatically after every time you edit the product.
  • Hits and Downloads: Although these parameters are updated after each time the visitor click or download one product on the the website, you can totally edit them here.
Metadata OptionsParameters
Extcms metadata options.png
  • Meta Description: The optional paragraph to generally display in the results of search engine.
  • Meta Keywords: The optional comma-separated list of keywords or key phrases. This contributes to SEO on your website.
  • Robot: People normally have to use some HTML <META> tags to tell robots not to index the content of a page but now you only need to choose among options for robots of products.
  • Content Rights: Describe the content right which others must have to abide by to use this content.


Click New button.png button to create a new tax rate.

Extcms tax basic options.png

  • Title: We need to add a title for tax. For example, one of the most well-known tax is VAT (Value Added Tax).
  • Tax Type: Set by percentage or amount.
  • Tax Amount: It depends on which you've just chosen in tax type to be counted in per cents or an amount in default currency (eg: USD).

Coupon and Currencies

Click to make New button.png or Edit button.png an available coupon or currency.

Coupon SystemCurrencies
  • Title: The title of the coupon is required.
  • Code: Enter one unique code for the coupon.
  • Discount Type: Discount by percentage or amount.
  • Discount Amount: It depends on which you've just chosen in discount type to be counted in per cent or an amount in default currency (eg: USD).
  • Title: Currency must have a name.
  • Code: Code or abbreviation type of the currency.
  • Symbol: Every currency need to have a symbol.
  • Position: Choose the option to put the currency's symbol before or after the number.


Media Store allows users who purchased your product can be able to rate and write then edit their review. And as an admin, you are easy to manage all of the reviews at the backend and you also can edit them.
Please note that, users must purchase the product successfully have a right to write a review for that product.

At the frontend, in product detail page you can see:



Users are easy to rate and write a review and they are totally able to edit their review by clicking Edit link => Edit the review content as they want => Click on Submit button to update their changes.

At the backend, firstly, you need to set permission for user to review: From Dashboard => Configuration => Choose Allowed for Rate Product then click on Save & Close button to save your changes. 

media permission

From Dashboard, click on Review section


You are able to manage all of the reviews of your product and you also can edit them by clicking on the review you want and change the start rate and the review content.


How to create a new review from backend. 

From Dashboard => Review => click on New button to create a new review

- New Review


Rating: Choose number of stars you want to rate for the product.

Comment: Write you review/ comment for the product.

- Publishing


Product: Choose one product from the list to assign the review.

Create By: Choose uer who be assigned for the review

Create Date: Choose created date for the review. 

Modified Date: Choose modified date for the review.

ID: ID of the review, it will be created automatically.

 Click Save or Save & Close button to save your changes. 


Statistics filter the data of sold-out products hourly, daily, weekly, monthly and Year to Date. Moreover, it also provides the information of Lifetime Sales, Total Sales, Total Orders and Average Orders of chosen time period as well as Discount Used. The graph was also designed with blue and orange colors which stand for Number of Sales and Sales Amount respectively.

Mediastore statistics.png

Media Store Plugins

  • In the administrative site, go to Extensions → Plug-in Manager then search for Media Store plugins and enable them all.



PayPal PluginMoney Bookers Plugin
  • Mode: Select PayPal live mode or test mode.
  • PayPal ID: Provide your PayPal ID here.
  • Label: This is where to change the name of the payment method that displays in the checkout page.
  • Description: Fill out with the description of PayPal payment method.
  • Moneybookers Email: In order to access to the international payment netwwork of Moneybookers, you can register here for a free account if you don't have one yet.
  • Customer ID: Enter your ID here.
  • Secret Word: Pre-shared secret key to secure the transaction. After the activation, Moneybookers will give you permission to access to a new account called Merchant tools. Do not use your password for this and provide the secret word in your Moneybookers admin area and above.
  • Label: Change the name of the payment method that shows in the checkout page.
  • Description: Add teh description of Skrill (Moneybookers) payment method.
2Checkout PluginBuy X Get Y Plugin
  • Mode: Select live mode or test mode.
  • Seller ID: Your 2Checkout account number.
  • Secret Word: The secret word which is defined in your 2Checkout account.
  • Label: Set for display name of 2Checkout method.
  • Description: Description on checkout page.
  • Title: Enter the name of discount issue.
  • Product X: ID of the first product.
  • Product Y: ID of the second product (the promotive product).
  • Discount Amount: The amount of money that customers will get if buy both of product X and Y by percentage or fixed amount.
Add This PluginDisqus Plugin
  • AddThis Code: Fill the blank with code of social buttons.
  • Custom CSS: Add CSS style to customize the social buttons.
  • ShortName: Tell the Disqus service your forum's shortname which is the unique identifier for your website. If shortname is undefined, the Disqus embed will not load.
  • Category ID: Tell the Disqus service the category to be used for the current page. This is required when the thread on Disqus is created for the first time.
  • Like to Download Plugin:
    • Load Facebook JS: Option to load Facebook javascript library. Choose No if another extension has already loaded it.
    • FB Page Url: Url of your Facebook fanpage.
    • Title': Title of popup window.
    • Message: Message of popup window.
    • Continue Text: If visitors do not want to like page.
    • Show Faces: Display fans' profile photos below the button. Note that these photos are shown only when visitors logged in Facebook and had friends liked the page.
    • Selector: Selector for download link.
    • Cookie Name: Name of cookie to be stored when users like the page.



EU VAT Support Plugin:

From backend, click on Extensions Plugins , search European VAT Support plugin to enable.


Search and Smart Search

  • In order to use Search feature within this component, click on ExtensionsPlug-in Manager, then find for Search - Media Store and Smart Search - Media Store plugins.

Extcms search plugins.png

  • Click in ExtensionsModule ManagerNew to create new Search and Smart Search modules:

Extcms new search modules.png

  • Go to ComponentsSmart Search and update the Index.png .
  • Waiting in some seconds for the indexing process to complete.

Indexing process.png

  • Display on frontend.
Search boxes


Using Sitemap

  • Download Xmap and install this component successfully on your site.
  • On the Admin Toolbar, choose Extensions ? Plug-in Manager, then search for Xmap - Media Store Plugin and enable it to use.

Extcms xmap plugin basic options.png

  • Choose Components → Xmap. Then choose a sitemap to Edit.png or create New button.png one.
  • Create one menu which you want to display the sitemap in. Then create a new or edit an existing menu item. The Menu Item Type is HTML Site map.

Extcms menu item sitemap.png

  • Sitemap on front-end.
Sitemap for Media Store


Display Media Store

  • In the admin site, click MenusMenu ManagerAdd New Menu Item or select a menu item from the list of menu items to edit. A popup window will appear, just choose the menu item type as Media Store.
Extcms menu item.png


  • There are a lot of choices for you to show the store.
    • Shopping Cart: The front page will show the items which customers added into their carts.
    • Category List: All the products in the chosen category will be showed on front-end.
    • Downloadable Products: Display a list of
    • Message: Display message to the customer. It could be a 'Thank you' message, cancel message or any type you set.
    • Customer Orders: Display a list of order history of customers.
    • Single product: Choose a certain product to display.


Display a Category List (Joomla! Components)


Display a Single Product


Order Management

Checkout Process

  • Click Buynow button.png button to add a product in the cart, then the 'Shopping Cart' page will be progressed automatically.
Extcms checkout process.png
  • Customers should fill out all the fields in the form. These user fields can be customized (added or removed) by Show/Hide options in the component's configuration settings.
  • Currently Media Store includes 2 default payment methods: PayPal and Moneybookers. After picking the payment method, customers can place order.

Manage in Backend

  • In the administrator site, Go to Users → User Manager. If the buyers are not users, Media Store will create new user automatically and you can manage the users here.
  • Orders are regularly updated in backend. You can create New button.png or Edit button.png the available orders.



  • Every order gives the information of name, address, zip code, country, phone as well as subtotal, discount amount and payment method.



  • Orders can also be printed easily.




Click on the Gear icon or choose Configuration item from the main dashboard.

General Settings


  • Store Name: Your online store's name.
  • Store Logo: Upload the store logo here. It's used for email purpose.
  • Cart Single Product: This option allow customers to add only-one-product in their cart. If they choose a new product, this new product will be display in the cart, alternating the old one..
  • Enable Quantity: The option to enable customers to choose more than one product in their cart.
  • Upload Path: Path to store files.
  • Extensions: Add the the allowed extensions which could be downloaded as files of products.
  • Image Quality: Quality of images to be displayed.
  • Free Download Group: Set the user group that can download free files.
  • Days for New: Number of days for showing a product as new.
  • Downloads for Hot: Number of downloads for showing a product as hot.
  • Default Category: Set default category, all the products in this category will be display by default if you do not choose any specified category.
  • Currency: Set the currency for all products on your page.


An example of one new and one hot product


Products Settings

media product


  • Choose a layout: Choose a default layout being used for articles of products.
  • Show title: Select the option to Show/Hide the title of articles.
  • Show Rating: If you choose Show, the Rating Star will appear at  the product detail page allow users rating. And Rating Star also displays on product list page to show the numbers of rate.
  • Images # Columns: Set the number of columns in which the products will be displayed on frontend.

Category Settings


  • Choose a layout: Choose the layout for all products in a category. The layout can be set by default or current template.
  • Category Order: The order that categories will showed in.
  • Product Order: The order that products will be showed in. You can pick from a lot of options depend on time, hits or alphabet.
  • Date for Ordering: Products are ordered by modified or created date. This is the support option of Product Order.
  • # Columns: The number of columns in which to show images of products.
  • List Limit: Restrict the product in each page.
  • Pagination: Show or Hide Pagination support. Pagination provides page links at the bottom of the page that allow users to navigate to additional pages.
  • Pagination Results: Show or Not Show the information of pagination results (eg: Page 1 of 4).
  • Some other options to show or not show title, description, image of the category, product description.

Other Layouts

Choose the layout and title option for cart and orders. You can choose default layout of the component or among the layouts from the website's templates.

Message Settings


  • Choose a layout: Default layout which being used for message.
  • Show Title: Show or hide the title of message page.
  • Thank Page Type and Cancel Page Type: Select the type for these pages in configuration or link type. After that, you can add link URL, title and content of message page.

Admin Email


  • Admin Email: Email of single or multiple administrators who receive notification emails. Emails are separated by comma (,)
  • Notify new order: Notify to admin whenever a new order is submitted.
  • Notify Order Approved: Notify to admin whenever an order is approved.

Furthermore, you can add subject and body for these kinds of orders.

Buyer Email

This part allows you to configure various options for email notification which being sent to administrators.

User Billing Fields

There are various field settings for user billing information.

Permissions Settings

media permission

Set permissions allows to change settings (Configure, Create, Delete, Edit...) for all child groups, components and content. There are 9 Default Groups, 8 Actions for each group and 3 Settings (Inherited, Allowed, Denied) for each actions. You can take the changes in more than one group.

Enable Update for Joomla Extensions

This instruction helps you enable update server for your Joomla extensions. If you don't sell Joomla extension with Media Store, you can ignore this.

  1. Publish plugin Media Store - Joomla Extensions Helper in ExtensionsPlugin Manager.

    Enable Joomla Plugin

  2. After publishing plugin, you will see Joomla tab in Product Edit page.

    Joomla Tab

  3. Choose Yes for Enable Update. Input right value for Element and Type
    • Element: Name of extension. E.g com_advportfoliopro
    • Type: Type of your extension. It can be component, module, plugin or template.
  4. After Enable Update, the update server url should be:
    • is your website domain.
    • PRODUCTID is ID of product.
  5. Add this server url to your extension install xml file. Visit for more information.

    Update XML

  6. For free extensions, your users can update without error but they have to have Download ID to update. To do that, create a plugin that allows users input their Download ID and add dlid request on updating. Visit to create plugin for your domain.
  7. You need combine your extension and this plugin into one package. Visit for more information.
  8. Everytime you update your extension, upload the combined file at first of product files and update right version number, your users will see update notification.

    Update Files

    Update Version

  9. Instruct your users to get their Download ID from your website. It's in Downloadable page:


If you have questions regarding specific details or need any help with the product, feel free to contact us and join Extstore forum.


Function of Media Store plugin

  • Media Store - 2Checkout: Add 2checkout payment option on checkout page.
  • Media Store - ExtStore Add This: Add code of social buttons to each product.
  • Media Store - Buy X Get Y: When a customer buys product X, he/she can get product Y for free or with a certain discount amount.
  • Media Store - Disqus: Add Disqus comments tab in each product.
  • Media Store - Joomla Extension: If your site sells Joomla product (extensions, templates, websites), this plugin will allow you to add Joomla Compatibility label to each product.
  • Media Store - Like to Download: This plugin forces users to like Facebook Fanpage if they want to download free products.
  • Media Store - Paypal: Add Paypal payment option on checkout page.
  • Media Store - Skrill (Money Bookers): Add Skrill payment option on checkout page.


How can I hide billing fields on checkout page?

You can hide billing fields by changing options in User Billing Fields Configuration.


How does the purchasing process in Media Store work?

After your order is completed, you will receive 2 emails. One email provide login information, another email provides download link. Customers can also download a product from each product page. Check our Media Store demo site for more details:


I can't upload images to Media Store gallery by Drag & Drop.

  • Check your htaccess file.
  • Check permission of cache image folder.
  • You didn't add allowed extensions, Eg: jpg, jpeg, png, gif.
Don't have an account yet? Register Now!

Sign in to your account