Will your head roll if you don't go headless?
The headless commerce trend is one that has been making waves in the Shopify e-commerce world for quite some time now. It's an interesting development and something we're all taking note of, but it can be hard to keep up with everything happening. In this series, consisting of three parts, I'll try my best not only to cover what you need to know about this subject matter (which there seems like endless possibilities), but also provide resources where people may find more information on these developments as well!
Why should you familiarise yourself with headless commerce?
For us, it’s quite simple why we’re digging into this subject:
- We get more and more questions from our clients
- We have lots of internal discussion about it
- We see tons of new services and tools popping up
Discussing trends and evolutions is simply interesting.
But the real trigger was when a client told us he was in conversation with another developer who said, and I’m paraphrasing: “It’s simple, these days you should always build headless.” That’s what made our heads spin!
Prior to that one of the most respected agencies in the world concerning headless commerce said this:
“Originally we planned for a headless setup, but Shopify's 2.0 update opened the possibility of staying native to the platform. A multilingual store with a single native back-end. Filter and search features built directly on Shopify, with a wishlist functionality that saves products on customer metafields. None of this was possible before the 2.0 updates and the Filling Pieces store is testament to how far advanced the Shopify platform now is.”
The theory behind headless commerce.
Let’s start by defining headless commerce so that we can reason from first principles. The two most important terms if we discuss this topic are ‘front-end’ and ‘back-end’. I’ll tell you all you need to know about these two terms for now, so you’ll really understand why this headless commerce is quite the rage!
The front-end is what the visitors see when they visit your website on all types of devices. Pages such as the homepage, contact page, blog posts, product pages, and so on - it’s all front-end. These pages are in itself built out of copy, images, videos and 3D models.
This layer is an integral part of your customer experience. The true essence of your business can be seen in this top layer. This is where you get to show off who YOU are as a brand and what sets you apart from your competition. When marketing gurus are boasting about higher conversion rates and retention percentages, chances are they’re talking about optimising your front-end.
You’re now well aware about the front-end, but what about the back-end of your website? Well, that’s where the real magic happens. You see, when front-end is all about seducing your customers to make a purchases, the back-end makes sure your customers can, in fact, make said purchases.
Your back-end ensures that customers can checkout, make a payment, that you have a database with your orders, where customers are stored and that you can deliver your orders on time.
Fully integrated commerce players
Shopify (and Odoo for that matter) is an example of a fully integrated commerce system, in which you can create a front-end AND a back-end. It is a SaaS company that aims to completely power your online business, from A to Z.
The advantages of using Shopify are well documented here. Their business model is to use all the resources they gathered from serving millions of merchants and make them as accessible as possible for everyone, whether you’re a small shop or a multinational giant.
The more merchants use Shopify, the more resources they can put to use to create the best commerce system. But, creating a system like that, means they need to make choices. And making those choices mean that they can’t do everything. Shopify comes with some inherent limitations to its system.
While Shopify’s back-end is widely viewed as the best in class, its front-end doesn’t have the same extensive fanbase. In fact, some people argue that there are better alternatives to Shopify built-in front end capabilities! Why’s that, you may ask? Well, in the front-end landscape, there’s so much going on all the time; different frameworks get developed and new coding languages pop up left and right. And not every shiny new thing can be (immediately) used within Shopify.
And that’s where headless commerce comes into play. It unlinks the front-end from the back-end, so you have complete freedom in both parts. Through APIs (APIs are basically the rules on how applications communicate with each other), you can link a different front-end mechanism to the back-end.
This means you’re no longer limited in your choices, since you can customise your front-end and back-end to your liking, and pick whatever system fits your needs the most. Alas, it’s not so easy to switch to and maintain a headless commerce. It’s far from ‘one size fits all’ solution - but it might be just your size.
So, now you know what the foundation of headless commerce is. But should you go headless? And who can implement this for you? And how do you know those parties have your best interests at heart? Lots of questions, but I’ll give you lots of answers in the second and third part of this series!
What is composable commerce
Composable commerce is a concept that includes headless commerce - it’s used to describe flexibility. Imagine everything is built up out of blocks, like Lego. There’s ‘clean’ blocks of code that you can connect with every other block of code. These blocks are like mini applications you can install, linked to other applications that you’re already using.
It’s quite similar to headless front-ends, as I explained earlier, and the fact that there is a lot of creativity in that sector. There’s always new ideas, new ways of doing things, and new niche micro applications are on top of the list.
Composable commerce makes use of this concept and builds up your ecommerce business out of these tiny components that are all paired together. All these components communicate over APIs and are interchangeable - so if you want to replace one component with another, you can easily do so. Pretty neat, no?