Market pillar · v0.16.0

customer Customer

Customer master record.

$id · https://corpospec.com/schemas/v0.16.0/customer.schema.json

Fields

Field Type Required Description
account_owner PathRef yes Account-owner (PathRef to people/team/...).
billing_address PostalAddress yes Billing address.
display_name string yes Legal name (B2B) OR pseudonymised reference (B2C).
id PathRef yes Path-based cross-reference relative to .corpospec/ root. Pattern: `^[a-z0-9_-]+(/[a-z0-9_.-]+)+$`
jurisdiction IsoCountry yes ISO 3166-1 alpha-2 country code.
kind CustomerKind yes Customer kind.
mrr_amount number yes
mrr_currency IsoCurrency yes Monthly recurring revenue (in plan currency).
onboarded_at IsoDate yes ISO 8601 date (YYYY-MM-DD).
pii_class PiiClass yes PII class for this record (B2C usually Personal; B2B Internal).
status CustomerStatus yes Lifecycle.
tier CustomerTier yes Tier (segmentation / pricing band).
acv_amount number? Annual contract value (None for month-to-month).
churned_at IsoDate?
customer_dpa_ref PathRef? PathRef to the DPA we entered into as processor for this customer's data.
legal_name string? Legal name (always present for B2B; None for B2C to honour data minimisation).
lei Lei? LEI per ISO 17442 (B2B).
master_subscription_agreement PathRef? PathRef to active master subscription agreement.
pricing_plan_ref PathRef? Subscription / pricing plan reference.
success_owner PathRef? Customer-success owner (None ⇒ same as account_owner).
tax_address PostalAddress? Tax address (often equal to billing).
tax_ids TaxIdentifier[]

Definitions

Shared types referenced within this schema.

CustomerKind
Customer kind.
CustomerStatus
Lifecycle.
CustomerTier
Tier (segmentation / pricing band).
IsoCountry
ISO 3166-1 alpha-2 country code.
pattern: ^[A-Z]{2}$
IsoCurrency
ISO 4217 currency code.
pattern: ^[A-Z]{3}$
IsoDate
ISO 8601 date (YYYY-MM-DD).
type: string
Lei
ISO 17442 Legal Entity Identifier (20-character alphanumeric).
pattern: ^[A-Z0-9]{18}[0-9]{2}$
PathRef
Path-based cross-reference relative to .corpospec/ root. Pattern: `^[a-z0-9_-]+(/[a-z0-9_.-]+)+$`
pattern: ^[a-z0-9_-]+(/[a-z0-9_.-]+)+$
PiiClass
Personal-data classification on every record carrying personal data, per BDR 0070 / BDR 0069 / BDR 0078. Used by `corpospec-report` to gate rendering and by the privacy pillar's RoPA records to determine safeguards.
PostalAddress
Physical address aligned with schema.org PostalAddress.
type: object
TaxIdentifier
Billing identifier (tax / VAT).
type: object

Reference in your YAML

# yaml-language-server: $schema=https://corpospec.com/schemas/v0.16.0/customer.schema.json