# Sync Billing Plans with Users

**ID:** ORG-001
**Priority:** High
**Status:** Planned

## User Story
As an organization owner, I want billing plans to automatically sync with user seats so that I'm only charged for active users and can easily manage costs.

## Acceptance Criteria
- [ ] Adding a user to org automatically updates billing (for per-seat plans)
- [ ] Removing a user adjusts billing accordingly
- [ ] Prorated charges/credits for mid-cycle changes
- [ ] Organization dashboard shows current seat count vs plan limit
- [ ] Warning notification when approaching seat limit
- [ ] Automatic upgrade prompt when exceeding limit
- [ ] Billing history shows seat changes over time

## Technical Notes
- `BillingPlan.syncForUser()` method exists but is not implemented
- Paddle integration exists for payment processing
- Need to track user-to-organization seat assignments
- Consider grace period for temporary overages
- Webhook from Paddle for payment confirmations

## Related TODOs
- `ts/reception/classes.billingplan.ts:16` - `// TODO sync this for user`
