Chargeback Brief is a lean micro-SaaS MVP for small Shopify merchants dealing with recurring disputes.
- Public landing page with pain / solution / pricing / FAQ / CTA
- App page with a dispute intake form
- Local rules-based chargeback brief generation
- Coverage for these dispute types:
product_not_receivedfraudulentsubscription_canceledduplicate_charge
- Output sections for:
- merchant summary
- recommended evidence checklist
- missing items
- rebuttal draft
- timeline
- Demo prefill button for a sample Shopify merchant case
- Placeholder checkout CTA driven by
NEXT_PUBLIC_CHECKOUT_URL
- Landing page and pricing copy
- Intake UX
- Local generation logic in
domain/chargeback.ts - Rules engine for dispute-type-specific evidence prompts
- Graceful handling when checkout URL is missing
- Real authentication
- Saved dispute history
- PDF export
- Shopify API import
- Payment processing beyond linking out to a configured checkout URL
- Database persistence
- Manual concierge workflow backend
- Next.js 16
- React 19
- TypeScript
- Tailwind CSS v4
npm install
npm run devOpen http://localhost:3000.
Create .env.local if you want the paid CTA enabled:
NEXT_PUBLIC_CHECKOUT_URL=https://buy.stripe.com/your-linkIf NEXT_PUBLIC_CHECKOUT_URL is not set, the checkout button stays visible but disabled with a clear message.
npm run build
npm start- Push this folder to a Git repo.
- Import the repo into Vercel.
- Set
NEXT_PUBLIC_CHECKOUT_URLin project environment variables if you have a payment link. - Deploy.
No deploy success is claimed here. This repo was only built and verified locally.
app/— public landing page and app routecomponents/— UI layer for the intake + brief experiencedomain/— dispute model and local rules-based brief generation
After scaffolding, run:
npm install
npm run buildRecord the exact output in your handoff / task report. Do not claim deploy success unless you actually deploy and verify it.