Selling online with WordPress?

Of course, it's possible!

And here, I'm not talking about inserting Paypal purchase buttons.

It is also possible to build quality eshops thanks to WooCommerce.

In this tutorial, I will teach you how to install and launch the world's most popular ecommerce solution.

I will also give you tips and advice to choose the right theme, the right plugins, and how to optimize your online store.

Note 1: This tutorial was updated in August 2019. It applies to WooCommerce version 3.7.0.

Note 2: This post contains affiliate links. This means that WPMarmite will receive a commission if you buy the products or services presented through them. No change on the price for you though, but that's just a way for us to be able to reward our blog's writers.

Your best WordPress projects need the best host!

WPMarmite recommends Bluehost: great performance, great support. All you need for a great start.

CTA Bluehost WPMarmite

What is WooCommerce?

WooCommerce plugin homepage

WooCommerce is a plugin that enables you to transform your WordPress website into an online store.

As its prefix “Woo” suggests, it was developed and launched by the WooThemes store in 2011, before being acquired by Automattic, the parent company of WordPress, in 2015.

With more than 5 million active installations and more than 70 million downloads, WooCommerce is the most popular ecommerce plugin on WordPress (*).

It is also the most widely used ecommerce solution on the one million sites that receive the most traffic in the world: it powers 29% of them.

Overall, this flexible plugin has many advantages:

  • It will allow you to sell any type of product, whether physical, digital, with subscriptions etc. And this, in the US and abroad.
  • WooCommerce is free and you can customize it by adding Premium plugins – I will come back to this later – in a whole bunch of domains (delivery, payment, invoice, marketing, social networks, etc.).
  • WooCommerce is accessible to beginners, even if you start from scratch. You don't need to know how to code to make it work. But getting started will require a minimum time investment.
  • Almost all themes are compatible with it, so you don't necessarily have to change your design if you enable it. In addition, it offers 11 Gutenberg blocks so that you can easily integrate certain data into your content (e. g. best-selling products, on-sale products, top rated products etc.).
WooCommerce blocks on Gutenberg
  • It natively integrates certain payment options (PayPal, checks, bank transfers) and delivery options.
  • You have full control over all your site parameters, which is not always the case with paid online ecommerce platforms such as Wix.

Before we dive right in, I just want to talk about a popular misconception regarding WooCommerce. Here you go.

This post is dedicated to WooCommerce, but be aware that it is not the only plugin to do ecommerce on WordPress. For example, I could mention WP eCommerceBigCommerce, or Easy Digital Downloads (to sell digital products).

The 3 issues of ecommerce

To give you an idea, ecommerce represented a growing share of the retail market in 2018, taking a 14.3% share of total retail sales last year, up from 12.9% in 2017 and 11.6% in 2016 (source).

Today, buying online is no longer scary. When you order, you know that delivery will work.

And not to mention physical products, more and more people are willing to subscribe to video on-demand services, book stays, and participate in fundraising campaigns.

Even though starting an ecommerce project is a little more complicated than setting up a blog.

Here we do not only publish content, we offer products and services for sale. This involves a lot of things and therefore, new problems can arise.

For an ecommerce site to be effective, i.e. to generate sales, you'll have to pay attention to the 3 elements below:

Ease of use

Indeed, if it is complicated to browse a website, do you think that visitors will be able to make purchases?

Of course not. They'll even run away quickly to find what they're looking for elsewhere.

Homer Simpson running

It is important to provide clear and purposeful pages so that visitors can become buyers.

For example, it is important to ensure that account creation is as simple as possible. Everyone hates extra-long forms.

Focus on the strict minimum:

  • Surname and first name
  • Email
  • Billing/invoice address

Date of birth and telephone number are not required. You can put them on but chances are it will lower your conversion rate.

Do you know the medium online shopping cart abandonment rate?


Yes, you read it right. And sometimes it is much more depending on your industry.

So if you want your website to convert, simplify it.

To keep increasing your chances, you must capitalize on….

Appearance and trust

We have already talked about it, buying on the Internet is an act of trust. And to instill trust, a website with a neat design is essential.

It's a bit like going to a hotel. If you see cobwebs, flaking paint and a sloppy receptionist, you don't really want to see the rooms, right?

And even less spend the night there!

It is therefore imperative to build a cool website.

Beyond the appearance, to strengthen trust on an ecommerce website, it is essential, if not mandatory, to apply the following good practices:

  • Switch to HTTPS to encrypt exchanges (especially for payment). Not to mention that the Google Chrome browser sanctions HTTP sites by indicating to the Internet user that he or she is surfing on an unsecured page.
  • Make your website responsive, i.e. one that can be adapted to any type of media (computer, tablet and smartphone). 79% of US smartphone users have made a purchase online using their mobile device in the last 6 months, according to this resource.
  • Insert customer testimonials to show that other people have already been there.
  • Display a phone number to call in case of a problem.
  • The team's emphasis on showing that there is someone behind it.
  • Take over the risk via a guarantee (money-back guarantee, free shipping etc.).
  • The costs and delivery times (e.g. free shipping costs from $100 of purchases / delivery in 48 hours etc.).

The last points to take into account when creating an ecommerce site are….

Security and payment

We have seen that the perceived security of a store has an impact on Internet users' trust and, a fortiori, on conversions.

According to this Statista survey carried out in June 2018, 83 percent of Americans between 30 and 49 years owned a credit card.

It is therefore imperative to accept this type of payment and to ensure that it is risk-free.

If a customer has their card number stolen because of your site, you can be sure that they will make you a great advertisement!

No need for that

Be sure to set up an SSL certificate to activate the HTTPS on the payment page at least.

The procedure is different according to the web hosting service you're using, but on WPMarmite, I've been able to set it up quite easily with Bluehost (affiliate link).

Beyond payment, you will not make a good reputation if your site is hacked and your customer file is stolen.

Cover your back well! This is very important!

Is everything okay for you? Then let's go straight to the technical part: the creation of your online store with WooCommerce.

Join the WPMarmite subscribers

Get the last WPMarmite posts (and also exclusive resources).

WPMarmite English newsletter

How to create an online shop with WooCommerce ?

If you have been focused since the beginning of this post (I hope so ^^), you should remember that WooCommerce is a plugin that is added to WordPress.

To activate it, you must therefore have a functional WP site. Don't know how to install WP? Follow the guide right here in this post.

After this break, back to WooCommerce.

I don't know if you've already tried to install it, but you should know that there are a lot of options available.

It will therefore not be possible to make a step-by-step tutorial to explain the role of each setting as for the Yoast SEO plugin. This would require full training, as there is so much to say.

However, I suggest we take a look around to help you understand:

  • How it works
  • Where to find answers to your questions (you will see that the help section integrated into the plugin is very useful).

Setup wizard

Once you have installed and activated the plugin, you can run a wizard to help you implement the first settings:

WooCommerce setup wizard

Few plugins do that but it is really a great idea to help users.

Once you have completed it, your site will have the necessary pages for the shop (cart, checkout, etc.). You will have set up the basic shipping and payment options.

Finally, WooCommerce will also recommend that you install Storefront, its flagship theme. I recommend that you do so (you can change later, if that doesn't suit you).

Be patient, you will soon be able to start selling.

But first, let's look at what the WooCommerce menus are made of.

The WooCommerce menu

WooCommerce menu on wordpress admin

The first menu added by WooCommerce is called… WooCommerce. As you can see, there are 6 sub-elements:

  • 1 – Orders: Here you can find all the orders completed on the shop. You can also add an order manually (for example in the case of an offline purchase).
  • 2 – Coupons: Find here all the discounts and rewards published on your website. It is possible to create other coupons by clicking on the “Add coupon” button, on top of the page.
  • 3 – Reports: With this sub-menu, you will be able to track the movements on your shop. Whether it is sales, orders, refunds, or coupons, see instead:
WooCommerce reports

Let's go back to the general menu. Then we find the fourth WooCommerce submenu called Settings. Welcome to the heart of WooCommerce. Thanks to 9 tabs, you will be able to set up it as required. Let's see what they contain:

  • General: You will be able to set up everything related to your store address and currency options.
  • Products: This tab will allow you to define the measurements of your products (weight and dimensions), activate certain features such as reviews, or product ratings.
  • Tax: You will be able to manage everything related to tax options (shipping tax class, rounding, standard or reduced rates etc.).
  • Shipping: To satisfy your customers, you have to set up your shipping zones (otherwise I don't give very much of your reputation). A shipping zone is a geographic region where a certain set of shipping methods and rates apply. You can also apply shipping options (e.g. enable the shipping calculator on the cart page).
  • Payments: Here you will set up installed payment methods (e.g. Stripe, PayPal, Direct bank transfer, Check payments etc.). They can be sorted to control their display order on the frontend.
WooCommerce payment methods
  • Accounts & Privacy: Usually, a customer account is created following an order. Various options can be set up regarding this option. This tab also controls the display of your website privacy policy and personal data retention of your customers.
  • Emails: Following an order, you and your customer will receive emails. It is possible to disable some of them and customize them. However, this is limited to the “From” name, header image, footer text and colors. It will be necessary to code to modify their content.
woocommerce email sender options
  • Integration: Helps you to install the Facebook pixel, or to create Facebook ads with your store's products, for example.
  • Advanced: This last tab enables you to define the pages so that WooCommerce knows where to send users to order (e.g. Cart page, Checkout page, My account page etc.). You will also be able to activate some features that are useful for developers.

Next, we have the fifth submenu called Status. If you need WooCommerce support, you should give as much information as possible to the person who will take care of you.

To help them, simply click on Get system report and then on Copy for support to send them all the information about your shop:

  • System status: This tab gives access to information about your WordPress environment, server, database, plugins, theme, or whether you are using HTTPS or not.
  • Tools: This tab will provide you with some tools to clear or reset some data. Be careful with what you do! 😉
  • Logs: They are used to list everything that happens on your shop (orders, downloads, use of a coupon, etc.). If a problem occurs, studying the logs can help you discover its cause(s).
  • Scheduled actions: This last tab will be mainly dedicated to developers.

And finally the last WoCommerce submenu is called Extensions. These add-ons enrich the functionalities of WooCommerce and “take your store beyond the typical – sell anything”. You can find them in this menu, and filter them by domain (Marketing, Payments, Shipping, etc.). Depending on the project you are leading, some add-ons will be of great help. You will find a selection later in this post.

We are now finished with this first menu.

Let's move on to the second menu added by WooCommerce.

The Products menu

WooCommerce products menu in the wordpress admin

So far, we covered a lot of things but there are no products in the shop yet.

Well, let's dive right in now with this second menu:

  • All products: You will find on this page the list of all the created products.
  • Add new: Clicking on this submenu will open the product creation page. We will detail this in a few moments.
  • Categories: It is possible to classify products into various categories (e. g. male, female, kids for clothing).
  • Tags: As with posts, it is possible to assign tags.
  • Attributes: Attributes are product-related characteristics. For example, you can have a Size attribute if you sell clothes.
WooCommerce example of size attribute

Once the attribute has been created, click on the Configure terms link to enter all possible values (S, M, L, XL, XXL, etc.).

Let's now focus on adding products.

How to add products?

Add a new product on WooCommerce on WordPress

When you get to the add new product page (Products > Add New), you'll realize that it is quite similar to the one used to create a post.

It is possible to add:

  • A product name
  • A description
  • A short description
  • A category
  • Tags
  • A featured image
  • A product gallery

But above all, a Product Data meta box is available under the visual editor to set up its features.

7 tabs are available. The first one enables us to define the kind of product to be created:

WooCommerce product data settings

By default, there are 4 types:

  1. Simple product: The default product, the one you will use in most cases. Two options can be assigned depending on their nature:
    1. Simple Virtual Product: Ideal if you sell a service (delivery becomes unnecessary).
    2. Simple Downloadable Product: One or more files will be sent to the customer following the purchase.
  2. Grouped product: A group of products that can be purchased separately (for example, a computer could be grouped with a basic configuration, a more advanced one and another with the best configuration).
  3. External/affiliate product: It is possible to promote products from other shops (and possibly earn a commission on them).
  4. Variable product: A product that has certain characteristics (color, size etc.). For example, a t-shirt can be available in 3 colours, 5 sizes for men, women and kids.

For each product, it is necessary to define a SKU (Stock Keeping Unit, a unique identifier to each product), a price, its weight and dimensions, its tax class, etc.

In the following tabs, we will be able to specify:

  • The stock status (in stock, out of stock or on backorder);
  • Weight, dimensions and shipping class;
  • Linked products (upsells, cross-sells);
  • Attributes (you can already find them in Products > Attributes);
  • A purchase note to be sent to the buyer and if customer reviews are enabled.

Depending on the kind of product you choose, fields will appear and disappear. Indeed, delivery options are useless for a downloadable product.

That's it, we're done reviewing the WooCommerce options.

Next step: make your shop functional. Let's look at this in the next part.

Setting up your store

white racing car ready for the race

You have seen it so far, creating an ecommerce website (whether with WordPress or not) requires a lot of work.

For a website to qualify as a shop, it must have a certain number of pages.

Let's study them in detail.

The pages created by WooCommerce

Yes, WooCommerce gives you a boost by automatically adding pages when it is activated. We can name:

  • The Shop page where visitors will browse your products.
  • The Cart page where customers will see the products they want to buy.
  • The Checkout page where they will pay for their purchases.
  • The My account page where they will see their orders and manage the shipping and billing addresses.

If you are curious, you will find that these pages each contain a shortcode (E.g.: [woocommerce_cart] for the Cart page).

These shortcodes will be interpreted and transformed by WooCommerce to display the content of the page.

However, there is a page that is not automatically created, yet it is very important.

The Terms & Conditions page

The Terms & Conditions are used to define the relationship between you (the seller) and the buyers. In particular, they contain a description of the products sold, the accepted means of payment, the conditions of reimbursement etc.

In short, everything you need to ensure so that nothing is left in the dark. We might as well tell you that it's better to get in touch with professionals to have them written.

Indeed, they must correspond to your activity (and copying and pasting from another site exposes you to lawsuits if you get caught).

You need to make sure that your online store is GDPR compliant! Find out more about the General Data Protection Regulation (GDPR) on the website.

The Privacy Policy page

With the implementation of the GDPR in May 2018, it is now mandatory to explain what you are doing with your user data.

And that's where the Privacy Policy page comes in.

These elements should appear in a page embedded in your footer.

Since WordPress version 4.9.6, you can create your Privacy Policy page directly from the Settings tab of your administration interface.

Pre-written paragraphs will be suggested, optimized for the GDPR: it's up to you to select the ones that apply to your site.

The Thank you page

By default, WooCommerce does not allow you to modify this page. A default message will be displayed for all orders.

Will Smith says oh damn

I think this is a shame because there is no better place to start building a relationship with your customers than on the thank you page.

Once the order is done, you can:

  • Suggest they follow you on social networks ;
  • Ask them to subscribe to your newsletter ;
  • Put complementary products in front of them to promote additional sales, etc.

To achieve this, you can use one of the following two free plugins:

If you're looking for a premium plugin, you can turn to an official WooCommerce plugin: Custom Thank You Pages ($49, single site use).

In particular, it will enable you to set up one thank you page per product.

Let's now turn to one key point, being…

Payment methods

If you do not install a payment method on your shop, you may wait a long time before making your first sale!

By default, several payment methods are available:

  • PayPal
  • Direct bank transfer
  • Check payments
  • Cash on delivery

I would also like to draw your attention to Stripe, which you can activate on your WP website thanks to this plugin: WooCommerce Stripe Payment Gateway.

This payment platform will allow your visitors to pay by credit card within your shop.

Much more convenient than cheque payments or on cash on delivery, isn't it?

We saw earlier on this post that 83 percent of Americans between 30 and 49 years old owned a credit card… You must therefore accept this payment method.

Technically speaking, Stripe will add a form on your payment page, then it will check the details. You will just need to create an account to activate this solution on WooCommerce.

Then, Stripe will charge you 2.9% + 30 cents per transaction.

Among other competitors, you also have PayPal Pro extension ($79, single site use). PayPal’s current fee is 2.9% + $0.30 per transaction, which is the same one as Stripe.

Once you have all the necessary payment methods, you can organize, activate and deactivate them in WooCommerceSettingsPayments. 

Shipping process

In ecommerce, selling is not enough. You have to ship what was ordered.

When you order from huge sites like Amazon, you know that your items will be delivered. On the other hand, with a young shop, you will have to be convincing and keep your promises.

In WooCommerce, you have the possibility to define several options through the Shipping tab (you can find it by following this path WooCommerceSettingsShipping).

You will first need to add a shipping zone (e.g. US domestic zone). Then, by default, WooCommerce will offer you several shipping methods depending on the zone name (e.g. flat rate, free shipping, local pickup).

WooCommerce add shipping method

Well, I think with all this you have some good leads to start your shop, don't you?

However, WooCommerce would not be WooCommerce without its complementary extensions. We will have what it is about in the next part.

Note: In addition, do not hesitate to check the official documentation of the plugin, which is very well crafted.

Which WooCommerce plugins to install to go further?

Like WordPress, WooCommerce has an ecosystem.

It is possible to create plugins and themes especially for it.

You can therefore enrich your shop functionalities with add-ons to go beyond what is offered by default.

Indeed, the WooCommerce plugin does not allow you to do everything. Whether you are looking to increase your store traffic, increase sales, reduce your cart abandonment, or diversify your payment methods, you will surely have to turn to an add-on.

To find the right one, there are first of all the official WooCommerce extensions. There are nearly 300, ranging from $0 to $250.

They are classified into different categories such as payments, marketing, shipping, or subscriptions.

We have already discussed some of them in this post, but I would like to introduce you to some of the most popular ones, to show you that it is possible to create very different ecommerce websites!

Let's start with…

1. WooCommerce Subscriptions

WooCommerce Subscriptions plugin for Woo

In some cases, we can offer products by monthly subscription. This is particularly the case with the famous “boxes” that are flourishing everywhere.

The principle is simple, you pay every month and we send you products that match your tastes.

If you want to set up this kind of website, WooCommerce Subscription is an essential extension.

Pricing: from $199 for single site use.

2. WooCommerce Bookings

WooCommerce Bookings plugin for Woo

If you are a consultant or coach and you sell your time, WooCommerce Bookings will allow your customers to “book” you easily.

All they have to do is choose a free date and pay to make an appointment.

This should also work for a craftsman.

This plugin can also be used for seasonal rentals. However, install WooCommerce Accommodation(it's free) to allow your customers to set a date of arrival and departure.

Pricing: from $249 for single site use.

3. WooCommerce Membership

WooCommerce Membership plugin for Woo

WooCommerce Membership will be very useful to set up an online course platform (*).

Your customers will choose one of your training courses and will only have access to the content intended for them.

Note that you can combine it with WooCommerce Subscriptions to set up subscriptions.

Pricing: from $199 for single site use.

Note: In general, you can also create an e-learning site on WordPress with dedicated tools. Among them, I could mention premium solutions like LearnDash (from $159) or LifterLMS (from $99/year).

4. WooCommerce PDF Invoices & Packing Slips

WooCommerce PDF Invoices & Packing Slips plugin for Woo

By default, WooCommerce does not offer PDF invoices (we just have email receipts). In order to have something ok, you will need to install this plugin.

As its description states, it “automatically adds a PDF invoice to the order confirmation emails sent out to your customers. Includes a basic template (additional templates are available from WP Overnight) as well as the possibility to modify/create your own templates.”

Pricing: free. From €59 (around $70) for single site use with the premium version.

5. Product Add-Ons

Product Add-Ons plugin for Woo

If you sell customizable products, this plugin will interest you.

Thanks to it, your customers will be able to specify particular wishes. For example, which logo to place on a T-shirt or what to engrave on a bracelet.

In other words, it goes much further than the default options.

Pricing: from $49 for single site use.

6. Bonus

You can also find plugins on CodeCanyon and other independent sites. Just look for them! 🙂

It is true that many of them are not free but you will earn money with your shop, right? Some investment is therefore necessary.

Speed up your website with WP Rocket

Turn your site into a rocket with the most powerful caching plugin recognized by WordPress experts.
Logo WP Rocket

Which theme to choose for your WooCommerce website?

By default, WooCommerce is compatible with almost any WordPress theme.

Only disadvantage? The appearance may not always be optimized. By this I mean that visitors may have difficulty browsing your site.

To overcome this, the solution is to use a theme optimized for WooCommerce.

The first one I think about is Storefront, the flagship theme of WooCommerce. During the installation process, the plugin offers an activation option, remember?

Storefront is a WooCommerce theme on WordPress

Storefront is free of charge. WooCommerce also offers about fifteen child themes for Storefront, in different fields (Fashion, Sport, Beauty etc.).

However, you may find these themes quite basic. To benefit from more sophistication and choice, I advise you to take a look at this selection of ecommerce themes.

When choosing your theme, also consider giving particular importance to its loading speed.

Indeed, 47% of consumers expect a page to load in less than 2 seconds.

In this case, the freemium themes OceanWP, Astra or GeneratePress could work.

We compared their WooCommerce integration in this post.

All three fit very well with a page builder like Elementor or Beaver Builder, which will enable you to have a tailor-made design for your shop.

Build your website with Elementor

Design easily the look and feel of your WordPress website with the famous page builder. Try Elementor
Elementor icon CTA

Finally, it is also possible to find themes optimized for WooCommerce on specialized platforms such as Themeforest, which has nearly 1,300 themes.

Not to mention specialized theme shops such as OboxThemes or CSSIgniter.

Conclusion: Ready to get started?

You have reached the end of this post dedicated to WooCommerce.

Throughout these lines, we have reviewed the following elements:

  • Presentation of WooCommerce
  • The issues of ecommerce
  • How to create and start a WooCommerce shop
  • WooCommerce extensions and themes

Now it's your turn. You have the information, it's time to roll up your sleeves and take action.

What type of store do you plan to launch? What do you think of WooCommerce?

Tell me everything in the comments below.