One of the things about starting a new site with WooCommerce is that you have to watch your step.
To use an analogy, if you’ve had a site with WordPress.com for any length of time that you will know that there was once a time when it was very straightforward to start a site on a subdomain of wordpress.com.
The whole ethos was geared to being very helpful to you in creating a free site. Somewhere along the line that ethos changed and now if you’re new to WordPress.com it’s quite easy to think that you must buy a domain and you must upgrade and pay for your site.
Here’s what I mean: As you move all the process of setting up a WordPress site from scratch on WordPress.com, the small print of the free option is easy to miss above the plan options table.
I think WordPress.com is great. It has kept me interested in documenting things that would otherwise have disappeared in the mists of time. Ease of use and visually striking designs are part of the attraction. But you need to keep your attention on your goal and not be diverted.
Installing and setting up WooCommerce is a little bit the same. The setup wizard will ask you things that you can ignore, like when it asks you to choose a theme and it directs you to the WooCommerce theme store where most of the themes are paid-for themes. You can ignore that if you have a preferred theme, or you could start with the free Storefront theme that WooCommerce makes.
[As a quick aside, I think the latest themes that WooCommerce make have brought it back from the brink. What I mean by that is that some of the older themes were just plain boring. Not so with some of the newer themes. So, yes, do look at them. But if you are starting out – maybe don’t jump on a paid theme until you are a bit more savvy about what you want.]
So, the next thing you will see in the wizard after than screen is a list of things to do:
- Add store details
- Add products
- Set up payments
- Add tax rates
- Add shipping costs
- Get more sales
- Personalize your store
When you click into ‘Add store details’ you will see the screen that is the one you will use most with tabs for General, Products, Shipping, Payments, Accounts & Privacy, Emails, Integration, Advanced
General is where you put in your store address, which countries you will sell to, the default customer location, and taxes to be added – yes or no.
You will see little information buttons next to the options. The information button by default customer location says
This option determines : customers default location. The MaxMind GeoLite Database will be periodically downloaded to your wp- content directory if using geolocation.
This becomes relevant if you have customers in different locations liable for different tax rates that you need to charge.
Shipping is basically how much you are going to get products to your customers and how you are going to charge your customers for shipping.
So for example you might set up a shipping class for a product and have a shipping price for a customer who buys from one to three of that product, and then a cheaper shipping price or a free option for a customer who buys more that three in one order. And you can have it tiered, as in 1-3, 4-6, 7-99 or whatever you want.
You have to set up Shipping zones | Shipping options | Shipping classes in that order, though you may not have to set up Shipping classes at all.
Besides number bought, you can also make shipping cost break points by price or weight. Here is a tiered shipping costs example based on price for a class of product (Glue Sticks)
Say a glue stick sells for £4.50 and a person buys fewer than two of them, then the shipping cost is 65p. If they buy two then the cost is £9.00, and as you can see shipping is free from £9.00 and up.
Depending on how you set it up, your customers can mix and match the same class of product to make up the numbers, the price, or the weight to get a cheaper tier of shipping.
You may not need shipping classes but you do need to set up at least one shipping zone (which could the the UK) and then within that the shipping options, in that order.
Just a mention that sometimes with Woo setup, you can stare at it and not know what is being asked for. Hovering within fields often reveals the options, which then makes what to do obvious.
WooCommerce has videos that explain how to set up stuff.
Products in Different Classes With Different Shipping Costs
The tricky bit is where you have different shipping prices for different classes of products and a customer puts some of both types of products in the basket. Imagine one of the products is small with a small shipping cost (the shipping cost to you to actually ship the product) and another product is big with a large shipping cost.
Do a dry run and check whether the basket calculates the cost of shipping based on the rules for the cheaper shipping price. If it does that you could end up shipping a large product with a high shipping cost (the cost to you), for free or next to nothing.
There is a paid extension (Quantity Discounts & Pricing for WooCommerce) that takes care of that problem, and there is a paid extension (Table Rate Shipping) that gives you more flexibility in shipping generally.
Another example of Woo trying to guide you, is in the Payments tab. where it lists the payment options. Woo lists WooCommerce Payments, with a suggestion to install it, and below that it has options for you to accept Direct bank transfer, Check payments (otherwise known as Cheque payments), and Cash on delivery.
We don’t use WooCommerce Payments; we use Stripe. At that time, WooCommerce Payments didn’t exist, so we didn’t have to choose. I have never looked into why to choose one over the other beyond that I read that Stripe processing fees are less than WooCommerce Payments, but do check.
The Stripe plugin is made by WooCommerce.
At some point the Wizard it will ask you to connect to ‘Connect to WooCommerce.com. You can ignore it if all you want to do install Woo from the repository, but you have to have a WordPress.com account to manage purchases, tickets and subscriptions.
This is the 2017 article from Woo that explains the reason for the requirement to have a WordPress.com account.
If you don’t have a WordPress.com account, it’s easy to get one, and then you can get a free WP site and get to play around with Block themes without costing you a lot of heartache.
The system sends emails to customers. Some go automatically and some – such as when an order is ‘complete’, you have to trigger yourself.
‘Complete’ is a variable term. For us it means that the distribution centre has posted the product to the customer. For others it could mean that the courier has notified the seller that the item has been delivered. Whatever it means, up to that point the order is ‘processing’. You have to mark it complete.
Here is a screen shot with some information removed. You can see, though, that the order is processing. When you check the little tick mark on the right under ‘Actions’, the order will be shown as complete.
It’s easy to do this on a smartphone, by the way. There is an Woo Admin app, but I don’t use it.
Shortcodes and Blocks
There is a move towards block-based themes for WordPress generally. The idea behind it is to enable people to build sites where they will be able to change or design the header and footer of pages and posts as well as the layout of individual pages and posts.
This affects WooCommerce because WooCommerce was originally built to use shortcodes, and this is especially relevant for the cart and checkout pages.
When a shortcode is inserted in a page or post, it calls the php function. That is a technical way of saying that the shortcode is an abbreviation that carries an instruction to insert some dynamic information.
You don’t have to think about the shortcodes for the cart page and the checkout page because WooCommerce inserts those automatically.
Now the WooCommerce team have built blocks to use on most pages, including the cart page and the checkout page. And if you are using a block based theme, you can start using them now.
That said, people with active shops are using themes that are not block-based, so shortcodes will continue to be available to use for a long while yet. And that includes for the cart and checkout pages.
I’ll just mention a couple of extensions that we use.
WooCommerce Advanced Notifications, is the way we tell our distribution centre that an order has been placed.
WooCommerce Google Analytics Integration by WooCommerce. The description for this plugin says
This plugin provides the integration between Google Analytics and the WooCommerce plugin. You can link a referral to a purchase and add transaction information to your Google Analytics data. It also supports Global Site Tag, Universal Analytics, eCommerce, and enhanced eCommerce event tracking.