Open-source entitlement engine

Turn what customers bought into what your product allows.

Subscrio is an open-source entitlement engine for .NET and TypeScript. Embed it in your application to resolve feature access, values, limits, and customer overrides.

MIT-licensed engine.NET + TypeScriptYour databaseOptional one-time admin
TypeScript · feature check
// Check seat limit before inviting.
const seatLimit = await subscrio.featureChecker
  .getValueForCustomer<number>(
    'acme', 'analytics', 'seat-limit', 0
  );

if (activeSeats >= seatLimit) {
  throw limitReached('seat-limit');
}

await inviteMember(email);

A local check against the catalog and customer assignments in your database.

When plans change

Plans change. Access mistakes cost.

Putting each plan rule in application code turns packaging changes into releases. A missed check can give away paid access or block a customer who bought it.

Our core guide explains where changing offers belong, what your application still enforces, and how to verify access in both directions.

Read how to manage feature access
Illustrated reporting app: a paying customer is denied export while an account without the entitlement generates costly reports.

At a glance

What Subscrio supports.

Define what customers receive, track what they use, and keep entitlements current as their subscriptions change.

Entitlements

  • Feature access, limits, and values
  • Plan entitlements
  • Metered usage
  • Credit grants and wallets
  • Subscription add-ons
  • Customer overrides

Purchases and lifecycle

  • One-time purchases
  • Recurring subscriptions
  • Trials and scheduled activation
  • Plan changes and migrations
  • Cancellation and expiration
  • Recurring and expiring credits

Build and operate

  • Multiple subscription composition
  • Billing system integration
  • Prevent Stripe Drift
  • Native C# and TypeScript libraries
  • Extensibility and hooks
  • Entitlement explanations
  • Audit trail and transaction logs
  • Web Admin and REST API

Your billing system collects payments; Subscrio manages the resulting entitlements. See how the pieces fit together.

The missing decision

Billing knows what happened. Your product still needs an answer.

A payment, contract, license, or internal grant says what the customer received. Your application still needs to know which features and limits to allow. Subscrio provides that answer without replacing your billing system, feature flags, or user permissions.

Plan-based feature access

Control feature access by plan and subscription.

Set features and limits for each plan. As subscriptions start, renew, change, or end, Subscrio resolves each customer's current access.

  1. Feature defaultThe safe fallback when no plan supplies a value.
  2. Plan valueThe standard access, limit, or configuration for the package.
  3. Subscription overrideThe customer-specific agreement, evaluated first.
Read the exact resolution rules

Flexible commercial models

Built for software licenses or subscriptions.

Any package or agreement can grant features, limits, and customer-specific access.

One-time purchasesUnlock paid modules and capabilities.
SubscriptionsChange access as plans start, renew, or end.
LicensesControl modules, seats, devices, or account limits.
AgreementsApply contracted packages and customer exceptions.

Open core, optional workflow

Run the engine free. Buy the admin when it saves time.

The MIT-licensed library includes the entitlement data model and feature checks. It is not a limited trial for the commercial product.

The admin application is a ready-made interface and REST API for managing customers, products, plans, features, subscriptions, and overrides. It is sold as a one-time purchase, with optional yearly support and upgrades.

Subscrio admin dashboard showing subscription and customer activity

Common questions

Questions about Subscrio and entitlement engines

What is an open-source entitlement engine?

An open-source entitlement engine turns a plan, package, purchase, or grant into customer feature access. Its source is available to inspect and run with your application, including logic for toggles, limits, values, and customer overrides.

Can Subscrio manage software licenses and subscriptions?

Yes. Subscrio can represent access from software licenses, subscriptions, one-time purchases, contracts, or manual grants. It manages product access rather than payment processing or license activation.

Is Subscrio a billing system?

No. Billing records the commercial event. Subscrio maps that event to product access and resolves the result inside your application.

Is Subscrio a feature-flag platform?

No. Feature flags control rollout and experiments. Entitlements represent what a customer or account is allowed to use. Many products use both systems in the same decision.

Which languages and databases does Subscrio support?

Subscrio has TypeScript and C# libraries. TypeScript uses PostgreSQL. The .NET implementation supports PostgreSQL and SQL Server.

Is the Subscrio entitlement engine free?

The entitlement engine is MIT-licensed and free to run. The optional admin application is a one-time purchase for teams that want a ready-made management interface and REST API.

Start with the open-source engine

Put one entitlement check in your application.

Choose the .NET or TypeScript quickstart, connect your database, and model the first feature your product sells.

Get started

Screenshot preview