Summary
Prose has no monetization features. Creators cannot charge for content, offer membership tiers, or accept payments. This is the single biggest missing feature for creator adoption — it's the primary reason creators choose Ghost (0% platform cut) or Substack (10% cut) over alternatives.
Who Has This
- Ghost — Native Stripe integration, membership tiers, 0% platform cut
- Substack — Built-in paid subscriptions, 10% platform cut
- Buttondown — Paid newsletters via Stripe
- WordPress — Via plugins (WooCommerce, MemberPress)
Why This Matters
Monetization is the #1 feature creators evaluate when choosing a platform. Without it, Prose cannot serve professional creators, journalists, or anyone looking to build a sustainable publishing business. Ghost's 0% cut model is the gold standard — Prose should match it.
Recommended Implementation
Phase 1: Stripe Integration
- Add
stripe gem
- Store Stripe API keys in
SiteSetting (encrypted, like AI keys — key presence enables feature)
- Stripe Connect onboarding flow for site owners
- Webhook endpoint for Stripe events
Phase 2: Membership Tiers
- Create
MembershipTier model (name, price_cents, interval, stripe_price_id, description, benefits)
- Create
Membership model linking Subscriber to MembershipTier (status, stripe_subscription_id, current_period_end)
- Checkout flow using Stripe Checkout Sessions
- Customer portal for subscription management
Phase 3: Content Gating
- Add
visibility field to Post (public, members_only, paid_only, specific_tier)
- Content teaser/paywall component for gated posts
- Subscriber-aware content rendering in views
- Email notifications respect content visibility
Phase 4: Admin Dashboard
- Revenue dashboard (MRR, churn, growth)
- Member management (view, cancel, comp memberships)
- Tier management UI
Key Files to Modify
app/models/ — MembershipTier, Membership, extend Subscriber
app/controllers/ — MembershipsController, WebhooksController
app/views/posts/show.html.erb — Content gating UI
config/routes.rb — Membership and webhook routes
Gemfile — Add stripe gem
Key Decisions
- Stripe Checkout vs. custom payment form (recommend Checkout for PCI compliance simplicity)
- Platform cut model (recommend 0% like Ghost — differentiator for self-hosted)
Summary
Prose has no monetization features. Creators cannot charge for content, offer membership tiers, or accept payments. This is the single biggest missing feature for creator adoption — it's the primary reason creators choose Ghost (0% platform cut) or Substack (10% cut) over alternatives.
Who Has This
Why This Matters
Monetization is the #1 feature creators evaluate when choosing a platform. Without it, Prose cannot serve professional creators, journalists, or anyone looking to build a sustainable publishing business. Ghost's 0% cut model is the gold standard — Prose should match it.
Recommended Implementation
Phase 1: Stripe Integration
stripegemSiteSetting(encrypted, like AI keys — key presence enables feature)Phase 2: Membership Tiers
MembershipTiermodel (name,price_cents,interval,stripe_price_id,description,benefits)Membershipmodel linkingSubscribertoMembershipTier(status,stripe_subscription_id,current_period_end)Phase 3: Content Gating
visibilityfield toPost(public,members_only,paid_only,specific_tier)Phase 4: Admin Dashboard
Key Files to Modify
app/models/—MembershipTier,Membership, extendSubscriberapp/controllers/—MembershipsController,WebhooksControllerapp/views/posts/show.html.erb— Content gating UIconfig/routes.rb— Membership and webhook routesGemfile— AddstripegemKey Decisions