Instances that come up in under two minutes. Nightly backups you can restore into any instance. Your own domain with automatic TLS, and a dashboard that shows what is actually running. Built for teams tired of docker compose and a capped commission.
Pricing
Your client pays exactly what they'd pay Odoo.sh — per worker, per staging environment, per GB. The difference is on your side of the invoice: Odoo pays partners 50% of hosting and stops at €150 a month per client. We pay 55% and never stop.
List price: €48/worker · €12/staging · €0.16/GB per month. Identical on Odoo.sh and Shodoosh.
This client is past the Odoo.sh cap: anything they spend above €300/mo earns you nothing extra there. Odoo Enterprise licences are excluded on both sides.
The platform
A Shodoosh instance is a namespace, its own Postgres, its own secrets vault, an Ingress with TLS, backups on schedule, and a place in the dashboard. Not a shared tenant with a schema prefix.
Pick an app and a version. We create the namespace, spin up its own Postgres, install the workload from a versioned Helm chart, request a Let's Encrypt certificate, and wire it into your dashboard. If any step fails, the whole thing is torn down again — you never end up with half of an environment.
A full database dump to object storage every night, seven days kept. Restore into the same instance — or into a fresh staging one to reproduce a problem on real data.
Point a DNS record at us; we verify it, issue a Let's Encrypt certificate, and renew it. No blob of manual TLS config to babysit.
Every tenant gets its own key material, sealed in OpenBao Transit. Rotate, revoke, and audit per tenant — never per fleet.
Same lifecycle, same dashboard, same backup model. If you run both, you already know why that matters.
How it works
POST /api/instances
{
"app": "odoo",
"version": "19",
"domain": "acme",
"type": "PRODUCTION"
}POST /api/instances/:id/domains
{
"hostname": "erp.acme.com",
"issuer": "letsencrypt"
}POST /api/backups/:id/restore
{
"targetInstanceId": "acme-staging",
"neutralize": true
}Under the hood
We do not hide the stack behind a "cloud" abstraction. You should know where your data lives, what schedules its backups, and who has the keys. If you want to leave, the artefacts are standard.