Files
dashcaddy-license-server/README.md
2026-04-17 17:58:50 -07:00

34 lines
1.2 KiB
Markdown

# DashCaddy License Server
Stripe-driven license automation for DashCaddy.
## Purpose
This service is the billing and license orchestration layer for DashCaddy.
It receives Stripe webhooks, maps purchases/subscriptions to license entitlements,
and exposes license validation/deactivation endpoints for DashCaddy instances.
## Planned responsibilities
- Verify Stripe webhook signatures
- Track customers, subscriptions, invoices, and purchases
- Generate or extend DashCaddy licenses
- Expose `/api/license/validate` for DashCaddy activation
- Expose `/api/license/deactivate` for DashCaddy deactivation
- Support renewals, expirations, cancellations, and grace periods
## Architecture
- **Stripe** is billing truth
- **License server database** is entitlement truth
- **DashCaddy app** remains the consumer of license validation
- Existing DashCaddy license logic should be reused, not reinvented
## Next steps
1. Extract/reuse the current DashCaddy license key generation and verification logic
2. Define DB schema for customers, licenses, activations, and Stripe mapping
3. Implement webhook ingestion and event processing
4. Implement validate/deactivate endpoints
5. Add admin tooling for manual recovery and support workflows