Project · Self-Hosted Business Software
Sentrello: Run the Whole Business on One Server You Own
A CRM, an invoicing tool, a bookkeeping subscription and a forms product, none of them talking to each other, all of them charging per seat. Sentrello replaces the pile with one self-hosted platform, one price, and as many people as you like.
Overview
Look at what a five-person business pays for. A CRM at $25 a seat. An invoicing tool at $30. Bookkeeping at $40. A forms product at $20. None of them talk to each other, so somebody types the same customer in four times and the books run two weeks behind. Then you hire a sixth person, and every one of those bills goes up again.
Sentrello is my answer to that pile. It’s a Unified Business Management Platform: CRM, accounting, booking, shop, subscriptions, projects, links, newsletter, documentation, storage and SEO, on one server, for one price, with as many people as you like. I’ve been building it on my own, in my spare time, for three and a half years.
The problem
Per-seat pricing punishes the exact thing a small business wants to do, which is grow. So people dodge it. They share one login, and that works right up until somebody needs to know who changed the invoice.
The other cost is quieter. Every tool keeps its own copy of the customer, and the copies drift. The profit and loss lives in a spreadsheet somebody reconciles on Friday, and it’s right only if they did.
And the data isn’t really yours. It’s “exportable”, which means it’s yours on the vendor’s terms, in the vendor’s format, for as long as the vendor is around.
What I built
Raise an invoice in Sentrello and it’s in the ledger before you close the tab. A form on your website drops a lead straight into the pipeline you actually look at. A booking becomes an invoice; a shop order reaches accounting. The profit and loss is computed from journal entries, so it’s right by construction rather than right because somebody checked.
What makes that possible is one PostgreSQL database that every module shares. It sits on your machine, and you can query it with psql at two in the morning if that’s what the accountant needs. If the project vanished tomorrow, your instance would keep running and your data would stay readable.
Everyone gets their own account, with the permissions their job needs, because it costs nothing to do so. Audit trails only work when people sign in as themselves.
The free core isn’t a trial. It’s AGPL, needs no license key, and doesn’t expire. The tax work is in it too, all of it: the UK VAT return in the nine boxes Making Tax Digital expects, Canadian GST/HST, US sales tax with state nexus thresholds, the EU One Stop Shop return, and EN 16931 e-invoices, every one computed from the ledger. Pro is priced per instance, not per person. It opens up the paid half of the core, and it’s what the optional modules sit on: booking, shop, subscriptions, projects, links, newsletter, documentation, storage and SEO, each added only when the business needs it.
Two rules the code won’t bend
Money is integer cents. Never floating point. Tax rates are integer millionths, so Quebec’s 9.975% QST is exactly 99750 and no rounding error ever gets a vote.
Bookkeeping is double-entry. Every financial event posts a balanced journal entry or throws, and every report comes from the ledger, never summed from the invoice table.
Licenses are Ed25519-signed tokens checked offline against a public key in the repository. A paid instance sends one license check an hour, a key and an instance id. A free instance never has to contact anyone at all. Nothing about your customers ever reaches the project.
Where it is now
Stable since 1 October 2026, and I mean that: the install path works end to end on Docker and Podman, and a release doesn’t go out until every test in four repositories passes against a database created that morning.
What stable doesn’t mean is battle-tested by lots of businesses. It hasn’t been yet. E-invoices are built but not proven on the live Peppol network, and the README says so. QuickBooks and Xero sync, mobile apps and the point of sale aren’t available, and aren’t promised on any date.
Try it
On any Linux server with Docker or Podman:
curl -fsSL https://get.sentrello.com | bash
The installer asks four questions, generates its own secrets, starts PostgreSQL and the app, and runs the migrations. A few minutes later you have a working instance. Would you rather read a script before you run it? It’s here, and so is the code.
// Let's talk
You have ideas.
I have IT solutions.
Fifteen minutes on Zoom is usually enough to tell whether I'm the right person for what you're building.
Denver, CO · Available for architecture, infrastructure, and DevOps engagements