SYSNOMINAL|BUILDv2026.01.01|REGIONSELF_HOST

PlanSignal [ID: PLN-01]

DATA PLATE
INPUT
Billing events and operator-defined plan mappings → stored state
OUTPUT
Plan, account, and entitlement facts as JSON
SIDE EFFECTS
None on reads
EXECUTION
Read-time lookup only
DEPS
PostgreSQL

[ DOWNLOAD DATASHEET ]

Note: PlanSignal replaces the former “SaaS Engine” name. Route compatibility is retained.

PlanSignal is a self-hosted plan and entitlement state primitive.

It ingests billing truth from your payment provider, maps that truth into internal plan state, and exposes deterministic JSON facts your application can query at read time.

PlanSignal does not authenticate users, authorize actions, enforce access control, grant features, revoke access, or charge accounts.
It emits plan and entitlement facts only. Your application decides what those facts mean.

What it emits

  • Account status such as active, canceled, or past_due
  • Plan identifier
  • Entitlement facts derived from stored plan mappings
  • Billing state mapped into application-readable JSON

What it does NOT do

  • Does not authenticate identity
  • Does not authorize actions
  • Does not block requests
  • Does not revoke access
  • Does not enforce billing, permissions, or feature access
  • Does not act as a security system

Typical use

Before executing a paid feature, your application queries PlanSignal for the current plan and entitlement facts. Your application then evaluates those facts with its own rules and executes the outcome elsewhere.

Boundary rule

Plan state is not authorization.

SimpleStates emits facts. Your system implements outcomes.

If plan state cannot be confirmed, your application must handle that condition explicitly.

Self-hosted. Signal-only. No hosted dashboard. No emergency support.

Failure modes

  • Billing event sync is delayed or missing → state can be stale
  • Webhook delivery failure → billing state can lag behind upstream reality
  • Plan mapping is misconfigured → emitted entitlement facts can be incorrect
  • Partial writes or database inconsistency → reads can be stale or incomplete
  • Network or database failure → reads can fail, time out, or return unexpected data
  • Interpreting emitted state as enforcement → unsafe application behavior

Spec Sheet