{"id":24738,"library":"trytond","title":"Tryton Server","description":"Tryton is a three-tier high-level general purpose application platform, and trytond is the server component. Version 8.0.1 supports Python >=3.10. Releases follow semantic versioning with annual major versions. The server provides modular business logic, database abstraction, and network protocol handling.","status":"active","version":"8.0.1","language":"python","source_language":"en","source_url":"https://github.com/tryton/trytond","tags":["erp","crm","business-platform","three-tier","modular"],"install":[{"cmd":"pip install trytond","lang":"bash","label":"Install server"}],"dependencies":[{"reason":"Core dependency for database abstraction layer.","package":"python-sql","optional":false},{"reason":"Used for WSGI server and request handling.","package":"werkzeug","optional":false},{"reason":"Recommended production WSGI server.","package":"gunicorn","optional":true},{"reason":"PostgreSQL adapter; often needed for database backend.","package":"psycopg2-binary","optional":true}],"imports":[{"note":"Pool is used to get model instances.","symbol":"trytond.pool","correct":"from trytond.pool import Pool"},{"note":"Base class for all models.","symbol":"trytond.model.Model","correct":"from trytond.model import Model"},{"note":"Configuration object used to read config file.","symbol":"trytond.config","correct":"from trytond.config import config"},{"note":"Transaction handling for database operations.","symbol":"trytond.transaction","correct":"from trytond.transaction import Transaction"}],"quickstart":{"code":"from trytond.config import config\nconfig.update_etc(os.environ.get('TRYTOND_CONFIG', '/etc/trytond.conf'))\nfrom trytond.pool import Pool\nfrom trytond.transaction import Transaction\n\npool = Pool('testdb')\npool.start()\n\nwith Transaction().start(pool.database_name, 1) as transaction:\n    # Work with models\n    User = pool.get('res.user')\n    users = User.search([])\n    print(users)","lang":"python","description":"Basic setup to start Tryton server, connect to database, and perform a query. Requires a running PostgreSQL and proper config."},"warnings":[{"fix":"Run migration commands as documented in release notes.","message":"Major version upgrades (e.g., 7.0 -> 8.0) require database migration. Always run `trytond-admin --database=DB --update all` after upgrading.","severity":"breaking","affected_versions":">=8.0.0"},{"fix":"Upgrade Python to 3.10 or later.","message":"Python 3.9 support dropped in 8.0. Only Python >=3.10 is supported.","severity":"deprecated","affected_versions":"8.0.0+"},{"fix":"Call `config.update_etc(conf_path)` immediately after import, before any other trytond imports.","message":"The config file path must be set before importing trytond modules that read config (e.g., trytond.pool). Missing config leads to obscure errors.","severity":"gotcha","affected_versions":"all"},{"fix":"Always pass a valid user ID to `Transaction().start(db_name, user_id)`.","message":"Transaction context manager requires a user ID (second argument). Using 0 or None may cause permission errors.","severity":"gotcha","affected_versions":"all"}],"env_vars":null,"search_vec":"'3.10':26 '8.0.1':23 'abstract':42 'annual':32 'applic':14 'busi':39,50 'business-platform':49 'compon':21 'crm':48 'databas':41 'erp':47 'follow':28 'general':12 'handl':46 'high':10 'high-level':9 'level':11 'logic':40 'major':33 'modular':38,55 'network':44 'platform':15,51 'protocol':45 'provid':37 'purpos':13 'python':25 'releas':27 'semant':29 'server':2,20,36 'support':24 'three':7,53 'three-tier':6,52 'tier':8,54 'tryton':1,3 'trytond':17 'version':22,30,34","created_at":"2026-05-01T08:14:40.206313+00:00","updated_at":"2026-05-01T08:14:40.206313+00:00","problems":[{"fix":"Ensure the user used in transaction has the required access rights.","cause":"Trying to access a model or record without proper permissions.","error":"trytond.exceptions.UserError: UserError"},{"fix":"Install trytond via pip and ensure the virtual environment is activated.","cause":"trytond package not installed or not in Python path.","error":"ModuleNotFoundError: No module named 'trytond'"},{"fix":"Set config.update_etc() with correct config file before any trytond module import.","cause":"Config file not loaded or missing database URI.","error":"KeyError: 'database_uri'"}],"ecosystem":"pypi","meta_description":null,"install_score":null,"quickstart_score":null,"quickstart_tag":null,"pypi_latest":"8.0.5","cli_name":"trytond","cli_version":"trytond 8.0.2","type":"library","homepage":"https://www.tryton.org/","github":null,"docs":"https://docs.tryton.org/server/","changelog":"https://docs.tryton.org/server/releases.html","pypi":"https://pypi.org/project/trytond/","npm":null,"openapi_spec":null,"status_page":null,"smithery":null,"categories":["web-framework","database"],"base_url":null,"auth_type":null,"provenance":{"verified_status":"passing","verified_at":"2026-06-29","last_verified":"2026-06-29","next_check":"2026-07-29","install_tag":null}}