Hosting Architecture
Overall Architecture
Your Odoo environment runs on its own virtual server in a Hetzner datacenter. The ISO 27001 / SOC 2 infrastructure is hardened by default with automatic updates, brute-force protection, backed by a 99.9% uptime guarantee. It is upported by a management platform, code version control and backup storage, with active monitoring as an optional add-on. Each component is described below with its location, purpose and access model.
Runtime flow
Management, deployment and backup
Storage
Provider
Hetzner, a German infrastructure provider. Your Odoo environment runs on a shared or dedicated virtual server in one of its datacenters.
Purpose
Runs the Odoo application server and the PostgreSQL database for your environment(s): production and, if wanted, a staging copy. One dedicated VM per customer: no other customers on the same server, no shared database or filestore.
Characteristics
Location | Germany (Falkenstein or Nuremberg) |
Security | Host firewall (UFW), managed by the management platform, only allows 80/443 (web) and SSH. The database port is not reachable from outside. All traffic runs over HTTPS. |
Access Security | Server access only via SSH with keys; password login is disabled. Odoo access via personal user accounts with roles and rights per user; two-factor authentication available. Integrations with external systems use API keys per integration user, never personal passwords. |
Full Access | Gomworx administrators (SSH key) |
Read Access | Customer (per Odoo user through Odoo database) |
Management Platform
Provider
Cloudpepper, a SaaS Odoo DevOps platform that connects to your Hetzner server.
Purpose
Provisioning, OS and Odoo updates, module deployments from Git, backup schedules, logs and restarts. Every action (update, restart, backup, restore) is logged in an audit trail.
Characteristics
Location | SaaS platform, connected to your Hetzner server |
Security | Connects to the server with its own deploy key. Every action is logged in an audit trail. |
Access Security | Gomworx administrator account with two-factor authentication (active). All changes go through Gomworx. |
Full Access | Gomworx administrators (2FA) |
Read Access | None |
Source Code
Provider
GitHub (Microsoft). All custom modules live in a private repository on the Gomworx account.
Purpose
Version control for all custom modules, with full version history. Code only, never your data or databases. The server pulls the code through the Cloudpepper deployment automation.
Characteristics
Location | United States (GitHub, Microsoft). Source code only, no business data. |
Security | Private repository, visible only to explicitly invited collaborators. |
Access Security | The server pulls code with a read-only deploy key; no personal credentials are stored on the server. |
Full Access | Gomworx (2FA) |
Read Access | Customer technical contact on request (read rights on own repository) |
Backup
Provider
Cloudpepper Managed Backup Storage, hosted in OVH datacenters in France.
Purpose
Daily backup of database and filestore, physically and operationally separate from the production server. Default retention (same cadence as Odoo.sh): 7 daily, 4 weekly and 3 monthly backups (3 months of history), each with database dump and filestore. Frequency configurable from hourly to monthly;
Optional
(1) Longer retention or a shorter RPO is possible at extra cost.
(2) Second encrypted copy to your own S3 bucket or SFTP server (for example a Hetzner Storage Box), so you hold your data independently of Gomworx and Cloudpepper.
Characteristics
Location | OVH datacenters, France (EU). |
Security | Encrypted in transit (TLS) and at rest. Geographically and operationally separated from the production server. |
Access Security | Storage credentials exist only in the management platform, not on the Odoo server, so a compromised server cannot delete the backups. |
Full Access | Gomworx, via the management platform (2FA) |
Read Access | Customer, via optional second copy to own S3 / SFTP |
Monitoring
Provider optional
Gomworx Odoo Monitor: a central monitoring server operated by Gomworx at Hetzner (odoomonitor.gomworx.net) combined with a light monitoring agent on your Odoo server.
Purpose
Monitors availability, cron jobs, mail queue, errors, SSL expiry and backup freshness. Alerts by e-mail to Gomworx Administrator.
Optional
(1) SIEM integration: a light log forwarder (Vector, Filebeat or rsyslog) on the server sends Odoo, nginx and system logs outbound over syslog-TLS or HTTPS to your collector, with local buffering when the collector is unreachable and optional field masking before transmission.
Characteristics
Location | Central monitor on a separate Gomworx server at Hetzner |
Security | Two channels: the central monitor reads Odoo through the standard XML-RPC API with a separate read-only monitoring user and API key, and the agent on your server sends metrics and log lines outbound only (HTTPS) with a per-server token that can be revoked individually. No inbound connection, no SSH or other server access from the monitor. |
Access Security | Dashboard behind its own login. Each customer gets a status page with own login or access code that shows only their instance. |
Full Access | Gomworx (admin) |
Read Access | Customer (own status page) |
TLS / DNS
Provider
Let's Encrypt certificate on the server. DNS at your own registrar or managed by Gomworx.
Purpose
All traffic runs over HTTPS.
Optional
Network integrations:
(1) e.g. Cloudflare in front
(2) Your own virtual firewall
(appliance by customer)
Characteristics
Location | Certificate on the server; DNS at your registrar or at Gomworx |
Security | HTTPS only; Let's Encrypt certificate. The monitor alerts on SSL expiry. |
Access Security | DNS changes via your registrar account or via Gomworx. Optional Cloudflare Access or VPN-only access for the backoffice. |
Full Access | Gomworx (Certificate); Customer or Gomworx (DNS) |
Read Access | None |
Intellectual Property
Gomworx remains the copyright holder of the custom modules built for you. After payment you receive an exclusive, perpetual and non-transferable right of use for your own Odoo environment(s).
On request you get read access to the repository or a full export, and you are not tied to Gomworx: the code can be deployed for that environment on any Odoo hosting.
Reselling, transferring to third parties or using the code in other databases or companies falls outside the right of use. These terms are laid down in the agreement.
Standard Odoo modules remain under their own licence (LGPL/AGPL).
Version
Last edited: September 17, 2026