{
  "$id": "https://schema.nfh.global/Consumer/v2.0",
  "x-iri": "https://schema.nfh.global/Consumer/v2.0",
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "description": "Schema definition for Consumer in the Beckn Protocol v2.0.1",
  "title": "Consumer",
  "type": "object",
  "additionalProperties": false,
  "properties": {
    "role": {
      "description": "The functional role of the consumer in the transaction.",
      "type": "string",
      "x-jsonld": {
        "@id": "schema:roleName"
      }
    },
    "consumerAttributes": {
      "description": "Attribute Pack reference for richer identity: # consumer/identity.v1 (contact details: email, phone, address) # consumer/org-ids.v1 (LEI, GSTIN, ISIN, CUSIP…) # consumer/kyc.v1 (jurisdictional compliance fields) # consumer/preferences.v1 (delivery preferences, accessibility needs, etc.)",
      "$ref": "https://schema.nfh.global/Attributes/v2.0/schema.json"
    },
    "person": {
      "$ref": "https://schema.nfh.global/Person/v2.0/schema.json"
    },
    "organization": {
      "$ref": "https://schema.nfh.global/Organization/v2.0/schema.json"
    }
  },
  "required": [],
  "oneOf": [
    {
      "required": [
        "person"
      ]
    },
    {
      "required": [
        "organization"
      ]
    }
  ],
  "x-tags": [
    "common"
  ]
}
