MonetizationOS Docs
Getting Started

Introduction

MonetizationOS is a composable monetization platform that sits between your product, identity, and billing systems. We provide a common interface for managing features, plans, and access control that scales reliably and reduces engineering overhead.

Core Concepts

  • Surfaces & Components: A Surface is any interface your customer engages with — a website, mobile app, API, or MCP server. Components are the individual elements within it.
  • Features: The building blocks you want to control access to (articles, videos, AI tools). These define what capabilities users can access.
  • Plans: Collections of features that determine user access levels. Can be assigned automatically or linked to Stripe products.
  • Offers: A way to present purchase opportunities to users, with configurable pricing, messaging, and redemption flows.
  • Workflows: Automate business logic such as dynamic plan assignment and custom access rules using serverless TypeScript functions.
  • Observability: Full logging and monitoring of all access checks and events.

Architecture Diagram

Configuration — What You Set Up

Features
  • Articles
  • Videos
  • AI Tools
Plans
  • Anonymous
  • Registered
  • Premium
Features bundle into Plans
Feature Properties
  • Enabled: on/off/metered
  • Premium: boolean
  • Quality: string/number
Workflows
  • Feature
  • Surface
  • Component
  • Dynamic Provisioning
  • Endpoint
  • Action
Offers & Offer Groups
  • Redemption methods
  • Presentation details
  • Targeting filters
  • Offer Groups & Slots

Runtime — What Happens During A Surface Decision

User Request
POST /surface-decision

User Identity Resolution

JWT Claims
ID, email, roles, etc.
identity resolved from
User Identity
Anonymous / JWT / Provided

Plan Provisioning

Auto-Assigned Plans
Assigned based on whether the user is logged in or not
Dynamic Provisioning
TypeScript rules that assign plans based on user attributes
Product-Linked Plans
Assigned when a user purchases via Stripe
Provisioned Plans
The full set of plans currently active for this user

Feature Evaluation

Base Feature Properties
Access levels inherited from the user's active plans
Feature Workflows
TypeScript functions that adjust access based on extra logic
Final Feature State
The resolved access state for every feature

Surface & Component Behavior

Surface Workflow
Runs once per request — sets top-level access rules
Component Workflows
Runs per UI element — decides what each component should display
OFFER GENERATION
Resolve Offers
Matching purchase options based on who the user is
Offer Groups & Slots
Organized purchase options ready to display
Offer redeemed· · · →Stripe / Custom action· · · →Plan Provisioning
Surface Workflow Output
Top-level decisions — redirect, gate access, or enable/disable the surface
Component Workflow Output
Per-element decisions — what to show, hide, or change for each UI component

Response — What You Get Back

Surface Decision Response
  • Identity details
  • Active plans
  • Feature states
  • Surface behaviors
  • Component behaviors
  • Applicable offers
fires

Side Effects — What Else Happens

Final Feature State consumes
Metering
Usage counters are incremented and limits enforced
placeholder
Triggers & Actions
Automated follow-up actions like webhooks and analytics events

Further Resources