Tryton Components Overview
A Tryton instance is composed of the trytond server connected to a database software. One might want to interact with the system using a client.
It is not the scope of this how-to to be exhaustive. For that official documentation should be consulted.
Database
Every Tryton instance needs to be configured with one of the following database software:
PostgreSQL
It is recommended to use PostgreSQL for production systems, which is supported through psycopg2.
Note: PostgreSQL users are not tryton users.
Sqlite
Sqlite is a database in a file. This database is very convenient for testing, but should not be used for production.
This database software is the easiest to install and is supported out of the box.
Server
Also known as: trytond, tryton daemon.
Trytond, the server is the core of Tryton where all the business logic and data processing happens.
It connects to the database, it executes modules with business logic and even includes a web server that can be used for testing and debugging. It may chose to speak RPC with a client after successful authentication.
Each instance must use one database software, but may have one or more databases where active module configuration and business data is stored. There is probably not any point in calling a system without trytond a Tryton system.
Note that Tryton has it’s own users which are separate from the database users.
See the trytond documentation.
Client
This is the component that the user will most likely be interacting with while using the system.
The version needs to be compatible with the server, ex. tryton 7.0.x should be used with trytond 7.0.x.
In order to interact with the trytond server you will generally need one of the following clients:
Tryton Client
Also known as: Desktop Client, GTK Client. Note that the whole project has the same name as the desktop client.
This is the standard desktop program used to connect to the trytond server.
The tryton client is a python application, and exists packaged as a Windows application, flatpak, MacOS, but can also be installed using pip or run from source.
See tryton documentation for information regarding installation and usage.
SAO
Also known as: Web client
SAO Web client features most of the functionality of the GTK Client, can be accessed using a modern web browser and does not need to be installed on the client computer. This is very convenient for mobile use.
SAO may be tested at the tryton demo. Username demo for English.
Proteus
Also known as: Scripting client, Console client.
Proteus enables interaction with trytond by python program/script.
For example the country module includes two scripts for importing countries and postal codes.
Other options
It is also possible to interact with trytond by serving content by user application, or even connect to the server by a custom Javascript application that speaks RPC.
Tryton-flask may be used to create html pages from tryton.
In this case generally you are on your own and should know what you are doing
Get Tryton
See Tryton - Get Tryton, Docker how-to or using a hosted instance.