Ghost with eCommerce integration with zero stock

I’ve always been interested in selling goods online through my own website, I’ve dabbled over the years with bits and pieces, spun up the usual players like wordpress and the many plugins, you know how it goes. But, with increase of SaaS products out there over the past few years it was time to take another look with the goal of listing talkncloud merch.

Note: I am not affiliated with any of the services mentioned, this is just my experience.

Whats the deal?

So, to understand how this works we need to know what we are working with. This website has been tackled a little differently to others out here because there were few things that I wanted to do differently. This site is using ghost cms which is basic blog, this is what we’ll be integrating with.

Depending on what you’d like to sell your requirements may vary, being in the tech industry I wanted some shirts to sell but have such low volume it doesn’t make sense to print a bunch of shirts. I had a look around and went with printful, these guys offer print on demand which is perfect for this use case.

Print on demand is a good option when you don’t know how much stock you need or it may be low volume / just testing the water. It is a little more expensive which may deter some buyers, they do offer stocked items to hold in their warehouse as well which is like volume discounts. So, choose what works for you.

Printful have a bunch of integrations with popular eCommerce SaaS providers so that you can sync your Printful store with the eCommerce provider, this automatically updates status like shipped etc for the customer, end to end.

It’s important to note Printful is not an eCommerce provider, they are printing and product provider. The offer shirts, hats, cups and other goods that you can put logos, images etc on. They have global stock and basically handle everything from the product, printing and shipping out as per your requirements.

As far as eCommerce providers there are a few out there, the requirement for this one was that I wanted to use Printful so any native integration with that was going to be a plus. I also wanted to list the products on talkncloud somehow. I ended up finding ecwid, now this provider like the others have a few different pricing options but the free tier is enough for now. Again, your mileage may vary e.g. number of products you need to list. It should go without saying but, Ecwid integrates with Printful out of the box.

Our stack

  • Ghost CMS - this is the main website (talkncloud)
  • Printful - print on demand
  • Ecwid - eCommerce

Setting up Printful

This is the easy part, all you need to do is make an account and add some product templates. This basically involves setting up a shirt, add a logo, choose your mock ups, go crazy.

Choose products close to your region e.g. Australia, this will make shipping faster and cheaper for your customers

Add a billing method, Printful accepts all the usual players like paypal, stripe etc. There is also a wallet concept so that you add money to a wallet like a prepaid system and use it instead.

The service will automatically handle tax depending on your country, so if your country has some sort of tax and is required Printful will add that to purchase.

Tax is important, when you setup the eCommerce part you’ll want to make sure that the tax is added to your store. Otherwise you’ll be the one paying the tax.

Ecwid setup

Much like Printful, Ecwid is pretty straight forward to setup. Go ahead and create an account and run through the usual to get the initial set of questions completed.

Go ahead and setup payments, this is similar to Printful the main difference here is how the customers will be paying versus how will you be paying. So, what options do you want to provide to your customers? By default it’s set to cash, go ahead and disable that (assuming that won’t work for you) and enable something digital like paypal and/or stripe.

Tax, remember what I said about tax earlier, jump into the tax settings part and enter that tax for your country if applicable. This will show on your product listings and charge the customer as required for your country, state etc. If you’re on the free tier this is manual process, if you upgrade this is something that Ecwid will magically do for you.


If you don’t set the tax, you will be charged tax by Printful, this means you end up paying the tax.

Lets hook up Printful to Ecwid

We already know that Printful is supported, make sure you’ve logged into both Printful and Ecwid. Now, jump over to Printful and select “Choose Platform”


Go ahead and select “Ecwid”, if you’re already logged in this will handle the rest for you. Once added you’ll see an Ecwid store in your Printful stores that you add products to. All you need to do now is add products and they will automatically be uploaded into your eCommerce (Ecwid). Nice and simple.

What about Ghost, how do my visitors see my products?

This is the cool bit, we’ve done all the hard work and now you get that Ghost integration working. You don’t want your visitors leaving your site and you just want it to mesh with your setup for a better user experience.

If you didn’t already know, most blogs support embedded HTML into posts and if they don’t they are custom and you just integrate it your self in the code. Go to Ecwid and look at the sales channels, select website and copy the HTML code to the clipboard.

All you need to do now is paste the code where you want it on the website and now have an embedded eCommerce site. To maintain the products just login to your Printful or Ecwid portals and add, remove, edit from there. This will automatically reflect on your site. Too easy!

Dark mode tip

If you look at talkncloud you’ll notice it’s pretty dark (people in tech tend to like dark themes, or at least I do). Ecwid does try to auto style your store for you and I swear it worked the first time but I noticed recently on the talkncloud store that the text was dark. Which wasn’t going to work for me or my customers. Ecwid allows you to style your store with CSS, so you need to, create a new theme to overwrite the defaults. Here is one that worked for me:

div.ecwid-productBrowser-productNameLink a,
div.ecwid-productBrowser-productNameLink a:active,
div.ecwid-productBrowser-productNameLink a:visited {
    color: #FFFFFF;
    text-decoration: underline;

div.ecwid-productBrowser-sku {
    color: #FFFFFF;
	word-wrap: break-word;

html#ecwid_html body#ecwid_body div.ecwid-productBrowser-price {
    color: #FFFFFF;
    white-space: nowrap;

Finishing up

This is a very quick run down on how you can get an eCommerce store integrated with your Ghost CMS site and start selling at little or no cost and with no stock! Which is pretty cool, I think the integration is pretty tidy and you have enough options and customizations to keep you busy for a while. Once you outgrow the free tiers you’ll have options to expand into the next level with a few button clicks.

Let me know if any questions, happy to help and happy selling!


Related Posts

Migrating from Ghost Pro to Hugo static on AWS for 24 cents

Migrating from Ghost Pro to Hugo static on AWS for 24 cents

Confession, I’ve been using a managed service provider for my blog instead of self hosting on AWS…feels good to get that out.

Read more

AWS Lambda Graviton2, cheap and slow

I was pretty pumped when I saw the announcement for AWS Lambda Graviton2 support for a couple of reasons, performance and cost.

Read more

Hackster AWS Reinventing Healthy Spaces Challenge

We are only a couple of days away from finding out the results to the Hackster AWS Reinventing Healthy Spaces Challenge.

Read more