stripe-scaffold

Generate the code for a Stripe integration.

Safety Notice

This listing is imported from skills.sh public index metadata. Review upstream SKILL.md and repository scripts before running.

Copy this and send it to your AI assistant to learn

Install skill "stripe-scaffold" with this command: npx skills add phrazzld/claude-config/phrazzld-claude-config-stripe-scaffold

Stripe Scaffold

Generate the code for a Stripe integration.

Branching

Assumes you start on master /main . Before generating code:

git checkout -b feat/stripe-integration-$(date +%Y%m%d)

Objective

Turn a design document into working code. Delegate implementation to Codex aggressively — that's what it's for.

Process

  1. Review the Design

Read the design document from stripe-design . Understand:

  • Checkout flow

  • Webhook events

  • State management approach

  • Access control logic

  1. Research Current Implementation

Before generating code:

  • Use Gemini to find current Stripe SDK usage patterns

  • Check the Stripe docs for your specific use case

  • Look at how similar apps implement this

Code patterns change. Don't rely on cached knowledge.

  1. Delegate to Codex

For each component, delegate to Codex with clear specs:

codex exec --full-auto "Implement Stripe webhook handler for [events].
Follow pattern in [reference]. Use Convex mutations for state updates.
Verify signature first. Handle idempotency.
Run pnpm typecheck after."
--output-last-message /tmp/codex-webhook.md 2>/dev/null

Then: git diff --stat && pnpm typecheck && pnpm test

  1. Components to Generate

Typical Next.js + Convex stack:

Backend:

  • src/lib/stripe.ts — Stripe client initialization

  • src/app/api/stripe/checkout/route.ts — Checkout session creation

  • src/app/api/stripe/webhook/route.ts — Webhook receiver (signature verification)

  • convex/stripe.ts — Webhook event processing

  • convex/subscriptions.ts — Subscription state management

  • convex/billing.ts — Billing queries and portal session creation

  • convex/schema.ts updates — Subscription fields on users

  • .env.example updates — Document required variables

Subscription Management UX (Required): Reference stripe-subscription-ux for full requirements.

  • components/billing/SubscriptionCard.tsx — Current plan overview

  • components/billing/BillingCycleInfo.tsx — Next billing date, amount

  • components/billing/PaymentMethodDisplay.tsx — Card on file

  • components/billing/BillingHistory.tsx — Past invoices

  • components/billing/ManageSubscriptionButton.tsx — Opens Stripe Portal

  • components/billing/TrialBanner.tsx — Trial status/countdown

  • Settings page section for subscription management

This UX is non-negotiable. No Stripe integration is complete without it.

  1. Don't Forget
  • Trial handling: pass trial_end when user upgrades mid-trial

  • Access control: check subscription status before gated features

  • Error handling: webhook should return 200 even on processing errors (to prevent Stripe retries)

  • Signature verification: MUST be first thing in webhook handler

Quality Gates

After generation:

  • pnpm typecheck — No type errors

  • pnpm lint — No lint errors

  • pnpm test — Tests pass (if they exist)

  • Manual review of generated code

Adaptation

Default stack is Next.js + Convex. If different:

  • Express/Fastify: Different route setup, same Stripe logic

  • Supabase/Postgres: Different ORM, same state management concepts

  • No Convex: Webhook processing happens in the API route directly

The Stripe parts are the same; the framework parts adapt.

Source Transparency

This detail page is rendered from real SKILL.md content. Trust labels are metadata-based hints, not a safety guarantee.

Related Skills

Related by shared tags or category signals.

Coding

pencil-to-code

No summary provided by upstream source.

Repository SourceNeeds Review
Coding

browser-extension-dev

No summary provided by upstream source.

Repository SourceNeeds Review
Coding

python-standards

No summary provided by upstream source.

Repository SourceNeeds Review
Coding

convex-development

No summary provided by upstream source.

Repository SourceNeeds Review