Under the Hood
If you have the understanding of how your e-commerce store works under the hood, you’ll easier troubleshoot issues. In this step, I would like to explain the basics of how our e-commerce store will work. The illustrations below illustrates the software and tools we’ll be using to run the store.
Our e-commerce project contains several elements, which I’d like to explain before we move into building our store.
We’ll have a shared hosting plan where we’ll install WordPress (website software) and Woocommerce (e-commerce software which transforms our blog into a robust store). Our shared plan will host our store software, the domain name, and the SSL certificate.
Due to the nature of a Full Bitcoin node, for those of you who’d like to install their own Bitcoin payment processor, we will be deploying a VPS (Virtual Private Server) and keep the store and the payment processor separate. The store owners who are on a budget and can’t afford a VPS or want to see how Bitcoin payments work for them will have a section in which I’ll show you how to attach a store to a free BTCPay Server Host and receive payments with no intermediates.
Once we’re finished, you’ll have a complete system in place, same as a real, professional web-store. We won’t be paying anyone for it, we’ll do it all ourselves, and you’ll see it’ll be quite easy.
Let’s now cover each of the project elements and explain them briefly.
Web-hosting is a networking infrastructure which keeps your site online 24/7. While you can host your site on your home server, you would have to leave it running on all day and night, taking care of security and performance. Websites are stored on specialized computers called – servers. Servers are kept in secure data centers which have a high level of physical protection, backup system, fire suppression and more.
When purchasing a hosting, you’re paying for space on their server and also bandwidth (the network speed) and few more things.
Web hosting can be :
With shared hosting, plenty of web-hosting customers share one physical server. It’s basically like living in a building with lots of apartments. All of the people living in the building share the same resources (CPU, disk space, RAM), but have different living space (website).
Shared plans are universal (one solution to fit all websites), which means they can be limited in specific cases, so it offers a limited amount of customization. Luckily a shared hosting is more than enough for a web-store these days.
Shared Hostings has pre-installed user-friendly interfaces called the control panel (c-panel). Shared hostings eliminate technical maintenance and shields everything into an easy to understand interface. Since there are lots of people sharing one server, it’s the most affordable option.
In dedicated hosting, one customer is the sole owner of the server. Dedicated is the priciest option which offers unlimited customization options. With a dedicated server, you live in a mansion.
VPS (Virtual Private Servers) can be compared to living in a semi-detached house. Each family has a separate house, but they are still connected to their neighbors. VPS is a hybrid of shared and dedicated, where each server is virtually separated into a few pieces, where each customer gets their own piece of a server, and all of them operate independently of each other.
In this setup, for the sake of ease of use and performance, we will be using shared hosting for our store, and an affordable VPS to host our Bitcoin payment processor.
We will build our website on shared hosting because shared hosting comes with a 24/7 support and fantastic, out of the box tools.
Our Bitcoin payment processor will be on a VPS, because it’s resource-intensive, and there’s no shared hosting plan which can handle it.
So there are 3 ways to approach this tutorial :
- Shared + VPS hosting (recommended)
- Shared + free host (useful for testing)
- VPS for both store and Bitcoin payments processing (won’t be covered in this tutorial, advanced)
If you’d like to have your BTCPay server and receive Bitcoin payments to your node, you’ll have to launch a separate VPS.
If you don’t want to run Lightning Network payments and have your own server, you can easily connect to some of the free hosts of BTCPay server and receive payments through them for a start.
If you have the technical knowledge, you can host both site and Bitcoin payment processor from VPS only.
Domain name and SSL
Domain name is – www.yourwebsite.com. Domain names are created to make internet-protocol addressed (IP’s) which look like random numbers: 34.213.40 accessible and easily recognizable by humans.
Imagine that your website is a house, a domain name is your street address where your readers can find you easily, instead of using the map coordinates (IP address).
SSL creates an encrypted tunnel from your customer’s browser to your web-server. SSL is an encrypted protocol which makes sure that a third party can’t extract and intercept the data.
In the past, SSL was used only for stores processing credit card payments, but recently it became a standard for all websites. Some browsers nowadays will mark your websites as insecure and block users from visiting it, if it does not have an https protocol.
Our hosting will allow us to have our own domain name and register it through them and provide us with a free SSL certificate through Let’s Encrypt right out of the box. So all of this will be happening in the back-end, and you won’t notice it.
The most basic explanation of WordPress is that it’s free, open-source software used to create websites, written in PHP programming language. It’s the easiest and most used CMS (Content-Managment-System) or a blogging platform which powers 30% of all websites on the planet.
A theme gives WordPress site it’s appearance or design and allows you to customize it. There are hundreds of thousands of WP themes out there. Some are free; some are paid.
We will be using a free theme called Storefront.
Plugins are pre-written pieces of code which give the functionality to your website, and it’s theme. Just like with themes there is an insane number of free and premium plugins.
Woocommerce is a free and open-source WordPress e-commerce plugin. It transforms your website from just another blog to a robust and customizable e-commerce solution.
BTCPay server is an open-source Bitcoin payment processor which allows you to directly receive Bitcoin (and altcoin) payments, with no intermediates and no processing fees. BTCPay WordPress plugin creates a link from your server to your Woocommerce store.
As you noticed so far, we will be using free and open-source solutions. The only things we’d have to pay to create our first web-store are hosting and domain name.
|Monthly Price||Annual Price|
|VPS Hosting (optional)||$9.4 + 3.5$ (one-time)||$112.8|
|Let's Encrypt SSL||Free||Free|
|Total (no VPS)||$5.2||$62.4|
|Total (VPS included)||$14.89||$178.68|