Ecosystem

What Whity plugs into.

Self-hosting shouldn't mean building storage, error tracking and email delivery yourself. These drivers ship in the core — no plugin, no separate purchase. Status labels are literal: nothing below is marked available unless it is in the codebase today.

Object storage

Available

An S3-compatible driver implemented against the wire protocol — no AWS SDK to vendor. A local-disk driver for the no-bucket case. Backend is selectable per tenant.

AWS S3Cloudflare R2Backblaze B2MinIOlocal disk

Error tracking

Available

Sentry's ingest protocol, implemented directly. A Sentry.io DSN works; so does a DSN for a self-hosted, protocol-compatible server. A built-in tracker is the zero-config default.

SentryGlitchTipBugsinkbuilt-in

Transactional email

Available

Outbound mail over SMTP, configured by the operator in-app. Any provider that speaks SMTP works, including the ones below and a mail server you already run.

Amazon SESSendGridPostmarkMailgunyour SMTP

Single sign-on

Available

One generic OIDC engine; providers differ by configuration only. Tenants can bring their own IdP under a two-tier trust model that keeps one tenant's provider from authenticating into another.

GoogleMicrosoft EntraOktaany OIDC

Payments

Coming soon

Whity core does not process payments itself. A separate payments service, planned forpay.whity.dev with MEPS (a PayTabs company) as the gateway, handles that — leaving the core to do entitlements, plans and the per-tenant payment wall. Not live yet; this page will say so when it is.

MEPSseparate service

Entitlements & metering

Available

What the core does own: per-tenant feature flags and quotas, subscription plans, and a payment wall with an operator-controlled enforcement mode — all provider-agnostic, so billing state can come from anywhere.

entitlementsplansrate limits

Product analytics

Planned

Something in the shape of PostHog is on the roadmap and not in the codebase. It won't be listed as available here until it ships.

e.g. PostHog

Automation & agents

Available

The sanctioned way an external system drives Whity is the MCP server: every schema-bearing route is already a tool. Embedding a workflow engine was evaluated and deferred.

MCP · JSON-RPC 2.0OpenAPI 3
Why protocols, not SDKs

Fewer dependencies to trust, patch and vendor.

The storage and error-tracking drivers speak the S3 and Sentry wire protocols directly. That is a deliberate choice for a self-hosted platform: the same driver works against a hyperscaler, a self-hosted MinIO or GlitchTip, and an offline desktop build — and the dependency list in composer.json stays short enough to actually audit.

.envoperator configuration
# storage: local | s3 (per-tenant override in-app)
STORAGE_DRIVER=s3
STORAGE_S3_SECRET_KEY=…

# error tracking: internal | sentry-protocol
SENTRY_DSN=https://…@glitchtip.example.org/1

# email and SSO are configured by the operator
# in the admin UI — no restart required