How To Build A Full E-Commerce Store From Scratch (100% FREE!)


November 28  

Want to sell your product, service, or information online - but on a budget?

In this complete tutorial, we are going to walk step-by-step through the process of creating a powerful online store that you have complete control over.

This will include all the bells and whistles that you'll need to have a professional looking store up and running in no time, ready to accept orders.

And the best part about this tutorial is that every tool used is 100% free. In fact, the only think you'll have to pay for is your web hosting!

Ready to go? Thought so!


What do you need for a fully functioning E-commerce site?

If you're new to running an online business you're probably thinking, "That sounds great... but what exactly is it that we will be building, and what tools do I need?"

Throughout this tutorial, we will be working with the following components:

  1. a web host running WordPress
  2. a WordPress theme
  3. page builder to create beautiful designs
  4. a payment processor
  5. a checkout cart system
  6. an analytics platform
  7. an email marketing platform
  8. a powerful integration tool to connect everything together

You might be starting to feel a bit anxious with the number of tools that we will be hooking together to make everything work, but have no fear 🙂

Not all of these tools are 100% required, but I want to set you up with a stack that will grow with you. In the next section we'll talk about each tool we'll be using, and whether or not it's required for things to work.

But as we go through the actual build, you'll see how simple it all is and will be so proud of the result!

What tools are we using, and why?

Let's touch briefly on each tool we selected for this build out and why it made the short list:

Web host - Bluehost

Bluehost is a great host for starting out. They have a very slick and user-friendly interface that will make sense to even the newest to the online business world:

Bluehost Interface Bluehost gives you a refreshingly clean interface to manage your sites

Most of the web hosts I have used in the past look like they came straight out of the early 90's, and I always breathe a nice sigh of relief when I log in to my Bluehost dashboard.

I also love that Bluehost gives you a free domain when you sign up, and only costs about the price of a coffee per month...

[thrive_text_block color="orange" headline="Don't have hosting yet?"]Give Bluehost a try for your next project:

[thrive_link color='orange' link='' target='_blank' size='medium' align='aligncenter']Sign up for Bluehost[/thrive_link][/thrive_text_block]

Yes, I am an affiliate and would get a small commission, but I have tried several hosts in the past and I can honestly recommend Bluehost (especially when you implement some of my speed hacks I cover in Income Mesh University). Thanks in advance!

Best free theme for building an online store: Astra

When you're looking for a free theme to build a business online, there are a few things to keep in mind:

  1. The theme is well supported and isn't going anywhere
  2. The theme has a premium upgrade path for when you are ready
  3. Has great integration with WooCommerce
  4. Lightweight and fast

Astra checks each of these boxes beautifully, and is a very easy theme to work with. This makes it a no-brainer for our project.

Great free page builder to create beautiful modern designs: Brizy

Brizy Lifetime deal page builder

This decision is very subjective, because the page builder really isn't the most critical piece of the whole puzzle. Page builders essentially just make the process of building a beautiful site easier and more enjoyable. But at the end of the day, they aren't technically necessary for the job.

There are quite a few builders on the market, but the 3 that have high-quality free options are:

  1. Elementor
  2. Beaver Builder
  3. Brizy

Brizy is the newest kid on the block, which has its share of pros and cons.

The technology that it is built on is the most advanced - that makes it quick and buttery smooth to work with.

But on the other hand, its infancy means that it doesn't have the same level of developer support and functionality of some of the more seasoned builders.


For this article, we will use Brizy because I have a feeling it will quickly become an incredibly powerful player in the market, and they are currently running a great lifetime deal.

Give the free version of Brizy a try from the WordPress repository, but if you have the funds - you might be able to save a ton of money over the years by getting in on this lifetime deal:

Save Money and time with Brizy

Buy Brizy Pro for Life at an amazing price

Free payment processor to accept credit cards online: Stripe

The whole point of making an online store is so that people can give you money - so you're going to want a payment processor. Stripe and Paypal are the two most popular, and in this tutorial we will walk through the process of integrating Stripe into your website.

Both of these processors are great because there is no monthly fee to use them. You simply get charged a transaction fee for each sale, so there is zero risk to you to use it when you are just getting started.

Free checkout system to sell online: WooCommerce

While Stripe will actually handle the money, you need to create the entire shopping experience on your website. That involves:

  • Creating accounts for your users
  • Giving your users the ability to manage their passwords, order history, billing information, etc.
  • Creating a "shop here" page for them to browse your offers
  • Allow users to add products to their shopping carts until they are ready to check out
  • Ability to create and offer coupons, payment plans, and the like
  • Reporting to understand which products are performing well and what changes you might need to make

WooCommerce is the platform I recommend in this tutorial because it is free, tightly integrated with WordPress, and gives you unlimited flexibility to add features to it over time.

While it can seem intimidating at first, WooCommerce is really the place to be to create a great, customizable user experience for your customers.

Best free analytics platform for ecommerce sites: Google Analytics

While WooCommerce will give you basic information about which products are selling most, it will leave out some details that you definitely want to know as a business owner.

How many views did each of your products get, and how well are they converting?

That is only one of the thousands of questions that Google Analytics can help you answer.

Google Analytics is not the easiest tool for beginners to understand (I still stare at it blankly from time to time), which is why I recommend beginners start with Analytify.

It's a free plugin that simplifies your Google Analytics dashboard into easy to comprehend and actionable information. It's not required to sell things online, but it becomes more valuable the more your site grows. So I'd recommend going ahead and installing it early. Even if you don't look it for months, it's collecting valuable data for you in the background (and takes a minute or two to install).

And it's super easy to set up! Win win!

Great free email marketing platform for selling online: Mailerlite

Mailerlite for Online Courses

There are a ton of great email service providers out there, but Mailchimp and Mailerlite lead the pack when it comes to a generous free trial offer.

With Mailchimp you get access to 2,000 free contacts, but you have a few limitations around what you can do with the platform (limited number of email sends, limited automations, no chat support).

With Mailerlite, you only get 1,000 free contacts, but you have full access to their entire platform - including 24h live chat support. I also think Mailerlite's visual automations are more powerful and easier to understand than Mailchimps - which is why we are using that tool for this build out.

Again, having an email marketing platform isn't required to sell online, but you are leaving a ton of opportunity on the table if you don't hook into this.

With this integration you will be able add your customers to your email list and continue to build the relationship (and future sales) over time through marketing automation.

Powerful free integration tool to connect everything together: WP Fusion

Normally the information about your users in WordPress is kept pretty separate from your email marketing platform, but WP Fusion completely solves this problem (very elegantly!)

With WP Fusion, you can do a ton of amazing things between Mailerlite, WordPress, and WooCommerce to make sure you have a simple, accurate, seamless understanding of your leads, customers, and loyal fans and can customize their experience throughout the entire journey.

WP Fusion has a limited free version which gives us most of what we need, but you can always grow into their premium plans. This tool is not 100% required for selling things online, but I predict it will be one of those tools that grows in popularity until a year from now we won't know how we lived without it.

Step by step tutorial to build a powerful and free online store

It's time to get into the step by step tutorial. Because I show the steps in the video above, I'll be referencing some of the time markers in the video for easier navigation if you want to skip around to your specific spots.

Installing WordPress (0:00 in the video)

When you first sign up for hosting with Bluehost, you'll be presented with your dashboard where you will be able to go to My Sites -> Create Site. Just give it a name, click Next a few times, and before you know it, you'll have your first home on the internet!

Bluehost ecommerce site


Installing your theme (1:10)

Welcome to WordPress Dashboard

Welcome to WordPress! The dashboard may look intimidating when you first look at it, but in a couple of weeks it will feel like a second home. Or a first home if you spend too much time on your blog like I do...

Now that we are in the dashboard, let's install our theme by going to Appearance -> Themes, and clicking the "Add New" button.

Search for "astra" in the search box, and Install & Activate that theme:

Install Astra Theme for Ecommerce WordPress Site Free

The Astra theme is great because it has strong integration with WooCommerce, it is well supported by its company, and it is a very speedy and lightweight theme. And because it has a very popular Pro version, its free theme will likely be supported for a long time.

We will get around to customizing the theme in time, but for now let's continue putting all the building blocks in place. Next up is installing plugins!

Installing your page builder plugin Brizy (1:41)

Plugins are like little super powers for your website. Pretty much anything you want your site to do, there's a plugin for it, or a developer hungry to create it.

Probably the most fun plugin you will play with in WordPress is a good page builder.

These little suckers can completely change the way you create content - and Brizy is one of the most enjoyable page builder that I have used. It's very new, but it is showing incredible promise.

Building a conversion-focused home page (2:08)

Brizy Home Page for Ecommerce Site

While I won't be winning any awards for this home page design, its purpose is clear.

Building pages with Brizy is fun and quick, and using clear call to action buttons like "Shop Now" will help get visitors into our store.

Now that we have a (super) basic foundation for the site, let's go ahead and install & configure WooCommerce.

Setting up WooCommerce (6:00)

Installing WooCommerce for Ecom Store

Installing Woocommerce is no different than any other plugin. In fact, WooCommerce is easier than many plugins because it has an extremely helpful wizard to make sure you are off to a great start with your new business.

WooCommerce set up

Creating your first product to sell in WooCommerce (9:56)

Once you walk through the set up process, you are ready to create your first product ready to sell:

WooCommerce Product set up

In the product setup screen, you can add descriptions, pricing, product restrictions, images, and plenty of other details to enhance your product description.

Once you are happy with how your product listing is looking, it's time to set up your website menu to look a bit more professional.

Updating your site menu and theme customization (18:00)

By default your website will put every new page you build up in the main menu. This is an easy thing to customize using the Astra theme:

In this example we are only going to put the "My Account" page and the "Shop" page into our main menu, but you would also probably want to put your "Blog" page, "About us" page, and any other relevant main content up here.

Making small navigation tweaks to your home page (19:15)

Because we built our home page before adding WooCommerce, we need to come back around and make sure our call to action button links properly to our new shop page.

Simply head back to your home page, click "Edit with Brizy," and make the small tweak to your button. Now you have a functional button that is ready to send traffic to your budding shop!

Connecting your Stripe Account to accept payment (19:58)

Stripe is an amazing payment processor. Costs zero to set up, and has zero ongoing fees. Whenever you receive a payment, they take a small commission, and everyone is happy!

You can sign up for a free account at, and once you are in you will be able to access your API keys to bring into your WooCommerce settings.

Stripe Setup process

The toggle in the top right is important. You want to take the publishable and secret keys for the Test data side and put it in to the WooCommerce settings under "Test Data." It can be confusing because on Stripe it is a toggle, but on the WooCommerce settings, it's just a check box.

Once you have set up your Stripe account, be sure to click save, and now you are are ready to start sending test transactions through your site!

[thrive_text_block color="note" headline="Be Careful"]Whatever setting you leave the "Test Mode" check box on is going to stay that way. While setting up your shop, make sure to leave it on Test mode so that we can run several test transactions before actually spending any money 🙂 [/thrive_text_block]

Testing your shop's functionality (21:50)

You now have the full foundation of an E-commerce store set up, and it's ready to start testing. Yes, the website isn't quite beautiful enough yet to go live, but what we really care about at this point is if it's ready to start collecting money!

E-Commerce purchase product

In this section of the video I am able to complete the purchase successfully, but because of the default WooCommerce settings, I did not create my own account throughout the checkout process.

So while I would have received an email with my download, I didn't have the ability to log back into the site and access my download. Not good!

[thrive_text_block color="note" headline="Key Takeaway"] This is why it's always important to fully test your process before you go live. Run through every scenario that you can think of using test data. And even once you get everything to work using Test data, I also want you to run through a full test using real payment just to confirm everything.

The last thing you want to do is launch a shop and get a huge rush of traffic, and have some bug preventing you from making money! You'll only be out the Stripe transaction fee, which is completely worth the peace of mind.[/thrive_text_block]

Tweaking WooCommerce functionality to build your list (23:20)

Most people think of building your list in order to make the sale. So once the sale is made, why would you care to keep that person on your email marketing lists?

Well your previous customers are almost always your best next customers. So building the list from your past purchasers is an excellent way to set up your store.

There are two steps to making this work great with WooCommerce.

The first step is to adjust our WooCommerce settings to force users to create an account when they attempt to check out:

Now that all your customers are creating accounts on your website, you open up 2 different ways to build your list.

Integrating your email marketing service into WooCommerce

There are two main ways of connecting your email marketing service into WooCommerce to build your list during the checkout process.

The first way is through native integrations.

For example, if you are using Mailerlite as your platform, you can install the Mailerlite-WooCommerce plugin and easily connect your Mailerlite account with it (simply copy the API key from your profile).

Once set up, you will have a new option under your "Integrations" tab of the WooCommerce settings, and will be able to assign a specific group to any customer. This will allow you to launch specific automations for any new customers to help build them up for the next sale. It will also create some great custom segments in your Mailerlite autoresponder to help you identify your best/worst customers:

The big downside I have with the native integration between Woo and Mailerlite is that you can't set specific tags based on the product purchased.

This is a huge downside, because you won't have an easy way to track the actual purchases made by each customer. This forces you to create a very middle-of-the-road marketing message to all customers.

That's why we have the second option: WP Fusion.

Super-charging WooCommerce with WP Fusion

WP Fusion is a neat little plugin. It is the bridge between tons of other plugins, keeping your entire WordPress ecosystem in sync. With the premium version of WP Fusion you can create segmentation depending on which product was purchased, and can even add/change tags on users when they view the product.

But even with the free version, you have the ability to send anyone who creates an account on your website over to your marketing platform very easily:

WP Fusion WooCommerce

We won't go too deep into setting up WP Fusion in this tutorial, but be sure to check out their own blog as they have some really interesting use cases for their special plugin. 

Where do you go next?

If you've followed through this tutorial, congratulations! You should now have a website up and running with the ability to accept payments for selling virtual products, and the ability to capture all your new users and customers into your marketing platform to enable you to continue the relationship.

The next steps are the fun ones - start building out the site! I'd recommend you start with the following:

  • About me page
  • Contact us page
  • Start here page
  • Blog page
  • Privacy Policy and Terms & Conditions

Once you have the important pages filled in, it's time to start marketing your products! Write some incredible blog content - and have fun with it!

About the Author

John Whitford is an entrepreneur who has built over 12 profitable online blogs and businesses. He's also the founder of Unbeatable Tech, a data-driven digital marketing company that specializes in sales funnel implementation for both his own businesses and clients alike. John loves to be a beach bum while brainstorming new ideas for marketing strategies, but he's always excited to take on another project!