Skip to content

Written by Oscar

Getting started with Craft Commerce

There are many factors that go into deciding which approach to take for your e-commerce business. One key decision is selecting the platform that is right for your requirements and the way you go to market. A general guiding principle is that as soon as you move away from selling basic single product SKUs, the more you need to think about the kind of flexibility you may need.

Craft Commerce is one of those options and has been making its mark in the ecommerce world. I usually describe it as sitting nicely between Shopify and Magento but it really does depend on what’s important to you.

One fundamental difference when compared to many other platforms is that Craft Commerce is built on top of Craft CMS which means you can take advantage of the content first approach to presenting your products. This allows you to weave products into content to add real value to your customers. It is a great way to build trust and loyalty based on your expertise and compete with Amazon. I truly believe many people want a reason not to use Amazon and avoid the guilt!

The other key difference is that with Craft Commerce you are building a custom configuration for your shop - no off the shelf templates or pre-defined ways of doing things. This is incredibly powerful but at the same time daunting. Why would you want to worry about this when you consider some competing systems promote features that are already built in and ready to go.

In our experience no two shops are the same and there is usually deviation from the default functionality that systems like Shopify offer.

The ability to build your shop in a way that works for your business model can help differentiate you in a crowded market. If you’ve come up with a subtle way to remove a customers pain point, it can all be worth it!

Luckily, you can relatively quickly configure and launch a solid Craft Commerce powered shop.

I have highlighted some the most useful features that Craft Commerce offers out of the box to get you selling quickly.

Given Craft Commerce is built in Craft CMS, many of the standard requirements of a solid CMS foundation are the same. You may also therefore also want to read Katie’s Craft CMS set up article.

Content modelling

This is a core strength of Craft CMS. Craft does not have any expectations of the content a site might want to present. This is something that is unique for your business and website content. You can therefore create tightly integrated content relationships that make sense and add value to your customers. At the end of the day, a product is simply another type of content in your website.

The reason it’s so useful for shop sites is that you can include “Add to cart” buttons anywhere. For example, part of your strategy is to provide in-depth overviews of the products you’re selling and want you to seamlessly include call to actions to purchase the product then and there.

Product variants

At its simplest a product can be a single ‘variant’ - the product as presented! Which is perfect for many shops.

However even for a basic product we may want to assign some attributes like colour or material that describe this product to power filters or to ensure consistency in product presentation.

We could then build on this and allow the customer to select a variation of the product by adding multiple variants. For example, different colours.

But why stop there when you could offer the product in different materials. At this point, how the customer to selects a specific product variant is about what creates the best experience. It could a single drop down, perhaps two, or perhaps swatches. If it helps the customer configure their product, you could create a multi step process to guide them.

Of course we could also split each combination into separate products and keep the set up simple.

The point is that with Craft Commerce, we can create a logic that works for your products and ensures you can go to market in a way that differentiates you from competitors.

Different customer groups

Sometimes there is a need to provide variable pricing based on the type of customer shopping. If so, they would also be motivated to register for an account. Once registered you can user the user group they are assigned to to adjust the pricing.

We’ve also found user groups a great way to control whether they can buy a certain product type allowing you to easily separate consumers from B2B customers.

Organising products

Technically a key benefit of creating separate sections, called product types, is because you can use different fields and variant set ups for each one. This can help make the product management easier and more logical. If one product type only needs a single variant and a description, that’s all that is needed in the entry. At the other end, for another product type you could set up a complex multi attribute variant set up.

I think it’s important to also consider the person who will be managing the shop. Not just what creates the most efficient field set up. This means that it may make more sense to separate products in a way that reflects how they sell them even if the fields for each type are very similar. In other words, technically it would be more efficient to put them all in one bucket and manage the separation with categories, but we’ll separate them to make managing the shop much easier.


These can work across any content in the site which makes them incredibly useful. Especially for larger sites.

Categories can be used as attributes on product variants (e.g. material) or as top level product categories (e.g. dresses, accessories). To add depth, you can add information about the material or category to appear anywhere in the site where it makes sense (tooltips, underneath products etc.). For example, there is something special about the material that will help people make a decision. This could be about how it’s made which could include text, imagery or a video content. All accessible anywhere on the site.

You can combine categories with product types to refine how you’re modelling your catalog in a ways that make sense to your internal processes as well as the customer. There is no one “right” way to do. Although you can certainly over complicate things!

Custom checkouts

If none of the other reasons for using Craft Commerce convince you, the ability to customise the checkout process might, if it’s central to differentiating your business. The aim is always to streamline the checkout process and remove any hurdles that may lead to a customer not completing the purchase. While platforms like Shopify have a well optimised checkout process, it is also trying to be all things to all businesses. And you may not like their processing fees!

Multiple payment gateways

Providing different ways for people to pay for their basket is important. Craft Commerce comes with some of the most popular gateways as optional plugins including Stripe (we’re huge fans!), Paypal Checkout, Sage Pay, and Worldpay among others.

If you’re considering this platform you’re perhaps a B2B company, if so you can also allow customers to pay later by invoice or follow up the order before completing the order and payment.

Stock control

The key with stock control is having a single source of truth. This can either be the website or another database that is used for orders in the store.

Natively Craft Commerce allows you to set a specific quantity per product variant or set stock to unlimited if you’re never worried about running out or indeed you sell a bespoke product.

Shipping methods

Nice one, you’ve sold a product! All you need to do now is get it shipped to your customer.

We always recommend you are transparent when it comes to shipping costs. If you’ve built it into the price of the product then you’ll want to promote that you offer free shipping. Or at least over a certain cart value.

Craft Commerce comes with a very flexible set of conditional logic to allow you to set the shipping price or provide additional information for your fulfilment partner. For each product you can set dimensions and weight which you can then use to calculate shipping. In the real world, it’s never as tidy as this but as long as you build in buffers, you should be fine.

For example, if the products you sell are relatively heavy, you may want to include some rules that determine the shipping price.

For example:

  • Variable cost based on where it is going (zoning a city or region of the country).
  • Based on weight or per item meaning shipping goes up as more items are added.
  • Option for free shipping over a certain value.
  • Next day vs 3 days.

If you love a puzzle, feel free to volunteer to be the one who works out the logic that makes sense for you business!

Import and export of product information

Craft Commerce can also take advantage of the native FeedMe plugin which makes it easy to import products and other related content such as channel entries, categories, images, pretty much anything else that is a field in your website.

We’re not sure what we would do without this plugin for the kind of content heavy sites we often tackle.

You can also set up cron jobs (a way to schedule repeated tasks) to import external feed (e.g. CSV, JSON, Google Sheet etc.) to update stock, product availability or whatever you may change in batches in another system.


Being able to manage multi tiered navigation on a website is something that all content editors want! While it’s possible to automate the inclusion of product categories or similar, this rarely works when managing a real store.

Shopify plug-in (all new!)

For many businesses Shopify does exactly what is needed from a fulfilment and checkout perspective. Well now you don’t need to let go of that set up entirely! Pixel & Tonic have created a first party plugin that allows products from Shopify to be synced in Craft. Now products can be accessed in a Craft site with all the flexibility we love. And when someone wants to buy something you hand them back to the Shopify cart and checkout. Now all we need is an excuse to use it.