Skip to main content

How to Install Tryton ERP on Ubuntu Server — Step-by-Step Guide

· By Pankajbhai Chavda · 4 min read

Tryton is one of the most powerful and flexible ERP platforms. It is built on Python, supports PostgreSQL, and offers a clean web interface through its SAO (Single Application Object) web client. In this step-by-step guide, I will walk you through the complete installation of Tryton 7.8 on a fresh Ubuntu 24.04 Server.

Tryton is a three-tier high-level general-purpose application built on Python. It is used as an Enterprise Resource Planning system for businesses of all sizes. It is best for:

  • Inventory & Stock Management
  • Accounting & Finance
  • Sales & Purchase Management
  • Manufacturing
  • Party & Customer Management
  • Reporting & Analytics

Prerequisites

Before we start the installation, make sure we have an Ubuntu 24.04 LTS fresh server, 4GB RAM, minimum 25GB storage, and sudo or root privileges.

System Update & Upgrade

In Linux, when starting a new installation, we first need to ensure our system is up to date. We can do this using the below command.

sudo apt update && sudo apt upgrade -y

Install Dependencies

Tryton 7.8 requires all dependencies to be downloaded using the below commands.

sudo apt install -y \
  python3 python3-pip python3-venv \
  postgresql postgresql-contrib \
  curl git build-essential \
  python3-dev libpq-dev \
  libxml2-dev libxslt1-dev \
  libffi-dev libssl-dev \
  pkg-config

Node.js 20 Install

To install Tryton 7.8 ERP on Ubuntu 24.04 Server, Node.js version 20 is required. Here we install Node.js 20.

curl -fsSL https://deb.nodesource.com/setup_20.x | sudo -E bash -
sudo apt-get install -y nodejs

Verify:

node --version
npm --version 

Expected Output:

Tryton 7.8 installation on ubuntu and node version

PostgreSQL Setup

When setting up PostgreSQL, first we start and enable PostgreSQL.

sudo systemctl start postgresql
sudo systemctl enable postgresql

Now we create database and DB user. Before applying first change password in this command. Replace Your Password with YourPassword.

sudo -u postgres psql << 'EOF'
CREATE USER tryton WITH PASSWORD 'YourPassword';
CREATE DATABASE tryton
  OWNER tryton
  ENCODING 'UTF8'
  LC_COLLATE 'C.UTF-8'
  LC_CTYPE 'C.UTF-8'
  TEMPLATE template0;
EOF

Directory & Python VirtualEnv

Create a directory for Tryton and then set up the virtual environment.

sudo mkdir -p /opt/tryton/{etc,data,webdata,logs}
sudo chown -R $USER:$USER /opt/tryton


cd /opt/tryton
python3 -m venv venv
source venv/bin/activate

Tryton Server + All Modules Install

In this step we install all modules.

cd /opt/tryton
source venv/bin/activate

pip install \
  "trytond==7.8.*" \
  "trytond_party==7.8.*" \
  "trytond_company==7.8.*" \
  "trytond_currency==7.8.*" \
  "trytond_country==7.8.*" \
  "trytond_product==7.8.*" \
  "trytond_account==7.8.*" \
  "trytond_account_product==7.8.*" \
  "trytond_account_invoice==7.8.*" \
  "trytond_account_invoice_stock==7.8.*" \
  "trytond_stock==7.8.*" \
  "trytond_stock_lot==7.8.*" \
  "trytond_purchase==7.8.*" \
  "trytond_purchase_request==7.8.*" \
  "trytond_sale==7.8.*" \
  "trytond_stock_supply==7.8.*" \
  psycopg2-binary

Config File Create

In this config file, replace your password with YourPassword.

cat > /opt/tryton/etc/trytond.conf << 'EOF'
[database]
uri = postgresql://tryton:YourPassword@localhost:5432/
path = /opt/tryton/data

[web]
listen = 0.0.0.0:8000
root = /opt/tryton/webdata
EOF

SAO Web Client Download + Build

In this step we download SAO to the tmp directory, then extract and deploy.

cd /tmp
curl -L "https://downloads.tryton.org/7.8/tryton-sao-7.8.7.tgz" \
  -o tryton-sao-7.8.7.tgz

mkdir -p /tmp/sao_extract
tar -xzf tryton-sao-7.8.7.tgz -C /tmp/sao_extract

rm -rf /opt/tryton/webdata/*
cp -r /tmp/sao_extract/package/* /opt/tryton/webdata/

sudo npm install -g grunt-cli


cd /opt/tryton/webdata

npm install --legacy-peer-deps

grunt

Build Verify:

ls -lh /opt/tryton/webdata/dist/

Expected Output:

Output of Build verify in install Tryton

Database Initialize + Admin Password Set

First we initialize the database of Tryton, then set the password for Admin.

cd /opt/tryton
source venv/bin/activate

  
trytond-admin \
  -c /opt/tryton/etc/trytond.conf \
  --database tryton \
  --all

prompts answer:

"admin" email for "tryton" (empty for none): [email protected]
"admin" password for "tryton": ••••••••
"admin" password confirmation: ••••••••

This password is required when logging in on the Tryton home page.

Systemd Service Setup

cat > /tmp/trytond.service << EOF
[Unit]
Description=Tryton Server
After=network.target postgresql.service

[Service]
Type=simple
User=$USER
WorkingDirectory=/opt/tryton
Environment="PATH=/opt/tryton/venv/bin"
ExecStart=/opt/tryton/venv/bin/trytond -c /opt/tryton/etc/trytond.conf
Restart=on-failure
RestartSec=5

[Install]
WantedBy=multi-user.target
EOF

Now we reload our system then enable and start.

sudo mv /tmp/trytond.service /etc/systemd/system/trytond.service

sudo systemctl daemon-reload
sudo systemctl enable trytond
sudo systemctl start trytond

Verify Status:

sudo systemctl status trytond

Expected Output:

Expected Output for Trytond service.

Final Verification

Now we perform the final verification using the below commands.

sudo systemctl status trytond

ss -tlnp | grep 8000

curl -s http://localhost:8000 | grep -o ".*"

Expected Output:

Final verification of installing Tryton.

Browser Access

When you paste this in the browser, replace it with your IP address.

http://YOUR_SERVER_IP:8000

Then the home page will open as shown below. Enter the username admin and the password you set up at the Admin Password Set step.

Final home page of tryton install in ubuntu server.

 Finally, we have installed Tryton 7.8 ERP on Ubuntu 24.04 Server.

About the author

Pankajbhai Chavda Pankajbhai Chavda
Updated on Apr 12, 2026