Skip to main content

Pastor starts SermonWise — signup, purchase, and first sermon

Persona

A solo pastor at a 75–200 member church, mid-week, stuck on Sunday's sermon. Found SermonWise via Google or outreach email. Attracted by the $19.95/mo price and 17 theological traditions. Moderate tech comfort. Wants to start generating sermon outlines immediately.

Note on plan key: The canonical plan key written to user_subscriptions.plan is sermon_pro (or sermon_pro_annual). The knowledge YAML uses sermonwise_pro — this mismatch is a known drift (readiness report 2026-04-22); the code is authoritative.

Entry points

  • Direct search: "AI sermon preparation" → sermonwise.ai
  • Outreach email CTA: "Try SermonWise AI — 15 sermon outlines per month" → sermonwise.ai/pricing
  • Pricing page referral
  • ChurchWiseAI homepage cross-promotionsermonwise.ai

Click-through flow

Steps

  1. Lands on SermonWise pricing pagesermonwise.ai/pricing (→ /sermons/pricing). Two cards: Free ($0, 2 outlines/month) and Pro ($19.95/mo, 15/month, "Most Popular"). Annual option ($199.50/yr). FAQ section. CTAs append ?plan=sermon_free or ?plan=sermon_pro.

  2. Signup form (if free tier entry)/sermons/signup: Google OAuth button, email + password, 17-tradition dropdown, newsletter opt-in, Turnstile captcha, "Create Account" button. Supabase Auth creates user. tradition stored in user_metadata. Email verification sent.

  3. Email verification and auth callback — Click magic link → sermonwise.ai/auth/callback. Supabase writes theological_lens_id to profiles. User redirected to /sermons/app. Welcome email fires for users with appSource='sermon_starter'.

  4. Free tier dashboard (optional trial)/sermons/app: CrossPromoBanner (dismissible): "Your AI ministry team goes beyond sermons. Explore ChurchWiseAI →". Stat cards: Time Saved, Sermons, Materials, Traditions (0/17), Usage Remaining (2/2, green). "+ New Sermon" button.

  5. Try free generation (optional)/sermons/app/new: 4-step wizard. Step 1: Scripture + optional theme, lectionary suggestions. Steps 2–4 collect tradition, preaching method, style/audience. "Generate Sermon Outline" button on Step 4. Free tier: enabled if usage remaining > 0.

  6. Generation on free tierPOST /api/sermons/generate. Uses Haiku 4.5 (Anthropic API — the 2026-04-20 carve-out for per-prospect provisioning applies here; Vercel serverless can't ship the claude binary). Usage decrements from 2 to 1. Outline saved to sermon_outlines with free tier marker.

  7. Upgrade decision and Pro checkout — Dashboard shows "Upgrade to Pro" CTA. Pastor clicks → Stripe Checkout for sermon_pro price.

  8. Stripe Checkout for SermonWise Pro — Product "SermonWise Pro $19.95/mo" (or annual). Email pre-filled from auth. No trial. On success, redirects to /sermons/app?upgraded=true.

  9. Post-checkout confirmation and subscription activation — Green banner: "Welcome to SermonWise Pro! You now have 15 sermon outlines per month." Dashboard usage badge: 15/15. Stripe webhook (checkout.session.completed) → inbox → cron within ~60s. processStripeEvent() updates user_subscriptions with plan='sermon_pro' (or sermon_pro_annual).

  10. Welcome email and ready to generate — Email from hello@churchwiseai.com (Resend): "You now have 15 sermon outlines per month. Your first sermon is ready — [dashboard link]." Dedup via lifecycle_emails_sent prevents duplicate sends.

Acceptance spec

Canonical: knowledge/acceptance/sermonwise-pro.md (30 touchpoints, COMPLETE).

Pro tier features: 15 outlines/month, 17 traditions, Haiku 4.5 with deeper output, RAG-powered illustrations (300K+ resources), copy/export to Word, derivatives (Small Group Guide, Children's Sermon, Social Media Posts).

Checkout gate fix (2026-04-24): PR #45 resolved two issues: (1) CheckoutGate misfiring, blocking Pro users from app access after payment; (2) welcome email not sent on upgrade. Both now resolved via inbox pattern + cron retry.

Success criteria

  1. Confirmation email arrives within minutes of payment.
  2. Dashboard shows Pro tier active (15/15 usage badge).
  3. Can generate outlines with premium AI model immediately.
  4. All past free outlines remain accessible.
  5. Tradition selected at signup is pre-selected in the wizard.

Known failure modes

  • Tradition not persisting through OAuth signup. Google OAuth users skip tradition selection and are redirected to /sermons/app/onboarding to select. Email form users skip onboarding if tradition was captured (fixed 2026-04-03).

  • Free tier usage counter stale. Usage tracked in session memory; refreshed on page load. user_subscriptions is source of truth; recommend a page refresh if count looks wrong.

  • Free → Pro payment decline. No automatic retry — user must update card manually and retry.