{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://finance.entelekron.org/schemas/entelepay-settlement-control-profile.schema.json",
  "title": "EntelePAY TVKUSD settlement control profile",
  "type": "object",
  "additionalProperties": false,
  "required": ["$schema", "schemaVersion", "controlPlaneId", "canonicalAssetId", "profileId", "status", "effectiveAt", "acceptedEnvironments", "productionIntentEndpoint", "productionWebhookEndpoint", "approvedProviders", "approvedMerchantProfiles", "activeSettlementInstructionCount", "scopeBoundary", "requiredBindings", "stateMachine", "integrity", "exceptions", "authority", "notice"],
  "properties": {
    "$schema": {"const": "https://finance.entelekron.org/schemas/entelepay-settlement-control-profile.schema.json"},
    "schemaVersion": {"type": "string", "pattern": "^[0-9]+\\.[0-9]+\\.[0-9]+$"},
    "controlPlaneId": {"const": "tvk-group:entelekron-financial-infrastructure"},
    "canonicalAssetId": {"const": "tvk-group:tvkusd"},
    "profileId": {"type": "string", "minLength": 1},
    "status": {"const": "tvkusd-settlement-prelaunch-locked"},
    "effectiveAt": {"type": "string", "format": "date-time"},
    "acceptedEnvironments": {"type": "array", "maxItems": 0},
    "productionIntentEndpoint": {"type": "null"},
    "productionWebhookEndpoint": {"type": "null"},
    "approvedProviders": {"type": "array", "maxItems": 0},
    "approvedMerchantProfiles": {"type": "array", "maxItems": 0},
    "activeSettlementInstructionCount": {"const": 0},
    "scopeBoundary": {"$ref": "#/$defs/booleanControls"},
    "requiredBindings": {"type": "array", "minItems": 19, "uniqueItems": true, "items": {"type": "string"}},
    "stateMachine": {
      "type": "object", "additionalProperties": false,
      "required": ["currentOperationalState", "definedStates", "terminalSuccessState", "exceptionStates"],
      "properties": {
        "currentOperationalState": {"const": "disabled"},
        "definedStates": {"type": "array", "minItems": 12, "uniqueItems": true, "items": {"type": "string"}},
        "terminalSuccessState": {"const": "reconciled"},
        "exceptionStates": {"type": "array", "minItems": 4, "uniqueItems": true, "items": {"type": "string"}}
      }
    },
    "integrity": {"$ref": "#/$defs/booleanControls"},
    "exceptions": {"$ref": "#/$defs/booleanControls"},
    "authority": {"$ref": "#/$defs/falseControls"},
    "notice": {"type": "string", "minLength": 1}
  },
  "$defs": {
    "booleanControls": {"type": "object", "minProperties": 1, "additionalProperties": {"type": "boolean"}},
    "falseControls": {"type": "object", "minProperties": 1, "additionalProperties": {"const": false}}
  }
}
