Skip to content
Opentra
Self-hosted PSA · built for small MSPs

The operating system for modern MSPs.

Run tickets, projects, contracts, time tracking and invoicing from one self-hosted platform designed for small managed service providers. Built by an MSP. Designed for yours.

Single-tenant · full data ownership · no per-seat pricing
opentra — ticket board
New 2

New starter — laptop + M365 setup

HIGH
Northwind Traders
#4820 · 12m
NB

Can't connect to the VPN from home

NORMAL
Riverside Legal
#4819 · 34m
In progress 2

Backup failing overnight

URGENT
Acme Dental
SLA overdue
#4821 · 2h
JS

Printer offline at reception

NORMAL
Blue Harbour Café
#4816 · 4h
MP
Waiting on client 1

Approve quote for firewall replacement

NORMAL
Meridian Health
Due in 3h
#4803 · 1d
JS
Replaces HubSpot Spreadsheets Shared inboxes ConnectWise Autotask
Why Opentra

Every client request follows a path.

From first email… to final invoice.

Opentra is the one system that path runs on — so nothing leaks, nothing gets re-keyed, and every request ends where it should: billed.

01 / The problem

Small MSPs are stuck between overbuilt and duct-taped.

OPTION A

Enterprise PSAs

ConnectWise, Autotask. Overbuilt, expensive, per-seat pricing that punishes small teams, months of onboarding for features you'll never touch.

OPTION B

The DIY stack

HubSpot for CRM, spreadsheets for time, email for tickets, more tools for contracts and projects. Nothing talks. You are the integration layer.

THE FIX

Opentra

One platform built the way a small MSP actually works — from inbound email to ticket to time entry to invoice. And you own every byte.

02 / The workflow

From inbound email to paid invoice — one connected line.

1

Email in

MS Graph ingests mail and auto-creates a ticket — resolving the real client contact even from forwarded or automated mail.

2

Ticket worked

Routed to the right client org. Live, DB-persisted timers track every billable minute as the tech works.

3

Time captured

Per-org rate overrides and configurable rounding turn raw timers into clean, billable line items.

4

Invoice out

Approved time and contracts feed straight into Xero monthly. No re-keying, no leakage.

03 / Why Opentra

Built around how MSP work actually moves.

01

Self-hosted & single-tenant

Your client data stays on your infrastructure. No multi-tenant SaaS risk, no per-seat cost creep as you grow.

02

Email-to-ticket intelligence

MS Graph ingestion auto-creates tickets and resolves the real client contact — even from forwarded or automated mail.

03

Time tracking that bills right

DB-persisted live timers, per-org rate overrides, configurable rounding — feeding straight into Xero each month.

04

Contracts → approval → invoice

Full lifecycle with token-based customer portals — clients approve and check status with no login required.

05

Project management included

Phases, tasks, dependencies, milestones, change requests, and quote→project conversion. Not a bolt-on.

06

MSP-native integrations

ScreenConnect, Level.io device/alert sync, HubSpot, Hudu — built around real MSP gotchas, not generic connectors.

04 / AI

AI where it saves time. Not where it makes noise.

AI is embedded where the work already happens — inside tickets, replies and the daily queue. It cuts admin instead of adding another dashboard to check.

SUMMARISE TICKETS
› 14 messages · 3 days
› fwd: printer offline again…
HP M428 at Reception offline since Fri. Driver rollback tried, no luck — needs an onsite swap.

Long threads compressed to what the next tech actually needs to know.

DRAFT CUSTOMER REPLIES
DRAFT → dana @ acme.co
"Hi Dana — replacement toner is ordered and we'll have it fitted Thursday AM. I'll confirm once it's booked in."
Insert Edit

A reply in your voice, ready to send or tweak in one click.

RECOMMEND NEXT ACTIONS
NEXT ACTIONS
Log 0.5h to this ticket Add to Acme March contract Close & notify client

The obvious next step, surfaced in context — never busywork.

Inside Opentra

The whole system, one screen at a time.

Service desk

One screen from first reply to billed.

Thread, live timer and AI drafting side by side. The tech never leaves the ticket — and every minute is captured for billing.

opentra — ticket #4821
#4821 Backup failing overnight
In progress ⚑ Urgent JSJordan S. △ SLA · overdue 20m
DA Dana Alvarez 2h ago

The nightly backup alert fired again — can someone take a look before we open?

JS Jordan S. just now

The 02:00 job failed on low disk. I've cleared space and re-run it — completed OK. Adding monitoring so it won't recur.

Time logged · 1h 45m
Remote Support 24:18
AI Agent
Suggested reply · just now

Draft: confirm the backup re-ran successfully and monitoring is now in place…

OrganizationAcme Dental
ContractManaged Service · MSA
OpenedToday · 06:58
Delivery

Projects that live next to the work.

Phases, tasks and dependencies with RAG health and milestone invoicing — linked to the same tickets and time your team already logs.

opentra — project #123
Office 365 tenant migration #123 On track
Northwind Traders · Fixed price · PM: Jordan Lee
Progress
62%
8 / 13 tasks
Hours
41 / 60 est
actual / est
Value
$12,400 / $18,000
billed / fixed price
Timeline
3 Jun → 18 Jul
on track
Phase 2 · Migration 1 / 3 Due 18 Jul
Provision new tenant + verify domains 3 / 3h Jordan L. Done
Migrate mailboxes (batch 2 of 3) #4821 6 / 10h Sam O. In progress
Cutover DNS — MX + autodiscover 0 / 2h Sam O. Blocked
Milestones
Discovery sign-off · 6 Jun · $4,500 Invoiced
Cutover complete · 18 Jul · $7,900 Pending
Month-end

Billing that ends in Xero, reviewed.

Approve time per client, gate the finalize behind a manager, and push clean drafts to Xero. Only approved time is ever billed.

opentra — billing run
Billing run · 1 Jun 2026 – 30 Jun 2026
12 clients · 5 approved
Push to Xero Create 5 invoices
Acme Dental
Approved
Northwind Traders
Approved
Riverside Legal
Pending
Meridian Health
Pending
Blue Harbour Café
Skipped
Acme Dental Xero contact linked
Skip Approve
#4821 · Backup failing overnight 2h 30m $375.00
#4816 · Printer offline at reception 45m $112.50
Managed Service — June retainer $1,200.00
Subtotal$1,687.50
GST 10%$168.75
Total$1,856.25
05 / Ownership

Your clients. Your infrastructure. Your data.

Opentra is self-hosted and single-tenant. Client data stays on hardware you control — no multi-tenant SaaS risk, no vendor sitting on your book of business, no per-seat cost creep as you grow.

  • Deploy on your own VM or box, full database access
  • Flat pricing — add techs and clients without penalty
  • Export everything, anytime. No lock-in by design
~/opentra · deploy
$ docker compose up -d
› pulling opentra:stable
› db migrate ......... ok
› graph ingestion .... ok
› xero sync .......... ok
running at https://psa.yourshop.io
06 / Integrations

Connects to the tools you already run.

All integrations →
M
Microsoft 365
H
HubSpot
X
Xero
S
ScreenConnect
L
Level.io
Hu
Hudu

Own your PSA. Keep your data.

Early access is open for owner-operator MSPs. Get the deploy guide and a spot in the first cohort.