generated from coulomb/repo-seed
Resolve Customer Account question; add commercial subscription research
Record B2B SaaS subscriber tenancy and Stripe billing source notes. Resolve the Customer Account open question: reject it as canonical, add Commercial Record and Commercial Relationship to the Record and relationship layers, and document Subscriber as a convenience term only.
This commit is contained in:
@@ -20,15 +20,35 @@ explicit Organization + Tenant + Realm mapping in downstream adapters.
|
||||
|
||||
### Customer Account as canonical concept
|
||||
|
||||
**Status:** Open — leaning toward Organization + Customer role.
|
||||
**Status:** Resolved — do not add Customer Account; add Commercial Record instead.
|
||||
|
||||
ZITADEL and Keycloak model customer-like boundaries as Organization with tenant
|
||||
semantics, not a separate account type. No corpus source defines Customer
|
||||
Account as distinct from Organization actor + Customer relationship role +
|
||||
Tenant scope.
|
||||
**Decision:** Customer Account is not a canonical concept. The term overloads
|
||||
login Account, billing customer (Stripe), CRM account (Salesforce), and B2B
|
||||
subscriber organization (Auth0/Stytch).
|
||||
|
||||
**Decision needed:** Whether billing/commercial account records warrant a
|
||||
downstream-only model or a canonical Customer Account specialization.
|
||||
**Canonical pattern:**
|
||||
|
||||
| Source label | Canonical mapping |
|
||||
| --- | --- |
|
||||
| B2B subscriber / customer org (Auth0, Stytch, ZITADEL) | Organization actor + Customer Relationship role + Tenant Scope |
|
||||
| Login user / member | Account + Membership Relationship |
|
||||
| Stripe Customer / CRM Account | Commercial Record (Record layer) |
|
||||
| Individual subscriber (no company) | Natural Person + Tenant Scope + Commercial Record |
|
||||
|
||||
**New concepts added (not participation roots):**
|
||||
|
||||
- **Commercial Record** — Record layer entity for billing/commerce system records.
|
||||
- **Commercial Relationship** — typed relationship linking vendor and customer
|
||||
actors, optionally referencing a Commercial Record.
|
||||
|
||||
**Convenience term only:** Subscriber (map like User — resolve before use).
|
||||
|
||||
**Citations:**
|
||||
|
||||
- `research/commercial-subscription/b2b-saas-subscriber-tenancy.md`
|
||||
- `research/commercial-subscription/stripe-customer-billing.md`
|
||||
- `research/identity-provisioning/keycloak-organizations.md`
|
||||
- `research/identity-provisioning/zitadel-organizations-projects.md`
|
||||
|
||||
### Team modeling
|
||||
|
||||
|
||||
Reference in New Issue
Block a user