Seed Data and Pricing
Catalog seed records and pricing math rules for cost-splitting.
Seed catalog entries
prisma/seed.ts should populate realistic starter services.
| Service | Monthly price (cents) | Max users | Category |
|---|---|---|---|
| Spotify Family | 1699 | 6 | Music |
| YouTube Premium Family | 2299 | 6 | Video |
| Apple One Family | 2295 | 6 | Bundle |
| iCloud+ 2TB | 999 | 6 | Storage |
| Microsoft 365 Family | 999 | 6 | Productivity |
| ChatGPT Team | 2500 per user | 10 | AI |
| Apple Music Family | 1699 | 6 | Music |
| Nintendo Switch Online Family | 292 (monthly from annual plan) | 8 | Gaming |
Pricing rules
- Persist all money as integer cents.
- Never use floating-point math for billing.
- Compute member share with rounded-up split:
Math.ceil(monthlyPriceCents / memberCount)
Why round up
Rounding up prevents under-collection due to remainder cents during equal splits.
Operational checks
- Validate seed entries are
isActive: trueonly when intended for catalog visibility. - Keep provider + plan naming stable to avoid dashboard/report drift.