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:
@@ -53,7 +53,9 @@ Source evidence:
|
||||
- ActivityPub `acct:` URI suggests account but actor is richer (`activitypub-actors-followers.md`)
|
||||
- ZITADEL machine user = Service Account (`zitadel-organizations-projects.md`)
|
||||
|
||||
Canonical stance: Account is operational access record in a scope.
|
||||
Canonical stance: Account is operational access record in a scope. Billing
|
||||
records map to Commercial Record; commercial parties use Customer/Vendor roles
|
||||
and Commercial Relationship.
|
||||
|
||||
## Conflict: Subject, Principal, Actor
|
||||
|
||||
@@ -199,10 +201,28 @@ Source evidence:
|
||||
Canonical stance: Issuer = Scope authority + Trust Relationship; specify protocol
|
||||
role when mapping.
|
||||
|
||||
## Conflict: Customer Account
|
||||
|
||||
Problem: `customer account` collapses login account, B2B subscriber organization,
|
||||
Stripe billing customer, and CRM account into one product noun.
|
||||
|
||||
Source evidence:
|
||||
|
||||
- Auth0 uses Subscriber for tenant holder, not customer account (`b2b-saas-subscriber-tenancy.md`)
|
||||
- Stytch: organization is the customer (`b2b-saas-subscriber-tenancy.md`)
|
||||
- Stripe Customer is billing object with subscriptions, not login (`stripe-customer-billing.md`)
|
||||
- ZITADEL/Keycloak org-as-tenant has no Customer Account type (`zitadel`, `keycloak` notes)
|
||||
|
||||
Canonical stance: **reject Customer Account** as canonical term. Resolve by layer:
|
||||
|
||||
- login/access → Account;
|
||||
- subscribing company → Organization + Customer role + Tenant;
|
||||
- billing/CRM → Commercial Record;
|
||||
- vendor↔customer link → Commercial Relationship.
|
||||
|
||||
## Review Queue
|
||||
|
||||
- [ ] Decide Customer Account canonical concept — ZITADEL org-as-customer suggests
|
||||
Organization + Tenant link, not separate Customer Account entity.
|
||||
- [x] Customer Account — resolved; use Commercial Record + Commercial Relationship.
|
||||
- [ ] Decide Realm specialization — Keycloak evidence supports Realm as Scope
|
||||
specialization; promote in glossary if scenario review confirms.
|
||||
- [ ] Split authz `member` relation from social Membership in downstream adapters.
|
||||
|
||||
@@ -33,8 +33,14 @@ has incompatible meanings across source families.
|
||||
| machine user | Service Account | ZITADEL | Product term for non-human org identity. |
|
||||
| organization | Organization | Schema.org, Keycloak Orgs, ZITADEL, SCIM ext | Collective actor. SCIM `organization` attribute is not an Organization actor. |
|
||||
| legal entity | Legal Entity | business, compliance | Organization recognized under law; separate from tenant. |
|
||||
| customer | Customer | SaaS, vendor models | Commercial relationship role. ZITADEL org often plays customer tenant role. |
|
||||
| vendor | Vendor | SaaS, multi-vendor | Provider role in commercial relationship. |
|
||||
| customer | Customer (relationship role) | SaaS, vendor models | B2B subscriber org → Organization + Customer role + Tenant. Not Stripe Customer. |
|
||||
| vendor | Vendor (relationship role) | SaaS, multi-vendor | Provider role; not realm or tenant. |
|
||||
| subscriber | Organization + Customer role | Auth0 B2B SaaS | Convenience label only; not canonical. |
|
||||
| stripe customer | Commercial Record | Stripe, billing | Billing object; link to Tenant via metadata. Not Account. |
|
||||
| crm account | Commercial Record | Salesforce, CRM | Commercial record; not login Account. |
|
||||
| customer account | Resolve by layer | billing, IAM, CRM | Not canonical — see TerminologyConflictMap. |
|
||||
| commercial record | Commercial Record | Stripe, CRM, billing | Record layer; payment/subscription/commerce state. |
|
||||
| commercial relationship | Commercial Relationship | vendor/customer SaaS | Vendor-to-customer typed relationship. |
|
||||
| tenant | Tenant | ZITADEL org, SaaS, Keycloak (informal) | Administrative/isolation scope. Keycloak realm sometimes called tenant. |
|
||||
| realm | Realm | Keycloak | Hard identity/admin namespace. Candidate Scope specialization. |
|
||||
| scope | Scope | OIDC, Cerbos, OpenFGA store, proposal | Boundary for meaning, policy, or correlation. |
|
||||
@@ -106,6 +112,7 @@ Terms above are grounded in backfilled notes under:
|
||||
- `research/social-community-graphs/` (4 notes)
|
||||
- `research/verifiable-claims/` (3 notes)
|
||||
- `research/entity-resolution-privacy/` (3 notes)
|
||||
- `research/commercial-subscription/` (2 notes)
|
||||
|
||||
## Remaining Backfill Needs
|
||||
|
||||
|
||||
Reference in New Issue
Block a user