Skip to content

Welcome

Subscrio is an open-source library for deciding what a customer can use in your product. Your application stores the catalog and customer agreements in its own database, then calls the TypeScript or .NET library to check access and record consumption.

Start here

Getting Started walks through installation, a small catalog, a customer subscription, and a feature check. TypeScript uses PostgreSQL and requires Node.js 20.19 or newer. .NET targets .NET 8, 9, and 10 and supports PostgreSQL or SQL Server.

Use the language selector in the header to switch examples throughout the site.

Choose what your application needs

Requirement Where to start
Enable features or set limits by plan How Subscrio Works
Offer extra seats or make a customer-specific exception Add-ons and Overrides
Combine allowances from several subscriptions How Feature Values Are Calculated
Enforce a recurring quota Metered Usage Workflows
Let several actions spend a shared balance Credit Wallet Workflows
Manage trials, cancellation, or expiration Subscription Lifecycle
Keep catalog configuration consistent across environments Managing Configuration

Where Subscrio fits

Features define the values your application understands. Products group features and plans. A subscription gives a customer a plan through a billing cycle. Add-ons contribute additional values; overrides express individual exceptions. Metering counts use against an allowance, while credits account for a spendable balance.

Subscrio does not collect payments, authenticate requests, decide which user owns a customer account, or perform your application's work. Your application combines its access checks with those responsibilities. A numeric seat limit, for example, tells you the allowed number; your application counts the seats already assigned.

Integrate and operate

Use Stripe Setup to map billing events to subscriptions, or Extending Subscrio for hooks, audit records, and payment tracking. The Relationships page explains the stored model; Schema Upgrade covers existing installations.

The Library Reference documents each public object, its methods, and its data types.