Entitlements without the engineering debt
Define what each plan unlocks for your app, your AI features, or your agents. Kelviq enforces access instantly, without touching your codebase every time a plan changes.

Define it once. Enforce it everywhere
One dashboard. One SDK call. No webhooks, no mirroring, no desyncing.
Check access in one line
- Toggle access per customer. No code.
- Trials, overrides, and promotions built in.
- No deploy required.
const { granted } = await kelviq.hasAccess( 'advanced-analytics'); if (!granted) { return res.status(403).json({ error: "Upgrade to access this feature" });}Limits that actually hold
- Hard limit: access stops at the quota.
- Soft limit: warn, upsell, grace period.
- Reset on schedule or on demand.
- Override any customer from the dashboard.
const { granted, usage, limit } = await kelviq.hasAccess( 'ai-tokens', { consume: 1000 } // tokens to consume); if (!granted) { return res.status(429).json({ error: "Monthly AI usage limit reached", usage, limit });}One product. Different access by plan
- Model access by plan.
- Retention windows and export limits.
- Run limits for premium workflows.
- Advanced features only on paid tiers.
- No feature forks in your codebase.
const { value: model } = await kelviq.getConfig('model-tier'); const response = await llm.complete({ model, prompt });Control agent access before spending
- Token budgets by plan with hard stops.
- Gate tools by tier: browse, email, code exec.
- Lock background runs and scheduled agents behind higher plans.
- Concurrency limits per workspace or customer.
- Require human approval for sensitive actions.
const tool = await kelviq.hasAccess('agent-tool:web-browse');if (!tool.granted) { throw new Error('Upgrade to enable web browsing');} const tokens = await kelviq.hasAccess('ai-tokens', { consume: tokensUsed});if (!tokens.granted) { throw new Error('Token limit reached');}Entitlements vs feature flags vs Stripe: why you need a dedicated layer
Kelviq knows both: what the customer paid for and what that means for their access. One layer. No mirroring. No desyncing.
Feature flags
Great for rollouts. Weak for monetization. No billing context, usage limits, or permissions. Plan logic stays in code.
Stripe
Great for payments. Weak for entitlements. It tracks payments, not feature access, usage caps, or agent permissions.
Hardcoded plan checks
Fast to launch. Hard to maintain. Every new tier, add-on, or exception expands code paths, QA load, and support risk.

IDEAL USERS
Who should choose Kelviq
Teams that want Merchant of Record, pricing control, checkout, entitlements, AI billing, and global monetization in one place.
AI agents & Infra companies
Token budgets, model routing by tier, per-agent run limits, tool-level gating. One SDK call before every LLM call or agent action. Check agent billing
SaaS teams
Seat limits, feature tiers, data retention windows, export caps. Update a plan from the dashboard. GTM owns it, engineering doesn't have to.
Indie hackers
Ship a free tier and a paid tier on day one. No billing logic to build. Kelviq handles what each plan does so you can focus on what the product does.
Common questions
Rules that define what a customer can do based on their plan. Feature gates, usage limits, and configuration values, enforced with one SDK call instead of hardcoded if/else checks.
Feature flags control rollouts. Entitlements control monetization. Flags have no billing awareness. Entitlements update access the moment a plan changes.
Stripe knows the plan name, not what it unlocks. You end up mirroring state with webhooks and writing custom gating logic that desyncs. Kelviq sits between billing and your app so access is always current.
Boolean: access or no access. Metered: a quota (API calls, tokens, seats) tracked and enforced in real-time. Configuration: same feature, different behavior by plan.
Authorization = who in the org can do what (roles). Entitlements = what the org has access to based on what they paid for. Both layers work together.
Agents burn tokens, call tools, and take actions. Entitlements let you set per-plan token budgets, gate which tools an agent can invoke, route to different models by tier, and cap concurrent runs. All enforced before the cost hits.
Yes. Define a metered entitlement, set a quota per plan, and Kelviq enforces it in real-time. Hard-stop or soft-limit with an upsell prompt. Reset on a schedule or let customers buy add-on packs.
Yes. Use a configuration entitlement. Change the mapping from the dashboard, not the inference code.
Yes. Define a boolean entitlement per tool (web browse, email send, code exec). Check access before the agent fires the tool. Upgrade prompts built in.
Combine a metered token entitlement with a hard limit. Kelviq stops the agent the moment the quota is hit. No runaway spend, no cron jobs.
software monetization.
Global tax, billing, metering, and entitlements. Ship your revenue stack in one deploy.