Print-on-demand spirit wear stores for teams

StackNext.jsPrintful APIStripe ConnectPostgres

Search demandMediumA steady stream of people are searching.
CompetitionHighMany established competitors are already here.
Customer valueMediumCustomers have meaningful budget for this.
How scoring works

The idea

Spirit wear season still runs on paper order forms in backpacks, a size spreadsheet, one parent fronting the screen-printer minimum, and Venmo reconciliation for weeks. Print-on-demand killed inventory risk years ago, but nobody wrapped it in the packaging a booster club needs. Brand On Demand’s $183k MRR proves that owning the storefront relationship on top of POD fulfillment compounds into real revenue — pointed at influencers. Youth teams, school clubs, and PTAs are the same mechanics with a distribution channel creator platforms will never court.

The wedge is treasurer-grade money handling: honest fundraiser markups, automatic Stripe Connect splits to the club account, and a season-end CSV a volunteer treasurer can drop into the books. Free-for-teams pricing removes the only objection a volunteer organizer has.

Who pays

Nobody pays a subscription — the platform takes 10-15 percent margin per order, with the club’s markup passing through via Stripe Connect. Buyers are parents spending $25-45 per item, several items per family per season. Distribution is structurally viral: every store link lands in a 40-family group chat, and one booster parent who runs stores for two kids’ teams evangelizes the whole league. Fall sports season is the acquisition window.

MVP scope

  • Store builder with logo upload and curated Printful catalog
  • Server-generated mockups so stores look real at launch
  • Checkout with player name, number, and size collection
  • Stripe Connect auto-split: fulfillment cost, platform margin, club payout
  • Organizer dashboard with size rollups and treasurer CSV
  • Skip for v1: embroidery and custom cut-sew, bulk screen-print fallback, team roster imports, multi-store league portals, international shipping
// Build prompt — paste into Cursor / Claude Code / Lovable / Bolt
Build SpiritShop, a print-on-demand team store builder.

Core flow: a team organizer (booster parent, coach, PTA member) creates
a store, uploads the team logo, picks 5-10 products from a curated
Printful catalog (tees, hoodies, caps, blankets), and sets a fundraising
markup per item — the store shows base price plus markup with the
fundraiser share displayed honestly. The organizer shares one link in
the team group chat. Parents order and pay via Stripe Checkout; orders
go straight to Printful for fulfillment and ship to each buyer, so the
organizer never touches inventory or a folding table. Stripe Connect
splits every charge automatically: fulfillment cost to the platform,
markup to the club's connected account. The organizer dashboard shows
orders by player name and size (collected at checkout), total raised,
and a treasurer report CSV per season.

Stack: Next.js App Router with TypeScript, Printful API for catalog,
mockups, and fulfillment, Stripe Connect for split payouts, Postgres
via Prisma.

Pages: store builder wizard, public team store, checkout with player
name and number personalization, organizer dashboard, treasurer report.

Non-obvious details: generate product mockups server-side via the
Printful mockup API at store creation so the store looks real
immediately; support store close dates for seasonal windows, with an
auto-reopen link for next season baked into the treasurer report.

Pricing: free for teams; platform keeps 12 percent margin on each
order after fulfillment, fundraiser markup passes through untouched.

// More Micro-SaaS ideas