Installation & Getting Started


  • ExpressionEngine 5+
  • PHP 7.1+
  • PHP extensions: ext-json


  1. Upload system/user/addons/store to the corresponding folder on your web server.
  2. Upload themes/user/store to the corresponding folder on your web server.
  3. In the ExpressionEngine control panel, head to Developer -> Add-on Manager, and click ‘Install’ next to the Store module.
  4. Configure an encryption key (see below).
  5. You can now proceed to Setting up your Products channel.

Configuring an Encryption Key

ExpressionEngine has a built in encryption library, which Store uses to securely store form parameters between page loads (such as required fields in the checkout).

Many ExpressionEngine add-ons use this library, so you may have already set an encryption key. If you have not, you will see the following EE error message when you try to use Store tags on your website:

In order to use the encryption class requires that you set an encryption key in your config file.

Creating an encryption key is easy. Simply follow these steps:

  1. Visit this page to generate a random key. The key you generate must be unique for each ExpressionEngine site. The 63 random alpha-numeric characters box will do nicely. You could also use 1Password or similar to generate a random string - just be sure it is at least 32 characters long.
  2. Open system/user/config/config.php. Scroll down to where you see $config['encryption_key'], and paste in your random string.

Your config file should then look like this:

$config['encryption_key'] = "yourrandomstringhere";

That’s it! Now your encryption key is set, and you will be able to use Store tags in your templates.

Getting Started

  1. Create a channel to store your products, you can call it anything you like
  2. As per normal, create a custom field group and assign it to your products channel
  3. Add a custom field to your custom field group, using the ‘Store product details’ fieldtype. You can call it anything you like, such as ‘product_details’.
  4. Customise sample templates or write your own
  5. Configure tax, shipping and payment, plus any other settings like order statuses and email templates, and you’re done!