A headless eCommerce architecture is one in which a site's presentation-layer is decoupled from its backend logic. Going headless is one of the top initiatives for many retailers in 2020 and beyond for three main reasons:
- To gain freedom from the limitations imposed by the frontend tooling offered by their monolithic eCommerce platform, while reducing vendor lock-in and increasing agility
- To speed up their website significantly and improve SEO
- To easily support future use cases and endpoints
What to look for in an eCommerce platform as you upgrade your frontend
The key benefits of going headless include: frontend portability, website speed and SEO improvements, and support for future use cases. We have assessed the readiness of the leading eCommerce platforms to support headless commerce and deliver Progressive Web Apps (PWAs) and AMP websites.
We found that commercetools is the easiest platform to go headless on. commercetools has the best APls, offers a frontend framework and supports third-party frameworks. By focusing on APls, they make going headless easy. Shopify Plus is the runner up despite doing the least in the way of building a frontend PWA template. Shopify APls are robust, consistent, have a modern GraphQL format and are well documented, however, the API coverage is not complete and we have observed throttling issues. Lastly, Salesforce Commerce Cloud seems to be improving the fastest, but still has a long way to go.
Each platform also leaves site speed up to the developer, offering little to no tooling to assist to optimize websites for speed. In addition, Server-Side Rendering (SSR) and AMP are not supported out of the box, an omission that hurts SEO.
Specific limitations of Salesforce Commerce Cloud, Magento, Shopify Plus, SAP Commerce Cloud (Hybris), Oracle Commerce Cloud and commercetools
- Salesforce Commerce Cloud does not support PWA or AMP out of the box. Also, Pipeline implementations can be harder to support on a headless architecture. With that said, the new beta offering of the Commerce Cloud API seems promising, but is too early to judge.
- Magento's PWA Studio and GraphQL are both only supported on Magento 2.3 or later. PWAStudio is also geared specifically for the platform, so you remain locked into its ecosystem, which blunts some of the value of headless commerce.
- Shopify Plus does not support PWA or AMP out of the box, but there are Shopify Plus merchants that are running headless PWAs on the platform. The caveat is that some of these merchants have found they need a Backend For Frontend (BFF) to create microservices between the Storefront API and their PWA to optimize the APls and minimize the amount of client-side logic.
Shopify offers decent product API coverage and documentation, but it does not offer fullAPI coverage for everything you need to run a site. For example, the control panel lets a merchant set the items in the site navigation menu, but there isn't an API to get those menu items. Shopify also limits the number of requests a single user can make and due to theseAPI coverage issues, sometimes the BFF layer will count as a single user making calls, even though it's proxying traffic for multiple users.
- SAP Commerce Cloud's Spartacus is new, so there are few proof points in production. Like Magento's PWA Studio, Spartacus is geared specifically for the SAP Commerce Cloud (Hybris) platform, so you remain locked into the platform's ecosystem, which blunts much of the value of going headless.
Additionally, while Spartacus now supports SSR, you still need somewhere to host this capability, such as Layer0 which has a Spartacus connector to make everything about building and running a lightning-fast Spartacus PWA simple.
- Oracle CommerceCloud(ATG)is another platform that simply does not support PWA or AMP out of the box. The platform has an extensive REST API that can be used to implement shopping, checkout, and storefront administration in a PWA or any other application.