Skip to content
thatsaas
Services // SaaS platforms

SaaS platform development for products other teams build on.

Tenancy, identity, entitlements, APIs and connectors as a shared platform layer — so every new feature inherits the same rules instead of reinventing them.

Scope

The layer everything else depends on.

Once a SaaS product has more than one team or more than one module, the expensive question stops being features and becomes foundations: who owns tenancy, how entitlements are enforced, what an API contract means, and how a new integration gets reviewed.

Platform development answers those once. The result is a spine — accounts, permissions, metering, connectors, observability — that every module uses rather than each one carrying its own interpretation.

This is the same architecture we run for our own product: one core, published budgets, and connectors that seat and unseat cleanly.

  • No card, no trial clock
  • Engineer replies same business day
  • SOC 2 Type II · PIPEDA
  • Your data stays in your region

Who this is for

  • Products that have grown into multiple modules or teams
  • Companies exposing APIs to customers or partners
  • Businesses consolidating separate tools onto one account model
  • Engineering leaders paying the same foundation cost repeatedly
Problems // What we remove

The failures this work is meant to end.

Every module reinvents the basics

Three implementations of permissions mean three places for a breach. Platform services are built once and consumed everywhere.

APIs without contracts

Undocumented, unversioned endpoints make every change a breaking change for somebody. Contracts and versioning are part of the platform.

Integrations as one-off projects

Each connector written from scratch is a permanent maintenance line item. A fabric with declarative mappings makes the tenth connector cheap.

Capabilities // What we build

Engineering scope, stated plainly.

Tenancy and identity services

One account, organisation and permission model shared by every module, with federation where customers require it.

  • Organisations, teams, roles and delegation
  • SSO and directory-driven provisioning
  • Per-tenant limits and observability

Entitlements and metering

Plan boundaries and usage measurement enforced in one place, so billing and access can never diverge.

  • Single enforcement point for feature access
  • Usage metering tied to the operational record
  • Quota and overage behaviour defined explicitly

APIs and developer surface

Versioned public APIs, webhooks and documentation your customers' engineers can actually build against.

  • Versioned contracts with deprecation policy
  • Webhooks with retry and replay
  • Reference documentation generated from the contract

Integration fabric

A connector framework instead of bespoke scripts, with mappings you can read, diff and roll back.

  • Declarative mappings under version control
  • Real-time sync with full-history backfill
  • Reversible removal with an audit trail
Process // How we work

A sequence, not a discovery phase.

01

Specification

Platform boundaries, contracts and ownership written down and priced.

02

Core

Tenancy, identity and entitlement services built first.

03

Surface

APIs, webhooks and documentation delivered against contracts.

04

Fabric

Connector framework proven on your two hardest integrations.

05

Handover

Runbooks, dashboards and direct engineer access.

Questions // Direct

Answered without a call.

Do we need a platform layer yet?

If two or more modules are duplicating accounts, permissions or billing logic, usually yes. If not, a single well-built application is cheaper.

Can this be introduced gradually?

Yes. We typically extract identity and entitlements first, then migrate modules one at a time.

Who maintains it afterwards?

Your team, with runbooks and documentation, or ours under an ongoing engagement — stated in the specification either way.

Does this replace our existing product?

No. It sits underneath it, so existing surfaces keep working while foundations are consolidated.

Related // Adjacent work

Where this connects.

Most engagements combine two or three of these. Start wherever the pressure is highest.

Direct booking · No sales queueCalendar open

Thirty minutes with an engineer, not a rep.

Bring your stack and your numbers. You leave with something useful either way.

  • Your current stack, volumes and failure points — reviewed live
  • An architecture sketch you keep, in your inbox the same day
  • A firm CAD price for your exact specification, no follow-up gate

Free · 30 minutes · Video or phone · Reschedule any time