feat(packages): implement package-based business model
This commit is contained in:
@@ -1,7 +1,7 @@
|
||||
# 08 — Billing (MVP: Event Credits)
|
||||
# 08 — Billing (Packages)
|
||||
|
||||
- Model: one-off purchases that grant event credits; no subscriptions in MVP.
|
||||
- Tables: `event_purchases`, `event_credits_ledger` (see 04-data-model-migrations.md).
|
||||
- Providers: Stripe (server-side checkout + webhooks); store receipts deferred.
|
||||
- Idempotency: purchase intents keyed; ledger writes idempotent; retries safe.
|
||||
- Limits: enforce `event_credits_balance >= 1` to create an event; ledger decrements on event creation.
|
||||
- Model: one-off purchases of event packages (Endkunden) or annual subscriptions (Reseller); see 15-packages-design.md for details.
|
||||
- Tables: `packages`, `event_packages`, `tenant_packages`, `package_purchases` (see 04-data-model-migrations.md and 15-packages-design.md).
|
||||
- Providers: Stripe (server-side checkout + webhooks for Einmalkäufe/Subscriptions); store receipts.
|
||||
- Idempotency: purchase intents keyed; purchase writes idempotent; retries safe.
|
||||
- Limits: Enforce package selection at event creation; check event-specific limits (e.g. max_photos) during usage; tenant limits for reseller event count.
|
||||
|
||||
Reference in New Issue
Block a user