Bitcart is a platform for merchants, users and developers which offers easy setup and use.


Now we offer docker automatic installation!


Manual installation requires setting up essential parts of bitcart structure. First of all, you will need to download bitcart repository:

git clone

Then, install all the requirements. Note that using virtualenv is preferred, but not required.

Create virtualenv(with name env):

virtualenv env

Then, activate it, it may differ on your os, but on most oses it would be:

source env/bin/activate

Then, install the requirements:

pip install -r requirements.txt

Bitcart uses electrum, and, as it is not yet on PyPi we provide a script to install it.

wget && python3

After that, you will need to set up bitcart structure, it consists of: a database(postgresql), in-memory cache provider(redis), dramatiq worker and blockchain access provider(electrum daemon). So, you will need to install those and make it running, default settings are set up to work with default installations of these pieces of software. After installing redis and postgres, you will need to create postgres datatabase. Default settings are configured to use user postgres with database bitcart Login to postgres using something like:

sudo -u postgres psql
\password your-password-here
CREATE DATABASE bitcart OWNER postgres;

This will set password for your user postgres as your-password-here(you will need to use your password), and create database named bitcart with user postgres as owner.

Now, you will need to create a config file. For that, we provided a .env.sample file in conf directory, adjust it to your needs(for example DB_PASSWORD to your-password-here).

After that, it is time to run bitcart. It will need a dramatiq worker and daemon to be running. Open terminal and type:

python3 rundramatiq

To run dramatiq worker, and in separate terminal, run:


To run electrum daemon.

Bitcart web gui is a django site, so you will need to create database tables first, run:

python3 makemigrations --no-input
python3 makemigrations gui --no-input
python3 migrate --no-input

Next, if you need to create admin user(to access django control panel at /admin), run:

python3 createsuperuser

It will ask you for admin user’s username,email and password.

Now, we’re ready! Run bitcart using this command in separate terminal:

python3 runserver

Now, you can open your browser at http://localhost:8000 and see your bitcart instance up and running!