When planning the future of your E-commerce, many factors need to be considered. First and foremost, you need to decide if you want to scale your business in the long run. If the answer is no, then this article is simply not for you. However, If you want your E-commerce business to grow in both multiple markets and languages, keep on reading.
As you probably already know, WooCommerce is pretty easy to understand and get started with. Just as WordPress democratized digital publishing by putting the tools for publishing in the hands of the masses, WooCommerce puts E-commerce tools in the hands of pretty much everyone who dreams of starting their own online business. Starting a business in which you work with one market and one language is easy as pie, but when we need more, we have to think a little further.
How do we scale up to our new markets?
When the time comes to scale up, we must first make a few critical business decisions regarding how to go about doing it. How we decide to do these things will determine how we set up our architecture in WooCommerce.
- In which countries will we sell our product?
- How can we best penetrate this market?
- What content should we use for this market?
- How should we advertise?
- Which key players should we ally or collaborate with within this market?
- What languages are used in this market?
- How much time and money does it take to maintain and support each language?
- What tax rules apply in each country?
- What other laws and regulations may apply?
- Where will we send the products?
- Do we need to change our shipping options for this market?
- What duties can the end customer expect?
- What payment options should we have for each country?
After answering these questions, we can create a plan for how we will build and scale our E-commerce with WooCommerce.
Market, language or both?
Before we sit down and write code, we need to understand what a market is and what a language is. A market is usually a country where a particular set of rules apply. A language, on the other hand, is just that – a language.
After answering the above questions, we can start thinking about our architecture. A typical case for our customers has been that one market also corresponds to one language, simply because the management costs of having several languages in one market often is relatively high.
Multisite, Clustered Multisites, Multi-Multisite, and language plugins
With WordPress Multisite, we can build a network of websites that are linked. We usually recommend that you use one website per language instead of using a plugin such as Polylang or WPML for managing multiple languages in a website instance when working with E-commerce. By instead using this approach together with a plugin like MultilingualPress, we can refine each language and easily maintain the connection between products with hreflang links, etc. between different websites.
This method works well when using one language per market. This is by far the most common approach among our customers and is usually a good fit for fast-growing companies.
For example, if we sell office accessories from Sweden to all EU countries, China and Russia, we would need a WordPress installation with a multisite. In this multisite, we would then create four websites.
This approach works well if we only use one language per market, the question, however, is what happens when we need multiple languages per market? In that case, we have the option two different approaches; Either by using some sort of Clustered Multisite or by making a Multi-Multisite.
The easy way: Clustered Multisites
Thanks to the fantastic MultilingualPress plugin from Inpsyde, we can cluster and create relationships between multisites. With this approach, we can, with MultilingualPress, build clusters of different websites in the multisite installation. The architecture of it is basically flat, and we then create the hierarchy by deciding how we structure our domain names for the instances.
For example, you can have a website called en.eu.myshop.com that is connected to de.eu.myshop.com and it.eu.myshop.com so that you have three pages for the EU store. Then in the same installation, you might have en.asia.myshop.com connected to jp.asia.myshop.com and zh.asia.myshop.com, so that you have three pages for the Asian store and so on.
Each website will be able to have its own currency and all the necessary settings for its market. What might be a bit clumsy is the synchronization between products. As of writing this, it is also not possible to configure items per “relationship group” (e.g. EU store or Asia store), and it is not possible to synchronize the product (i.e. copy posts) between “relationship groups” with MultilingualPress, both of these functions are in progress on the plugin’s roadmap.
A clustered Multisite also gives us the best possible compatibility with both the WordPress core and plugins from WordPress.org.
The hard way: Multi-Multisites
If we want a clearer hierarchy, the Multi-Multisite approach may be relevant. This option is provided by using a plugin such as Wp Multi-Network. With this approach, we create several multisites within the installation, and within each multisite, we connect websites with MultilingualPress to manage languages.
This method is useful when we want French, Italian, German, Spanish and English in our EU store and Japanese + Chinese in our Asian store.
With this approach, we have 4 Multisite instances running, which in turn have a total of 9 websites running within these multisite instances.
However, this approach can give you problems with existing plugins from the WordPress plugins directory, as methods like switch_to_blog do not work flawlessly when multiple Multisite installations exist. In this setup, however, there is the opportunity to create tailored functionality for each market.
The architecture is strongly dependent on support systems
If we are to use WooCommerce as our platform for E-commerce, we want to use the best parts of WordPress and WooCommerce, and have them work with us instead of against us. For example, as previously mentioned, there are several ways to implement languages; however, there are only a few ways to do it in a scalable manner.
When we scale our WooCommerce E-commerce like this, we must understand that it will create a lot of manual work if we do not have the right support systems, as WooCommerce in itself has some limitations “out of the box”.
- No way to manage all orders from one interface
- No way to manage all coupons from one interface
- Synchronizing product information is not very flexible
- Images need to be managed individually from site to site, creating large amounts of images.
- No way to automatically synchronize layers (Can be solved with WooCommerce Stock Synchronization)
- Only one layer per installation possible (Can be solved with WooCommerce Stock Synchronization)
ERP, PIM, WMS, etc.
Due to these limitations in WooCommerce, we need to understand which support systems we want to use in order to make our work easy and scalable while also helping us avoid loads of manual labor. If we can get the right support system in place early, it will be much easier to manage when our business is scaled up.
To solve these problems, we usually need an ERP system and a PIM system. Different systems provide different functions, but the basic ERP systems can at a minimum usually manage orders. If the ERP does not manage items and inventories, you will need to obtain a WMS system. A standard PIM system can provide all images, translations, and discount codes in one central location, which will save you a lot of time. Read more in this article on ERP for WooCommerce.
Alternative solutions; Several installations
Now that we’ve learned how to build the right architecture for our E-commerce solution using Multisite, it’s worth mentioning that if you have an existing installation with ERP and other support systems, you might as well use individual WordPress installations instead of a multisite setup. Doing so can even lead to easier maintenance for each installation, as we have fewer components that can break or malfunction. For this approach, it’s vital to have a good development process that makes it easy for the developers to ship out updates and changes.
This can be a good approach for large companies with ready-made support systems, that want to try new ideas with WooCommerce. Starting and completing a WooCommerce project is almost always much faster than when using competing software, which means that larger companies can try new business vectors with WooCommerce in a very short time to market.
Good luck with scaling your future multi-market & multilingual WooCommerce store!
You may also be interested in these articles
WordPress for Digital Products (Saas)
WordPress as an LMS
Time to take the next step towards a more effective website?
Contact us, and we can talk more about how we can take your business to the next level together.