Skip to content

RFC: Plan-included credit grants (Billing Phase 5) #943

Description

@softmarshmallow

Problem

Today only explicit top-ups create balance. There is no recurring/plan-included credit — so a paid plan doesn't grant AI credit, and a brand-new org starts at zero. This is both:

  • the revenue path for bundled AI (a plan should include credit), and
  • a first-run prerequisite — without it, a fresh org's first hosted AI call is a 402 insufficient_credits until someone manually tops up on the web.

What this RFC should settle

  • Grant model — period-based (monthly) plan-included credit: its priority relative to prepaid top-ups (drain order), rollover vs. use-it-or-lose-it, and proration on plan change.
  • The PLAN_GRANT tier — the priority tier referenced (as deferred) in the AI-credits master plan; the setMonthlyIncludedCredit / stopMonthlyIncludedCredit lifecycle.
  • Subscription tie-in — grants are driven by subscription state through the webhook-as-source-of-truth doctrine (no server action mints credit from a subscriptions.retrieve); Stripe → Metronome ledger.
  • Gate + usage — how grants interact with the entitlement gate and ingestUsageEvent.
  • Reconciliation — upgrade / downgrade / cancel behavior.

References

  • The AI-credits master plan (docs/wg/platform/billing/ai-credits.md) already sketches this as deferred (Phase 5 / P5) — this issue promotes it to a real design.

Related (separate issues)

  • The initial-credit / trial decision (free starter credits vs. pay-first).
  • The universal payment-required UX harness.

Deliverable

Extend the billing WG doc with the grant model, then implementation issues.

Metadata

Metadata

Assignees

No one assigned

    Labels

    aiAI models, prompts, and pricingeeenterprise editionenhancementNew feature or requeststripe

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions