Owostack

Introduction

Start here to understand Owostack’s model, pricing system, and billing flow

Owostack

Owostack is a billing infrastructure for subscriptions, usage, entitlements, credits, and seat-based products.

The docs should answer three questions in order:

  1. What does Owostack model?
  2. How do I represent my pricing correctly?
  3. What API calls and lifecycle flows do I use in production?

What you build with Owostack

  • Subscription lifecycle without bespoke webhook code
  • Entitlements that gate features by plan
  • Usage metering for API calls, credits, or quotas
  • Entity management for per-seat, per-project, or per-workspace billing
  • Code-first plans with an SDK that syncs your definitions with a single command

The three runtime primitives

import { Owostack } from "owostack";

const owo = new Owostack({ secretKey: process.env.OWOSTACK_SECRET_KEY });

await owo.attach({
  customer: "user_123",
  product: "pro-monthly",
});

const access = await owo.check({
  customer: "user_123",
  feature: "api_calls",
});

await owo.track({
  customer: "user_123",
  feature: "api_calls",
  value: 1,
});

Read in this order

1. Learn the system

2. Model your product

3. Run billing in production

Mental model

Owostack separates:

  • plans: what customers subscribe to
  • features: what customers can use
  • entitlements: whether access should be allowed
  • usage: how much was consumed
  • rating: how billable usage becomes money

That separation is what lets you combine:

  • subscriptions
  • usage-based pricing
  • included quotas with overage
  • prepaid credits
  • seats and other entity-based capacity

Common product shapes

Start with these pages

On this page

AI Chat

Owostack docs assistant

Start a new chat below.