feat: Stripe integration — checkout + webhook + subscription lifecycle

- src/lib/stripe/index.ts: Stripe client (checkout session + webhook event)
- POST /api/aos/stripe/checkout: create subscription checkout for a license
- POST /api/aos/stripe/webhook: handle events:
  - checkout.session.completed → link Stripe customer/subscription to license
  - invoice.paid → activate license (remove trial)
  - customer.subscription.deleted → cancel license + schedule instance deletion
  - invoice.payment_failed → suspend license (dunning)
- Middleware: stripe/webhook is public (Stripe calls it without auth)
- stripe package installed (v23)
This commit is contained in:
Z User committed 2026-10-28 22:48:33 +00:00
1 parent 3f90c33c5f
commit 7a13dad693
6 files changed
+365

No files matched your search

+1
View File
@@ -82,6 +82,7 @@
"recharts": "^2.15.4",
"sharp": "^0.34.3",
"sonner": "^2.0.6",
"stripe": "^23.0.1",
"tailwind-merge": "^3.7.0",
"tailwindcss-animate": "^1.0.7",
"uuid": "^11.1.0",