CRM Domain

This page presents the ERD for each AggregateRoot, grouping related entities into domain boundaries. Each AggregateRoot enforces business rules, processes commands synchronously, and defines consistency borders within a single transactional scope. An indicative json schema is created to how the export of a aggregate root will approximitly look like

Brand

Aggregate Root: Brand

Represents a brand entity in the CRM system. Brands are used to categorize and organize products and services.

erDiagram
    "CRM.Brands" {
        uniqueidentifier Id PK
        nvarchar Name 
        uniqueidentifier Tenant 
        datetimeoffset EntityCreatedDateTime 
        datetimeoffset EntityUpdatedDateTime 
        uniqueidentifier EntityCreatedAuthToken 
        uniqueidentifier EntityUpdatedAuthToken 
        bit Concealed 
    }

    "CRM.ProductComponentModelPricingRequest_Brand" }o--|| "CRM.Brands" : "BrandId"
    "CRM.PropositionModelPricingRequest_Brand" }o--|| "CRM.Brands" : "BrandId"
erDiagram
    "CRM.Brands" {
        uniqueidentifier Id PK
        nvarchar Name 
        uniqueidentifier Tenant 
        datetimeoffset EntityCreatedDateTime 
        datetimeoffset EntityUpdatedDateTime 
        uniqueidentifier EntityCreatedAuthToken 
        uniqueidentifier EntityUpdatedAuthToken 
        bit Concealed 
    }

    "CRM.ProductComponentModelPricingRequest_Brand" }o--|| "CRM.Brands" : "BrandId"
    "CRM.PropositionModelPricingRequest_Brand" }o--|| "CRM.Brands" : "BrandId"
{
    "definitions":  {
                        "CRM.Brands":  {
                                           "properties":  {
                                                              "Concealed":  {
                                                                                "type":  "boolean",
                                                                                "description":  "bit"
                                                                            },
                                                              "EntityUpdatedAuthToken":  {
                                                                                             "format":  "uuid",
                                                                                             "description":  "uniqueidentifier",
                                                                                             "type":  "string"
                                                                                         },
                                                              "Id":  {
                                                                         "format":  "uuid",
                                                                         "description":  "uniqueidentifier",
                                                                         "type":  "string"
                                                                     },
                                                              "EntityCreatedDateTime":  {
                                                                                            "format":  "date-time",
                                                                                            "description":  "datetimeoffset",
                                                                                            "type":  "string"
                                                                                        },
                                                              "Name":  {
                                                                           "type":  "string",
                                                                           "description":  "nvarchar"
                                                                       },
                                                              "EntityUpdatedDateTime":  {
                                                                                            "format":  "date-time",
                                                                                            "description":  "datetimeoffset",
                                                                                            "type":  "string"
                                                                                        },
                                                              "EntityCreatedAuthToken":  {
                                                                                             "format":  "uuid",
                                                                                             "description":  "uniqueidentifier",
                                                                                             "type":  "string"
                                                                                         },
                                                              "Tenant":  {
                                                                             "format":  "uuid",
                                                                             "description":  "uniqueidentifier",
                                                                             "type":  "string"
                                                                         }
                                                          },
                                           "type":  "object"
                                       }
                    },
    "title":  "CRM.Brand",
    "$comment":  "Generated from Mermaid ERD with property-level descriptions",
    "$schema":  "http://json-schema.org/draft-07/schema#",
    "type":  "object"
}

Collective

Aggregate Root: Collective

Represents a collective group of customers or entities that share common characteristics or relationships.

erDiagram
    "CRM.Collectives" {
        uniqueidentifier Id PK
        nvarchar Name 
        uniqueidentifier Tenant 
        datetimeoffset EntityCreatedDateTime 
        datetimeoffset EntityUpdatedDateTime 
        uniqueidentifier EntityCreatedAuthToken 
        uniqueidentifier EntityUpdatedAuthToken 
        bit Concealed 
    }

    "CRM.Customers" }o--|| "CRM.Collectives" : "CollectiveId"
erDiagram
    "CRM.Collectives" {
        uniqueidentifier Id PK
        nvarchar Name 
        uniqueidentifier Tenant 
        datetimeoffset EntityCreatedDateTime 
        datetimeoffset EntityUpdatedDateTime 
        uniqueidentifier EntityCreatedAuthToken 
        uniqueidentifier EntityUpdatedAuthToken 
        bit Concealed 
    }

    "CRM.Customers" }o--|| "CRM.Collectives" : "CollectiveId"
{
    "definitions":  {
                        "CRM.Collectives":  {
                                                "properties":  {
                                                                   "Concealed":  {
                                                                                     "type":  "boolean",
                                                                                     "description":  "bit"
                                                                                 },
                                                                   "EntityUpdatedAuthToken":  {
                                                                                                  "format":  "uuid",
                                                                                                  "description":  "uniqueidentifier",
                                                                                                  "type":  "string"
                                                                                              },
                                                                   "Id":  {
                                                                              "format":  "uuid",
                                                                              "description":  "uniqueidentifier",
                                                                              "type":  "string"
                                                                          },
                                                                   "EntityCreatedDateTime":  {
                                                                                                 "format":  "date-time",
                                                                                                 "description":  "datetimeoffset",
                                                                                                 "type":  "string"
                                                                                             },
                                                                   "Name":  {
                                                                                "type":  "string",
                                                                                "description":  "nvarchar"
                                                                            },
                                                                   "EntityUpdatedDateTime":  {
                                                                                                 "format":  "date-time",
                                                                                                 "description":  "datetimeoffset",
                                                                                                 "type":  "string"
                                                                                             },
                                                                   "EntityCreatedAuthToken":  {
                                                                                                  "format":  "uuid",
                                                                                                  "description":  "uniqueidentifier",
                                                                                                  "type":  "string"
                                                                                              },
                                                                   "Tenant":  {
                                                                                  "format":  "uuid",
                                                                                  "description":  "uniqueidentifier",
                                                                                  "type":  "string"
                                                                              }
                                                               },
                                                "type":  "object"
                                            }
                    },
    "title":  "CRM.Collective",
    "$comment":  "Generated from Mermaid ERD with property-level descriptions",
    "$schema":  "http://json-schema.org/draft-07/schema#",
    "type":  "object"
}

Contact

Aggregate Root: Contact

Represents contact information for customers and other entities, including email addresses and telephone numbers.

erDiagram
    "CRM.Contacts" {
        uniqueidentifier Id PK
        nvarchar FirstName 
        nvarchar LastName 
        int Gender 
        nvarchar Initials 
        nvarchar JobTitle 
        nvarchar Note 
        uniqueidentifier Tenant 
        datetimeoffset EntityCreatedDateTime 
        datetimeoffset EntityUpdatedDateTime 
        uniqueidentifier EntityCreatedAuthToken 
        uniqueidentifier EntityUpdatedAuthToken 
        nvarchar Organization 
        nvarchar LastNamePrefix 
        bit Concealed 
    }

    "CRM.Customer_Contact" {
        uniqueidentifier Id PK
        uniqueidentifier CustomerId FK
        uniqueidentifier ContactId FK
        bit IsPrimary 
        uniqueidentifier Tenant 
        datetimeoffset EntityCreatedDateTime 
        datetimeoffset EntityUpdatedDateTime 
        uniqueidentifier EntityCreatedAuthToken 
        uniqueidentifier EntityUpdatedAuthToken 
        bit Concealed 
        bit IsAuthorizedToSign 
    }

    "CRM.EmailAddresses" {
        uniqueidentifier Id PK
        uniqueidentifier ContactId FK
        nvarchar Email 
        int EmailType 
        bit IsPrimary 
        uniqueidentifier Tenant 
        datetimeoffset EntityCreatedDateTime 
        datetimeoffset EntityUpdatedDateTime 
        uniqueidentifier EntityCreatedAuthToken 
        uniqueidentifier EntityUpdatedAuthToken 
        bit Concealed 
    }

    "CRM.TelephoneNumbers" {
        uniqueidentifier Id PK
        uniqueidentifier ContactId FK
        nvarchar PhoneNumber 
        int TelephoneNumberType 
        bit IsPrimary 
        uniqueidentifier Tenant 
        datetimeoffset EntityCreatedDateTime 
        datetimeoffset EntityUpdatedDateTime 
        uniqueidentifier EntityCreatedAuthToken 
        uniqueidentifier EntityUpdatedAuthToken 
        bit Concealed 
    }

    "CRM.TelephoneNumbers" }o--|| "CRM.Contacts" : "ContactId"
    "CRM.ContractDocuments" }o--|| "CRM.Contacts" : "AddresseeId"
    "CRM.Customer_Contact" }o--|| "CRM.Contacts" : "ContactId"
    "CRM.EmailAddresses" }o--|| "CRM.Contacts" : "ContactId"
    "CRM.Customer_Contact" }o--|| "CRM.Customers" : "CustomerId"
erDiagram
    "CRM.Contacts" {
        uniqueidentifier Id PK
        nvarchar FirstName 
        nvarchar LastName 
        int Gender 
        nvarchar Initials 
        nvarchar JobTitle 
        nvarchar Note 
        uniqueidentifier Tenant 
        datetimeoffset EntityCreatedDateTime 
        datetimeoffset EntityUpdatedDateTime 
        uniqueidentifier EntityCreatedAuthToken 
        uniqueidentifier EntityUpdatedAuthToken 
        nvarchar Organization 
        nvarchar LastNamePrefix 
        bit Concealed 
    }

    "CRM.Customer_Contact" {
        uniqueidentifier Id PK
        uniqueidentifier CustomerId FK
        uniqueidentifier ContactId FK
        bit IsPrimary 
        uniqueidentifier Tenant 
        datetimeoffset EntityCreatedDateTime 
        datetimeoffset EntityUpdatedDateTime 
        uniqueidentifier EntityCreatedAuthToken 
        uniqueidentifier EntityUpdatedAuthToken 
        bit Concealed 
        bit IsAuthorizedToSign 
    }

    "CRM.EmailAddresses" {
        uniqueidentifier Id PK
        uniqueidentifier ContactId FK
        nvarchar Email 
        int EmailType 
        bit IsPrimary 
        uniqueidentifier Tenant 
        datetimeoffset EntityCreatedDateTime 
        datetimeoffset EntityUpdatedDateTime 
        uniqueidentifier EntityCreatedAuthToken 
        uniqueidentifier EntityUpdatedAuthToken 
        bit Concealed 
    }

    "CRM.TelephoneNumbers" {
        uniqueidentifier Id PK
        uniqueidentifier ContactId FK
        nvarchar PhoneNumber 
        int TelephoneNumberType 
        bit IsPrimary 
        uniqueidentifier Tenant 
        datetimeoffset EntityCreatedDateTime 
        datetimeoffset EntityUpdatedDateTime 
        uniqueidentifier EntityCreatedAuthToken 
        uniqueidentifier EntityUpdatedAuthToken 
        bit Concealed 
    }

    "CRM.TelephoneNumbers" }o--|| "CRM.Contacts" : "ContactId"
    "CRM.ContractDocuments" }o--|| "CRM.Contacts" : "AddresseeId"
    "CRM.Customer_Contact" }o--|| "CRM.Contacts" : "ContactId"
    "CRM.EmailAddresses" }o--|| "CRM.Contacts" : "ContactId"
    "CRM.Customer_Contact" }o--|| "CRM.Customers" : "CustomerId"
{
    "definitions":  {
                        "CRM.TelephoneNumbers":  {
                                                     "properties":  {
                                                                        "PhoneNumber":  {
                                                                                            "type":  "string",
                                                                                            "description":  "nvarchar"
                                                                                        },
                                                                        "EntityUpdatedAuthToken":  {
                                                                                                       "format":  "uuid",
                                                                                                       "description":  "uniqueidentifier",
                                                                                                       "type":  "string"
                                                                                                   },
                                                                        "Id":  {
                                                                                   "format":  "uuid",
                                                                                   "description":  "uniqueidentifier",
                                                                                   "type":  "string"
                                                                               },
                                                                        "IsPrimary":  {
                                                                                          "type":  "boolean",
                                                                                          "description":  "bit"
                                                                                      },
                                                                        "EntityCreatedAuthToken":  {
                                                                                                       "format":  "uuid",
                                                                                                       "description":  "uniqueidentifier",
                                                                                                       "type":  "string"
                                                                                                   },
                                                                        "Concealed":  {
                                                                                          "type":  "boolean",
                                                                                          "description":  "bit"
                                                                                      },
                                                                        "ContactId":  {
                                                                                          "type":  "string",
                                                                                          "description":  "FK to CRM.Contacts"
                                                                                      },
                                                                        "EntityUpdatedDateTime":  {
                                                                                                      "format":  "date-time",
                                                                                                      "description":  "datetimeoffset",
                                                                                                      "type":  "string"
                                                                                                  },
                                                                        "TelephoneNumberType":  {
                                                                                                    "type":  "integer",
                                                                                                    "description":  "int"
                                                                                                },
                                                                        "EntityCreatedDateTime":  {
                                                                                                      "format":  "date-time",
                                                                                                      "description":  "datetimeoffset",
                                                                                                      "type":  "string"
                                                                                                  },
                                                                        "Tenant":  {
                                                                                       "format":  "uuid",
                                                                                       "description":  "uniqueidentifier",
                                                                                       "type":  "string"
                                                                                   }
                                                                    },
                                                     "type":  "object"
                                                 },
                        "CRM.Contacts":  {
                                             "properties":  {
                                                                "Note":  {
                                                                             "type":  "string",
                                                                             "description":  "nvarchar"
                                                                         },
                                                                "LastNamePrefix":  {
                                                                                       "type":  "string",
                                                                                       "description":  "nvarchar"
                                                                                   },
                                                                "EntityUpdatedAuthToken":  {
                                                                                               "format":  "uuid",
                                                                                               "description":  "uniqueidentifier",
                                                                                               "type":  "string"
                                                                                           },
                                                                "Concealed":  {
                                                                                  "type":  "boolean",
                                                                                  "description":  "bit"
                                                                              },
                                                                "Tenant":  {
                                                                               "format":  "uuid",
                                                                               "description":  "uniqueidentifier",
                                                                               "type":  "string"
                                                                           },
                                                                "EntityCreatedAuthToken":  {
                                                                                               "format":  "uuid",
                                                                                               "description":  "uniqueidentifier",
                                                                                               "type":  "string"
                                                                                           },
                                                                "FirstName":  {
                                                                                  "type":  "string",
                                                                                  "description":  "nvarchar"
                                                                              },
                                                                "Initials":  {
                                                                                 "type":  "string",
                                                                                 "description":  "nvarchar"
                                                                             },
                                                                "EntityUpdatedDateTime":  {
                                                                                              "format":  "date-time",
                                                                                              "description":  "datetimeoffset",
                                                                                              "type":  "string"
                                                                                          },
                                                                "LastName":  {
                                                                                 "type":  "string",
                                                                                 "description":  "nvarchar"
                                                                             },
                                                                "Gender":  {
                                                                               "type":  "integer",
                                                                               "description":  "int"
                                                                           },
                                                                "Id":  {
                                                                           "format":  "uuid",
                                                                           "description":  "uniqueidentifier",
                                                                           "type":  "string"
                                                                       },
                                                                "Organization":  {
                                                                                     "type":  "string",
                                                                                     "description":  "nvarchar"
                                                                                 },
                                                                "JobTitle":  {
                                                                                 "type":  "string",
                                                                                 "description":  "nvarchar"
                                                                             },
                                                                "EntityCreatedDateTime":  {
                                                                                              "format":  "date-time",
                                                                                              "description":  "datetimeoffset",
                                                                                              "type":  "string"
                                                                                          }
                                                            },
                                             "type":  "object"
                                         },
                        "CRM.EmailAddresses":  {
                                                   "properties":  {
                                                                      "Tenant":  {
                                                                                     "format":  "uuid",
                                                                                     "description":  "uniqueidentifier",
                                                                                     "type":  "string"
                                                                                 },
                                                                      "EntityUpdatedAuthToken":  {
                                                                                                     "format":  "uuid",
                                                                                                     "description":  "uniqueidentifier",
                                                                                                     "type":  "string"
                                                                                                 },
                                                                      "Id":  {
                                                                                 "format":  "uuid",
                                                                                 "description":  "uniqueidentifier",
                                                                                 "type":  "string"
                                                                             },
                                                                      "IsPrimary":  {
                                                                                        "type":  "boolean",
                                                                                        "description":  "bit"
                                                                                    },
                                                                      "EmailType":  {
                                                                                        "type":  "integer",
                                                                                        "description":  "int"
                                                                                    },
                                                                      "EntityCreatedAuthToken":  {
                                                                                                     "format":  "uuid",
                                                                                                     "description":  "uniqueidentifier",
                                                                                                     "type":  "string"
                                                                                                 },
                                                                      "Concealed":  {
                                                                                        "type":  "boolean",
                                                                                        "description":  "bit"
                                                                                    },
                                                                      "ContactId":  {
                                                                                        "type":  "string",
                                                                                        "description":  "FK to CRM.Contacts"
                                                                                    },
                                                                      "EntityUpdatedDateTime":  {
                                                                                                    "format":  "date-time",
                                                                                                    "description":  "datetimeoffset",
                                                                                                    "type":  "string"
                                                                                                },
                                                                      "EntityCreatedDateTime":  {
                                                                                                    "format":  "date-time",
                                                                                                    "description":  "datetimeoffset",
                                                                                                    "type":  "string"
                                                                                                },
                                                                      "Email":  {
                                                                                    "type":  "string",
                                                                                    "description":  "nvarchar"
                                                                                }
                                                                  },
                                                   "type":  "object"
                                               },
                        "CRM.Customer_Contact":  {
                                                     "properties":  {
                                                                        "Concealed":  {
                                                                                          "type":  "boolean",
                                                                                          "description":  "bit"
                                                                                      },
                                                                        "EntityUpdatedAuthToken":  {
                                                                                                       "format":  "uuid",
                                                                                                       "description":  "uniqueidentifier",
                                                                                                       "type":  "string"
                                                                                                   },
                                                                        "Id":  {
                                                                                   "format":  "uuid",
                                                                                   "description":  "uniqueidentifier",
                                                                                   "type":  "string"
                                                                               },
                                                                        "IsPrimary":  {
                                                                                          "type":  "boolean",
                                                                                          "description":  "bit"
                                                                                      },
                                                                        "CustomerId":  {
                                                                                           "type":  "string",
                                                                                           "description":  "FK to CRM.Customers"
                                                                                       },
                                                                        "EntityCreatedAuthToken":  {
                                                                                                       "format":  "uuid",
                                                                                                       "description":  "uniqueidentifier",
                                                                                                       "type":  "string"
                                                                                                   },
                                                                        "ContactId":  {
                                                                                          "type":  "string",
                                                                                          "description":  "FK to CRM.Contacts"
                                                                                      },
                                                                        "EntityUpdatedDateTime":  {
                                                                                                      "format":  "date-time",
                                                                                                      "description":  "datetimeoffset",
                                                                                                      "type":  "string"
                                                                                                  },
                                                                        "IsAuthorizedToSign":  {
                                                                                                   "type":  "boolean",
                                                                                                   "description":  "bit"
                                                                                               },
                                                                        "EntityCreatedDateTime":  {
                                                                                                      "format":  "date-time",
                                                                                                      "description":  "datetimeoffset",
                                                                                                      "type":  "string"
                                                                                                  },
                                                                        "Tenant":  {
                                                                                       "format":  "uuid",
                                                                                       "description":  "uniqueidentifier",
                                                                                       "type":  "string"
                                                                                   }
                                                                    },
                                                     "type":  "object"
                                                 }
                    },
    "title":  "CRM.Contact",
    "$comment":  "Generated from Mermaid ERD with property-level descriptions",
    "$schema":  "http://json-schema.org/draft-07/schema#",
    "type":  "object"
}

Contract

Aggregate Root: Contract

Represents customer contracts with all their versions, documents, and associated metering points and sites.

erDiagram
    "CRM.ContractDocuments" {
        uniqueidentifier Id PK
        uniqueidentifier ContractVersionId FK
        uniqueidentifier ContractTypeDocumentTypeId FK
        uniqueidentifier AddresseeId FK
        uniqueidentifier DocumentId 
        uniqueidentifier Tenant 
        datetimeoffset EntityCreatedDateTime 
        datetimeoffset EntityUpdatedDateTime 
        uniqueidentifier EntityCreatedAuthToken 
        uniqueidentifier EntityUpdatedAuthToken 
        bit Concealed 
    }

    "CRM.ContractVersionDetailSetValues" {
        uniqueidentifier Id PK
        uniqueidentifier ContractVersionDetailSetId FK
        uniqueidentifier ContractTemplateDetailId FK
        nvarchar Value 
        uniqueidentifier Tenant 
        datetimeoffset EntityCreatedDateTime 
        datetimeoffset EntityUpdatedDateTime 
        uniqueidentifier EntityCreatedAuthToken 
        uniqueidentifier EntityUpdatedAuthToken 
        bit Concealed 
    }

    "CRM.ContractVersionDetailSets" {
        uniqueidentifier Id PK
        uniqueidentifier ContractVersionId FK
        uniqueidentifier ContractTemplateId FK
        int DetailSetNumber 
        uniqueidentifier Tenant 
        datetimeoffset EntityCreatedDateTime 
        datetimeoffset EntityUpdatedDateTime 
        uniqueidentifier EntityCreatedAuthToken 
        uniqueidentifier EntityUpdatedAuthToken 
        bit Concealed 
    }

    "CRM.ContractVersionOptionPhase_ContractVersionDetailSet" {
        uniqueidentifier Id PK
        uniqueidentifier ContractVersionOptionPhaseId FK
        uniqueidentifier ContractVersionDetailSetId FK
        uniqueidentifier Tenant 
        datetimeoffset EntityCreatedDateTime 
        datetimeoffset EntityUpdatedDateTime 
        uniqueidentifier EntityCreatedAuthToken 
        uniqueidentifier EntityUpdatedAuthToken 
        bit Concealed 
    }

    "CRM.ContractVersionOptionPhases" {
        uniqueidentifier Id PK
        uniqueidentifier ContractVersionOptionId FK
        uniqueidentifier ContractTypePhaseId FK
        datetimeoffset StartDate 
        datetimeoffset EndDate 
        uniqueidentifier ContractDurationCustomEnumComponentId 
        uniqueidentifier Tenant 
        datetimeoffset EntityCreatedDateTime 
        datetimeoffset EntityUpdatedDateTime 
        uniqueidentifier EntityCreatedAuthToken 
        uniqueidentifier EntityUpdatedAuthToken 
        bit Concealed 
    }

    "CRM.ContractVersionOptions" {
        uniqueidentifier Id PK
        uniqueidentifier ContractVersionId FK
        int OptionNumber 
        uniqueidentifier Tenant 
        datetimeoffset EntityCreatedDateTime 
        datetimeoffset EntityUpdatedDateTime 
        uniqueidentifier EntityCreatedAuthToken 
        uniqueidentifier EntityUpdatedAuthToken 
        bit Concealed 
    }

    "CRM.ContractVersion_MeteringPoint" {
        uniqueidentifier Id PK
        uniqueidentifier ContractVersionId FK
        uniqueidentifier MeteringPointId 
        uniqueidentifier Tenant 
        datetimeoffset EntityCreatedDateTime 
        datetimeoffset EntityUpdatedDateTime 
        uniqueidentifier EntityCreatedAuthToken 
        uniqueidentifier EntityUpdatedAuthToken 
        bit Concealed 
    }

    "CRM.ContractVersion_Site" {
        uniqueidentifier Id PK
        uniqueidentifier ContractVersionId FK
        uniqueidentifier SiteId FK
        uniqueidentifier Tenant 
        datetimeoffset EntityCreatedDateTime 
        datetimeoffset EntityUpdatedDateTime 
        uniqueidentifier EntityCreatedAuthToken 
        uniqueidentifier EntityUpdatedAuthToken 
        bit Concealed 
    }

    "CRM.ContractVersions" {
        uniqueidentifier Id PK
        uniqueidentifier ContractId FK
        int VersionNumber 
        int ContractVersionStatus 
        uniqueidentifier Tenant 
        datetimeoffset EntityCreatedDateTime 
        datetimeoffset EntityUpdatedDateTime 
        uniqueidentifier EntityCreatedAuthToken 
        uniqueidentifier EntityUpdatedAuthToken 
        nvarchar StatusReason 
        uniqueidentifier GeneralContractVersionDetailSetId FK
        bit Concealed 
    }

    "CRM.Contract_CategoryLabel" {
        uniqueidentifier Id PK
        uniqueidentifier ContractId FK
        uniqueidentifier CategoryId 
        uniqueidentifier CategoryLabelId 
        uniqueidentifier Tenant 
        datetimeoffset EntityCreatedDateTime 
        datetimeoffset EntityUpdatedDateTime 
        uniqueidentifier EntityCreatedAuthToken 
        uniqueidentifier EntityUpdatedAuthToken 
        bit Concealed 
    }

    "CRM.Contracts" {
        uniqueidentifier Id PK
        uniqueidentifier CustomerId FK
        uniqueidentifier ContractTypeId FK
        uniqueidentifier Tenant 
        datetimeoffset EntityCreatedDateTime 
        datetimeoffset EntityUpdatedDateTime 
        uniqueidentifier EntityCreatedAuthToken 
        uniqueidentifier EntityUpdatedAuthToken 
        nvarchar InternalReference 
        nvarchar ExternalReference 
        uniqueidentifier SignedContractVersionId FK
        uniqueidentifier MostRelevantContractVersionId FK
        bit Concealed 
        uniqueidentifier SignedContractVersionOptionId FK
    }

    "CRM.ContractDocuments" }o--|| "CRM.Contacts" : "AddresseeId"
    "CRM.ContractDocuments" }o--|| "CRM.ContractTypeDocumentTypes" : "ContractTypeDocumentTypeId"
    "CRM.ContractDocuments" }o--|| "CRM.ContractVersions" : "ContractVersionId"
    "CRM.ContractVersionDetailSetValues" }o--|| "CRM.ContractTemplateDetails" : "ContractTemplateDetailId"
    "CRM.ContractVersionDetailSetValues" }o--|| "CRM.ContractVersionDetailSets" : "ContractVersionDetailSetId"
    "CRM.ContractVersionDetailSets" }o--|| "CRM.ContractTemplates" : "ContractTemplateId"
    "CRM.ContractVersionDetailSets" }o--|| "CRM.ContractVersions" : "ContractVersionId"
    "CRM.ContractVersionOptionPhase_ContractVersionDetailSet" }o--|| "CRM.ContractVersionDetailSets" : "ContractVersionDetailSetId"
    "CRM.ContractVersions" }o--|| "CRM.ContractVersionDetailSets" : "GeneralContractVersionDetailSetId"
    "CRM.ContractVersionOptionPhase_ContractVersionDetailSet" }o--|| "CRM.ContractVersionOptionPhases" : "ContractVersionOptionPhaseId"
    "CRM.ContractVersionOptionPhases" }o--|| "CRM.ContractTypePhases" : "ContractTypePhaseId"
    "CRM.ContractVersionOptionPhases" }o--|| "CRM.ContractVersionOptions" : "ContractVersionOptionId"
    "CRM.Contracts" }o--|| "CRM.ContractVersionOptions" : "SignedContractVersionOptionId"
    "CRM.ContractVersionOptions" }o--|| "CRM.ContractVersions" : "ContractVersionId"
    "CRM.ContractVersion_MeteringPoint" }o--|| "CRM.ContractVersions" : "ContractVersionId"
    "CRM.ContractVersion_Site" }o--|| "CRM.ContractVersions" : "ContractVersionId"
    "CRM.ContractVersion_Site" }o--|| "CRM.Sites" : "SiteId"
    "CRM.Contracts" }o--|| "CRM.ContractVersions" : "MostRelevantContractVersionId"
    "CRM.Contracts" }o--|| "CRM.ContractVersions" : "SignedContractVersionId"
    "CRM.ContractVersions" }o--|| "CRM.Contracts" : "ContractId"
    "CRM.Contract_CategoryLabel" }o--|| "CRM.Contracts" : "ContractId"
    "CRM.Contracts" }o--|| "CRM.ContractTypes" : "ContractTypeId"
    "CRM.Contracts" }o--|| "CRM.Customers" : "CustomerId"
erDiagram
    "CRM.ContractDocuments" {
        uniqueidentifier Id PK
        uniqueidentifier ContractVersionId FK
        uniqueidentifier ContractTypeDocumentTypeId FK
        uniqueidentifier AddresseeId FK
        uniqueidentifier DocumentId 
        uniqueidentifier Tenant 
        datetimeoffset EntityCreatedDateTime 
        datetimeoffset EntityUpdatedDateTime 
        uniqueidentifier EntityCreatedAuthToken 
        uniqueidentifier EntityUpdatedAuthToken 
        bit Concealed 
    }

    "CRM.ContractVersionDetailSetValues" {
        uniqueidentifier Id PK
        uniqueidentifier ContractVersionDetailSetId FK
        uniqueidentifier ContractTemplateDetailId FK
        nvarchar Value 
        uniqueidentifier Tenant 
        datetimeoffset EntityCreatedDateTime 
        datetimeoffset EntityUpdatedDateTime 
        uniqueidentifier EntityCreatedAuthToken 
        uniqueidentifier EntityUpdatedAuthToken 
        bit Concealed 
    }

    "CRM.ContractVersionDetailSets" {
        uniqueidentifier Id PK
        uniqueidentifier ContractVersionId FK
        uniqueidentifier ContractTemplateId FK
        int DetailSetNumber 
        uniqueidentifier Tenant 
        datetimeoffset EntityCreatedDateTime 
        datetimeoffset EntityUpdatedDateTime 
        uniqueidentifier EntityCreatedAuthToken 
        uniqueidentifier EntityUpdatedAuthToken 
        bit Concealed 
    }

    "CRM.ContractVersionOptionPhase_ContractVersionDetailSet" {
        uniqueidentifier Id PK
        uniqueidentifier ContractVersionOptionPhaseId FK
        uniqueidentifier ContractVersionDetailSetId FK
        uniqueidentifier Tenant 
        datetimeoffset EntityCreatedDateTime 
        datetimeoffset EntityUpdatedDateTime 
        uniqueidentifier EntityCreatedAuthToken 
        uniqueidentifier EntityUpdatedAuthToken 
        bit Concealed 
    }

    "CRM.ContractVersionOptionPhases" {
        uniqueidentifier Id PK
        uniqueidentifier ContractVersionOptionId FK
        uniqueidentifier ContractTypePhaseId FK
        datetimeoffset StartDate 
        datetimeoffset EndDate 
        uniqueidentifier ContractDurationCustomEnumComponentId 
        uniqueidentifier Tenant 
        datetimeoffset EntityCreatedDateTime 
        datetimeoffset EntityUpdatedDateTime 
        uniqueidentifier EntityCreatedAuthToken 
        uniqueidentifier EntityUpdatedAuthToken 
        bit Concealed 
    }

    "CRM.ContractVersionOptions" {
        uniqueidentifier Id PK
        uniqueidentifier ContractVersionId FK
        int OptionNumber 
        uniqueidentifier Tenant 
        datetimeoffset EntityCreatedDateTime 
        datetimeoffset EntityUpdatedDateTime 
        uniqueidentifier EntityCreatedAuthToken 
        uniqueidentifier EntityUpdatedAuthToken 
        bit Concealed 
    }

    "CRM.ContractVersion_MeteringPoint" {
        uniqueidentifier Id PK
        uniqueidentifier ContractVersionId FK
        uniqueidentifier MeteringPointId 
        uniqueidentifier Tenant 
        datetimeoffset EntityCreatedDateTime 
        datetimeoffset EntityUpdatedDateTime 
        uniqueidentifier EntityCreatedAuthToken 
        uniqueidentifier EntityUpdatedAuthToken 
        bit Concealed 
    }

    "CRM.ContractVersion_Site" {
        uniqueidentifier Id PK
        uniqueidentifier ContractVersionId FK
        uniqueidentifier SiteId FK
        uniqueidentifier Tenant 
        datetimeoffset EntityCreatedDateTime 
        datetimeoffset EntityUpdatedDateTime 
        uniqueidentifier EntityCreatedAuthToken 
        uniqueidentifier EntityUpdatedAuthToken 
        bit Concealed 
    }

    "CRM.ContractVersions" {
        uniqueidentifier Id PK
        uniqueidentifier ContractId FK
        int VersionNumber 
        int ContractVersionStatus 
        uniqueidentifier Tenant 
        datetimeoffset EntityCreatedDateTime 
        datetimeoffset EntityUpdatedDateTime 
        uniqueidentifier EntityCreatedAuthToken 
        uniqueidentifier EntityUpdatedAuthToken 
        nvarchar StatusReason 
        uniqueidentifier GeneralContractVersionDetailSetId FK
        bit Concealed 
    }

    "CRM.Contract_CategoryLabel" {
        uniqueidentifier Id PK
        uniqueidentifier ContractId FK
        uniqueidentifier CategoryId 
        uniqueidentifier CategoryLabelId 
        uniqueidentifier Tenant 
        datetimeoffset EntityCreatedDateTime 
        datetimeoffset EntityUpdatedDateTime 
        uniqueidentifier EntityCreatedAuthToken 
        uniqueidentifier EntityUpdatedAuthToken 
        bit Concealed 
    }

    "CRM.Contracts" {
        uniqueidentifier Id PK
        uniqueidentifier CustomerId FK
        uniqueidentifier ContractTypeId FK
        uniqueidentifier Tenant 
        datetimeoffset EntityCreatedDateTime 
        datetimeoffset EntityUpdatedDateTime 
        uniqueidentifier EntityCreatedAuthToken 
        uniqueidentifier EntityUpdatedAuthToken 
        nvarchar InternalReference 
        nvarchar ExternalReference 
        uniqueidentifier SignedContractVersionId FK
        uniqueidentifier MostRelevantContractVersionId FK
        bit Concealed 
        uniqueidentifier SignedContractVersionOptionId FK
    }

    "CRM.ContractDocuments" }o--|| "CRM.Contacts" : "AddresseeId"
    "CRM.ContractDocuments" }o--|| "CRM.ContractTypeDocumentTypes" : "ContractTypeDocumentTypeId"
    "CRM.ContractDocuments" }o--|| "CRM.ContractVersions" : "ContractVersionId"
    "CRM.ContractVersionDetailSetValues" }o--|| "CRM.ContractTemplateDetails" : "ContractTemplateDetailId"
    "CRM.ContractVersionDetailSetValues" }o--|| "CRM.ContractVersionDetailSets" : "ContractVersionDetailSetId"
    "CRM.ContractVersionDetailSets" }o--|| "CRM.ContractTemplates" : "ContractTemplateId"
    "CRM.ContractVersionDetailSets" }o--|| "CRM.ContractVersions" : "ContractVersionId"
    "CRM.ContractVersionOptionPhase_ContractVersionDetailSet" }o--|| "CRM.ContractVersionDetailSets" : "ContractVersionDetailSetId"
    "CRM.ContractVersions" }o--|| "CRM.ContractVersionDetailSets" : "GeneralContractVersionDetailSetId"
    "CRM.ContractVersionOptionPhase_ContractVersionDetailSet" }o--|| "CRM.ContractVersionOptionPhases" : "ContractVersionOptionPhaseId"
    "CRM.ContractVersionOptionPhases" }o--|| "CRM.ContractTypePhases" : "ContractTypePhaseId"
    "CRM.ContractVersionOptionPhases" }o--|| "CRM.ContractVersionOptions" : "ContractVersionOptionId"
    "CRM.Contracts" }o--|| "CRM.ContractVersionOptions" : "SignedContractVersionOptionId"
    "CRM.ContractVersionOptions" }o--|| "CRM.ContractVersions" : "ContractVersionId"
    "CRM.ContractVersion_MeteringPoint" }o--|| "CRM.ContractVersions" : "ContractVersionId"
    "CRM.ContractVersion_Site" }o--|| "CRM.ContractVersions" : "ContractVersionId"
    "CRM.ContractVersion_Site" }o--|| "CRM.Sites" : "SiteId"
    "CRM.Contracts" }o--|| "CRM.ContractVersions" : "MostRelevantContractVersionId"
    "CRM.Contracts" }o--|| "CRM.ContractVersions" : "SignedContractVersionId"
    "CRM.ContractVersions" }o--|| "CRM.Contracts" : "ContractId"
    "CRM.Contract_CategoryLabel" }o--|| "CRM.Contracts" : "ContractId"
    "CRM.Contracts" }o--|| "CRM.ContractTypes" : "ContractTypeId"
    "CRM.Contracts" }o--|| "CRM.Customers" : "CustomerId"
{
    "definitions":  {
                        "CRM.ContractVersionOptionPhases":  {
                                                                "properties":  {
                                                                                   "Id":  {
                                                                                              "format":  "uuid",
                                                                                              "description":  "uniqueidentifier",
                                                                                              "type":  "string"
                                                                                          },
                                                                                   "EntityUpdatedAuthToken":  {
                                                                                                                  "format":  "uuid",
                                                                                                                  "description":  "uniqueidentifier",
                                                                                                                  "type":  "string"
                                                                                                              },
                                                                                   "Concealed":  {
                                                                                                     "type":  "boolean",
                                                                                                     "description":  "bit"
                                                                                                 },
                                                                                   "EntityCreatedAuthToken":  {
                                                                                                                  "format":  "uuid",
                                                                                                                  "description":  "uniqueidentifier",
                                                                                                                  "type":  "string"
                                                                                                              },
                                                                                   "EndDate":  {
                                                                                                   "format":  "date-time",
                                                                                                   "description":  "datetimeoffset",
                                                                                                   "type":  "string"
                                                                                               },
                                                                                   "EntityUpdatedDateTime":  {
                                                                                                                 "format":  "date-time",
                                                                                                                 "description":  "datetimeoffset",
                                                                                                                 "type":  "string"
                                                                                                             },
                                                                                   "ContractVersionOptionId":  {
                                                                                                                   "type":  "string",
                                                                                                                   "description":  "FK to CRM.ContractVersionOptions"
                                                                                                               },
                                                                                   "Tenant":  {
                                                                                                  "format":  "uuid",
                                                                                                  "description":  "uniqueidentifier",
                                                                                                  "type":  "string"
                                                                                              },
                                                                                   "EntityCreatedDateTime":  {
                                                                                                                 "format":  "date-time",
                                                                                                                 "description":  "datetimeoffset",
                                                                                                                 "type":  "string"
                                                                                                             },
                                                                                   "ContractTypePhaseId":  {
                                                                                                               "type":  "string",
                                                                                                               "description":  "FK to CRM.ContractTypePhases"
                                                                                                           },
                                                                                   "StartDate":  {
                                                                                                     "format":  "date-time",
                                                                                                     "description":  "datetimeoffset",
                                                                                                     "type":  "string"
                                                                                                 },
                                                                                   "ContractDurationCustomEnumComponentId":  {
                                                                                                                                 "format":  "uuid",
                                                                                                                                 "description":  "uniqueidentifier",
                                                                                                                                 "type":  "string"
                                                                                                                             }
                                                                               },
                                                                "type":  "object"
                                                            },
                        "CRM.ContractVersions":  {
                                                     "properties":  {
                                                                        "Id":  {
                                                                                   "format":  "uuid",
                                                                                   "description":  "uniqueidentifier",
                                                                                   "type":  "string"
                                                                               },
                                                                        "ContractId":  {
                                                                                           "type":  "string",
                                                                                           "description":  "FK to CRM.Contracts"
                                                                                       },
                                                                        "EntityUpdatedAuthToken":  {
                                                                                                       "format":  "uuid",
                                                                                                       "description":  "uniqueidentifier",
                                                                                                       "type":  "string"
                                                                                                   },
                                                                        "Concealed":  {
                                                                                          "type":  "boolean",
                                                                                          "description":  "bit"
                                                                                      },
                                                                        "EntityCreatedAuthToken":  {
                                                                                                       "format":  "uuid",
                                                                                                       "description":  "uniqueidentifier",
                                                                                                       "type":  "string"
                                                                                                   },
                                                                        "StatusReason":  {
                                                                                             "type":  "string",
                                                                                             "description":  "nvarchar"
                                                                                         },
                                                                        "EntityUpdatedDateTime":  {
                                                                                                      "format":  "date-time",
                                                                                                      "description":  "datetimeoffset",
                                                                                                      "type":  "string"
                                                                                                  },
                                                                        "ContractVersionStatus":  {
                                                                                                      "type":  "integer",
                                                                                                      "description":  "int"
                                                                                                  },
                                                                        "Tenant":  {
                                                                                       "format":  "uuid",
                                                                                       "description":  "uniqueidentifier",
                                                                                       "type":  "string"
                                                                                   },
                                                                        "GeneralContractVersionDetailSetId":  {
                                                                                                                  "type":  "string",
                                                                                                                  "description":  "FK to CRM.ContractVersionDetailSets"
                                                                                                              },
                                                                        "EntityCreatedDateTime":  {
                                                                                                      "format":  "date-time",
                                                                                                      "description":  "datetimeoffset",
                                                                                                      "type":  "string"
                                                                                                  },
                                                                        "VersionNumber":  {
                                                                                              "type":  "integer",
                                                                                              "description":  "int"
                                                                                          }
                                                                    },
                                                     "type":  "object"
                                                 },
                        "CRM.Contracts":  {
                                              "properties":  {
                                                                 "MostRelevantContractVersionId":  {
                                                                                                       "type":  "string",
                                                                                                       "description":  "FK to CRM.ContractVersions"
                                                                                                   },
                                                                 "SignedContractVersionId":  {
                                                                                                 "type":  "string",
                                                                                                 "description":  "FK to CRM.ContractVersions"
                                                                                             },
                                                                 "Id":  {
                                                                            "format":  "uuid",
                                                                            "description":  "uniqueidentifier",
                                                                            "type":  "string"
                                                                        },
                                                                 "SignedContractVersionOptionId":  {
                                                                                                       "type":  "string",
                                                                                                       "description":  "FK to CRM.ContractVersionOptions"
                                                                                                   },
                                                                 "EntityUpdatedAuthToken":  {
                                                                                                "format":  "uuid",
                                                                                                "description":  "uniqueidentifier",
                                                                                                "type":  "string"
                                                                                            },
                                                                 "ContractTypeId":  {
                                                                                        "type":  "string",
                                                                                        "description":  "FK to CRM.ContractTypes"
                                                                                    },
                                                                 "EntityCreatedAuthToken":  {
                                                                                                "format":  "uuid",
                                                                                                "description":  "uniqueidentifier",
                                                                                                "type":  "string"
                                                                                            },
                                                                 "CustomerId":  {
                                                                                    "type":  "string",
                                                                                    "description":  "FK to CRM.Customers"
                                                                                },
                                                                 "EntityUpdatedDateTime":  {
                                                                                               "format":  "date-time",
                                                                                               "description":  "datetimeoffset",
                                                                                               "type":  "string"
                                                                                           },
                                                                 "Tenant":  {
                                                                                "format":  "uuid",
                                                                                "description":  "uniqueidentifier",
                                                                                "type":  "string"
                                                                            },
                                                                 "InternalReference":  {
                                                                                           "type":  "string",
                                                                                           "description":  "nvarchar"
                                                                                       },
                                                                 "ExternalReference":  {
                                                                                           "type":  "string",
                                                                                           "description":  "nvarchar"
                                                                                       },
                                                                 "EntityCreatedDateTime":  {
                                                                                               "format":  "date-time",
                                                                                               "description":  "datetimeoffset",
                                                                                               "type":  "string"
                                                                                           },
                                                                 "Concealed":  {
                                                                                   "type":  "boolean",
                                                                                   "description":  "bit"
                                                                               }
                                                             },
                                              "type":  "object"
                                          },
                        "CRM.ContractVersionDetailSetValues":  {
                                                                   "properties":  {
                                                                                      "Concealed":  {
                                                                                                        "type":  "boolean",
                                                                                                        "description":  "bit"
                                                                                                    },
                                                                                      "ContractTemplateDetailId":  {
                                                                                                                       "type":  "string",
                                                                                                                       "description":  "FK to CRM.ContractTemplateDetails"
                                                                                                                   },
                                                                                      "Id":  {
                                                                                                 "format":  "uuid",
                                                                                                 "description":  "uniqueidentifier",
                                                                                                 "type":  "string"
                                                                                             },
                                                                                      "ContractVersionDetailSetId":  {
                                                                                                                         "type":  "string",
                                                                                                                         "description":  "FK to CRM.ContractVersionDetailSets"
                                                                                                                     },
                                                                                      "EntityCreatedAuthToken":  {
                                                                                                                     "format":  "uuid",
                                                                                                                     "description":  "uniqueidentifier",
                                                                                                                     "type":  "string"
                                                                                                                 },
                                                                                      "EntityUpdatedAuthToken":  {
                                                                                                                     "format":  "uuid",
                                                                                                                     "description":  "uniqueidentifier",
                                                                                                                     "type":  "string"
                                                                                                                 },
                                                                                      "Value":  {
                                                                                                    "type":  "string",
                                                                                                    "description":  "nvarchar"
                                                                                                },
                                                                                      "EntityUpdatedDateTime":  {
                                                                                                                    "format":  "date-time",
                                                                                                                    "description":  "datetimeoffset",
                                                                                                                    "type":  "string"
                                                                                                                },
                                                                                      "EntityCreatedDateTime":  {
                                                                                                                    "format":  "date-time",
                                                                                                                    "description":  "datetimeoffset",
                                                                                                                    "type":  "string"
                                                                                                                },
                                                                                      "Tenant":  {
                                                                                                     "format":  "uuid",
                                                                                                     "description":  "uniqueidentifier",
                                                                                                     "type":  "string"
                                                                                                 }
                                                                                  },
                                                                   "type":  "object"
                                                               },
                        "CRM.ContractVersionOptionPhase_ContractVersionDetailSet":  {
                                                                                        "properties":  {
                                                                                                           "Concealed":  {
                                                                                                                             "type":  "boolean",
                                                                                                                             "description":  "bit"
                                                                                                                         },
                                                                                                           "EntityUpdatedAuthToken":  {
                                                                                                                                          "format":  "uuid",
                                                                                                                                          "description":  "uniqueidentifier",
                                                                                                                                          "type":  "string"
                                                                                                                                      },
                                                                                                           "Id":  {
                                                                                                                      "format":  "uuid",
                                                                                                                      "description":  "uniqueidentifier",
                                                                                                                      "type":  "string"
                                                                                                                  },
                                                                                                           "ContractVersionDetailSetId":  {
                                                                                                                                              "type":  "string",
                                                                                                                                              "description":  "FK to CRM.ContractVersionDetailSets"
                                                                                                                                          },
                                                                                                           "EntityCreatedDateTime":  {
                                                                                                                                         "format":  "date-time",
                                                                                                                                         "description":  "datetimeoffset",
                                                                                                                                         "type":  "string"
                                                                                                                                     },
                                                                                                           "EntityUpdatedDateTime":  {
                                                                                                                                         "format":  "date-time",
                                                                                                                                         "description":  "datetimeoffset",
                                                                                                                                         "type":  "string"
                                                                                                                                     },
                                                                                                           "ContractVersionOptionPhaseId":  {
                                                                                                                                                "type":  "string",
                                                                                                                                                "description":  "FK to CRM.ContractVersionOptionPhases"
                                                                                                                                            },
                                                                                                           "EntityCreatedAuthToken":  {
                                                                                                                                          "format":  "uuid",
                                                                                                                                          "description":  "uniqueidentifier",
                                                                                                                                          "type":  "string"
                                                                                                                                      },
                                                                                                           "Tenant":  {
                                                                                                                          "format":  "uuid",
                                                                                                                          "description":  "uniqueidentifier",
                                                                                                                          "type":  "string"
                                                                                                                      }
                                                                                                       },
                                                                                        "type":  "object"
                                                                                    },
                        "CRM.ContractVersionOptions":  {
                                                           "properties":  {
                                                                              "Concealed":  {
                                                                                                "type":  "boolean",
                                                                                                "description":  "bit"
                                                                                            },
                                                                              "EntityUpdatedAuthToken":  {
                                                                                                             "format":  "uuid",
                                                                                                             "description":  "uniqueidentifier",
                                                                                                             "type":  "string"
                                                                                                         },
                                                                              "OptionNumber":  {
                                                                                                   "type":  "integer",
                                                                                                   "description":  "int"
                                                                                               },
                                                                              "Id":  {
                                                                                         "format":  "uuid",
                                                                                         "description":  "uniqueidentifier",
                                                                                         "type":  "string"
                                                                                     },
                                                                              "EntityCreatedAuthToken":  {
                                                                                                             "format":  "uuid",
                                                                                                             "description":  "uniqueidentifier",
                                                                                                             "type":  "string"
                                                                                                         },
                                                                              "EntityCreatedDateTime":  {
                                                                                                            "format":  "date-time",
                                                                                                            "description":  "datetimeoffset",
                                                                                                            "type":  "string"
                                                                                                        },
                                                                              "EntityUpdatedDateTime":  {
                                                                                                            "format":  "date-time",
                                                                                                            "description":  "datetimeoffset",
                                                                                                            "type":  "string"
                                                                                                        },
                                                                              "ContractVersionId":  {
                                                                                                        "type":  "string",
                                                                                                        "description":  "FK to CRM.ContractVersions"
                                                                                                    },
                                                                              "Tenant":  {
                                                                                             "format":  "uuid",
                                                                                             "description":  "uniqueidentifier",
                                                                                             "type":  "string"
                                                                                         }
                                                                          },
                                                           "type":  "object"
                                                       },
                        "CRM.ContractVersionDetailSets":  {
                                                              "properties":  {
                                                                                 "ContractTemplateId":  {
                                                                                                            "type":  "string",
                                                                                                            "description":  "FK to CRM.ContractTemplates"
                                                                                                        },
                                                                                 "EntityUpdatedAuthToken":  {
                                                                                                                "format":  "uuid",
                                                                                                                "description":  "uniqueidentifier",
                                                                                                                "type":  "string"
                                                                                                            },
                                                                                 "Id":  {
                                                                                            "format":  "uuid",
                                                                                            "description":  "uniqueidentifier",
                                                                                            "type":  "string"
                                                                                        },
                                                                                 "DetailSetNumber":  {
                                                                                                         "type":  "integer",
                                                                                                         "description":  "int"
                                                                                                     },
                                                                                 "EntityCreatedAuthToken":  {
                                                                                                                "format":  "uuid",
                                                                                                                "description":  "uniqueidentifier",
                                                                                                                "type":  "string"
                                                                                                            },
                                                                                 "Concealed":  {
                                                                                                   "type":  "boolean",
                                                                                                   "description":  "bit"
                                                                                               },
                                                                                 "EntityCreatedDateTime":  {
                                                                                                               "format":  "date-time",
                                                                                                               "description":  "datetimeoffset",
                                                                                                               "type":  "string"
                                                                                                           },
                                                                                 "EntityUpdatedDateTime":  {
                                                                                                               "format":  "date-time",
                                                                                                               "description":  "datetimeoffset",
                                                                                                               "type":  "string"
                                                                                                           },
                                                                                 "ContractVersionId":  {
                                                                                                           "type":  "string",
                                                                                                           "description":  "FK to CRM.ContractVersions"
                                                                                                       },
                                                                                 "Tenant":  {
                                                                                                "format":  "uuid",
                                                                                                "description":  "uniqueidentifier",
                                                                                                "type":  "string"
                                                                                            }
                                                                             },
                                                              "type":  "object"
                                                          },
                        "CRM.ContractVersion_Site":  {
                                                         "properties":  {
                                                                            "Concealed":  {
                                                                                              "type":  "boolean",
                                                                                              "description":  "bit"
                                                                                          },
                                                                            "EntityUpdatedAuthToken":  {
                                                                                                           "format":  "uuid",
                                                                                                           "description":  "uniqueidentifier",
                                                                                                           "type":  "string"
                                                                                                       },
                                                                            "Id":  {
                                                                                       "format":  "uuid",
                                                                                       "description":  "uniqueidentifier",
                                                                                       "type":  "string"
                                                                                   },
                                                                            "SiteId":  {
                                                                                           "type":  "string",
                                                                                           "description":  "FK to CRM.Sites"
                                                                                       },
                                                                            "EntityCreatedAuthToken":  {
                                                                                                           "format":  "uuid",
                                                                                                           "description":  "uniqueidentifier",
                                                                                                           "type":  "string"
                                                                                                       },
                                                                            "EntityCreatedDateTime":  {
                                                                                                          "format":  "date-time",
                                                                                                          "description":  "datetimeoffset",
                                                                                                          "type":  "string"
                                                                                                      },
                                                                            "EntityUpdatedDateTime":  {
                                                                                                          "format":  "date-time",
                                                                                                          "description":  "datetimeoffset",
                                                                                                          "type":  "string"
                                                                                                      },
                                                                            "ContractVersionId":  {
                                                                                                      "type":  "string",
                                                                                                      "description":  "FK to CRM.ContractVersions"
                                                                                                  },
                                                                            "Tenant":  {
                                                                                           "format":  "uuid",
                                                                                           "description":  "uniqueidentifier",
                                                                                           "type":  "string"
                                                                                       }
                                                                        },
                                                         "type":  "object"
                                                     },
                        "CRM.ContractDocuments":  {
                                                      "properties":  {
                                                                         "Concealed":  {
                                                                                           "type":  "boolean",
                                                                                           "description":  "bit"
                                                                                       },
                                                                         "EntityUpdatedAuthToken":  {
                                                                                                        "format":  "uuid",
                                                                                                        "description":  "uniqueidentifier",
                                                                                                        "type":  "string"
                                                                                                    },
                                                                         "Id":  {
                                                                                    "format":  "uuid",
                                                                                    "description":  "uniqueidentifier",
                                                                                    "type":  "string"
                                                                                },
                                                                         "AddresseeId":  {
                                                                                             "type":  "string",
                                                                                             "description":  "FK to CRM.Contacts"
                                                                                         },
                                                                         "DocumentId":  {
                                                                                            "format":  "uuid",
                                                                                            "description":  "uniqueidentifier",
                                                                                            "type":  "string"
                                                                                        },
                                                                         "EntityCreatedAuthToken":  {
                                                                                                        "format":  "uuid",
                                                                                                        "description":  "uniqueidentifier",
                                                                                                        "type":  "string"
                                                                                                    },
                                                                         "EntityCreatedDateTime":  {
                                                                                                       "format":  "date-time",
                                                                                                       "description":  "datetimeoffset",
                                                                                                       "type":  "string"
                                                                                                   },
                                                                         "ContractTypeDocumentTypeId":  {
                                                                                                            "type":  "string",
                                                                                                            "description":  "FK to CRM.ContractTypeDocumentTypes"
                                                                                                        },
                                                                         "EntityUpdatedDateTime":  {
                                                                                                       "format":  "date-time",
                                                                                                       "description":  "datetimeoffset",
                                                                                                       "type":  "string"
                                                                                                   },
                                                                         "ContractVersionId":  {
                                                                                                   "type":  "string",
                                                                                                   "description":  "FK to CRM.ContractVersions"
                                                                                               },
                                                                         "Tenant":  {
                                                                                        "format":  "uuid",
                                                                                        "description":  "uniqueidentifier",
                                                                                        "type":  "string"
                                                                                    }
                                                                     },
                                                      "type":  "object"
                                                  },
                        "CRM.Contract_CategoryLabel":  {
                                                           "properties":  {
                                                                              "Concealed":  {
                                                                                                "type":  "boolean",
                                                                                                "description":  "bit"
                                                                                            },
                                                                              "EntityUpdatedAuthToken":  {
                                                                                                             "format":  "uuid",
                                                                                                             "description":  "uniqueidentifier",
                                                                                                             "type":  "string"
                                                                                                         },
                                                                              "Id":  {
                                                                                         "format":  "uuid",
                                                                                         "description":  "uniqueidentifier",
                                                                                         "type":  "string"
                                                                                     },
                                                                              "CategoryLabelId":  {
                                                                                                      "format":  "uuid",
                                                                                                      "description":  "uniqueidentifier",
                                                                                                      "type":  "string"
                                                                                                  },
                                                                              "ContractId":  {
                                                                                                 "type":  "string",
                                                                                                 "description":  "FK to CRM.Contracts"
                                                                                             },
                                                                              "EntityCreatedDateTime":  {
                                                                                                            "format":  "date-time",
                                                                                                            "description":  "datetimeoffset",
                                                                                                            "type":  "string"
                                                                                                        },
                                                                              "EntityUpdatedDateTime":  {
                                                                                                            "format":  "date-time",
                                                                                                            "description":  "datetimeoffset",
                                                                                                            "type":  "string"
                                                                                                        },
                                                                              "CategoryId":  {
                                                                                                 "format":  "uuid",
                                                                                                 "description":  "uniqueidentifier",
                                                                                                 "type":  "string"
                                                                                             },
                                                                              "EntityCreatedAuthToken":  {
                                                                                                             "format":  "uuid",
                                                                                                             "description":  "uniqueidentifier",
                                                                                                             "type":  "string"
                                                                                                         },
                                                                              "Tenant":  {
                                                                                             "format":  "uuid",
                                                                                             "description":  "uniqueidentifier",
                                                                                             "type":  "string"
                                                                                         }
                                                                          },
                                                           "type":  "object"
                                                       },
                        "CRM.ContractVersion_MeteringPoint":  {
                                                                  "properties":  {
                                                                                     "Concealed":  {
                                                                                                       "type":  "boolean",
                                                                                                       "description":  "bit"
                                                                                                   },
                                                                                     "EntityUpdatedAuthToken":  {
                                                                                                                    "format":  "uuid",
                                                                                                                    "description":  "uniqueidentifier",
                                                                                                                    "type":  "string"
                                                                                                                },
                                                                                     "Id":  {
                                                                                                "format":  "uuid",
                                                                                                "description":  "uniqueidentifier",
                                                                                                "type":  "string"
                                                                                            },
                                                                                     "EntityCreatedAuthToken":  {
                                                                                                                    "format":  "uuid",
                                                                                                                    "description":  "uniqueidentifier",
                                                                                                                    "type":  "string"
                                                                                                                },
                                                                                     "MeteringPointId":  {
                                                                                                             "format":  "uuid",
                                                                                                             "description":  "uniqueidentifier",
                                                                                                             "type":  "string"
                                                                                                         },
                                                                                     "EntityCreatedDateTime":  {
                                                                                                                   "format":  "date-time",
                                                                                                                   "description":  "datetimeoffset",
                                                                                                                   "type":  "string"
                                                                                                               },
                                                                                     "EntityUpdatedDateTime":  {
                                                                                                                   "format":  "date-time",
                                                                                                                   "description":  "datetimeoffset",
                                                                                                                   "type":  "string"
                                                                                                               },
                                                                                     "ContractVersionId":  {
                                                                                                               "type":  "string",
                                                                                                               "description":  "FK to CRM.ContractVersions"
                                                                                                           },
                                                                                     "Tenant":  {
                                                                                                    "format":  "uuid",
                                                                                                    "description":  "uniqueidentifier",
                                                                                                    "type":  "string"
                                                                                                }
                                                                                 },
                                                                  "type":  "object"
                                                              }
                    },
    "title":  "CRM.Contract",
    "$comment":  "Generated from Mermaid ERD with property-level descriptions",
    "$schema":  "http://json-schema.org/draft-07/schema#",
    "type":  "object"
}

Contract Template

Aggregate Root: ContractTemplate

Represents templates for creating contracts with predefined structures and details.

erDiagram
    "CRM.ContractTemplateDetails" {
        uniqueidentifier Id PK
        uniqueidentifier ContractTemplateId FK
        nvarchar Key 
        nvarchar DefaultValue 
        int FormatType 
        uniqueidentifier CustomEnumId FK
        bit IsFixed 
        bit IsRequired 
        bit IsActive 
        uniqueidentifier Tenant 
        datetimeoffset EntityCreatedDateTime 
        datetimeoffset EntityUpdatedDateTime 
        uniqueidentifier EntityCreatedAuthToken 
        uniqueidentifier EntityUpdatedAuthToken 
        bit Concealed 
    }

    "CRM.ContractTemplates" {
        uniqueidentifier Id PK
        nvarchar Name 
        uniqueidentifier Tenant 
        datetimeoffset EntityCreatedDateTime 
        datetimeoffset EntityUpdatedDateTime 
        uniqueidentifier EntityCreatedAuthToken 
        uniqueidentifier EntityUpdatedAuthToken 
        bit Concealed 
    }

    "CRM.ContractTemplateDetails" }o--|| "CRM.ContractTemplates" : "ContractTemplateId"
    "CRM.ContractTemplateDetails" }o--|| "CRM.CustomEnums" : "CustomEnumId"
    "CRM.ContractTemplateDetails" }o--|| "Pricing.CustomEnums" : "CustomEnumId"
    "CRM.ContractTemplateDetails" }o--|| "ApplicationCore.CustomEnums" : "CustomEnumId"
    "CRM.ContractTemplateDetails" }o--|| "PM.CustomEnums" : "CustomEnumId"
    "CRM.ContractVersionDetailSetValues" }o--|| "CRM.ContractTemplateDetails" : "ContractTemplateDetailId"
    "CRM.ContractTypePhase_ContractTemplate" }o--|| "CRM.ContractTemplates" : "ContractTemplateId"
    "CRM.ContractTypes" }o--|| "CRM.ContractTemplates" : "GeneralContractTemplateId"
    "CRM.ContractVersionDetailSets" }o--|| "CRM.ContractTemplates" : "ContractTemplateId"
erDiagram
    "CRM.ContractTemplateDetails" {
        uniqueidentifier Id PK
        uniqueidentifier ContractTemplateId FK
        nvarchar Key 
        nvarchar DefaultValue 
        int FormatType 
        uniqueidentifier CustomEnumId FK
        bit IsFixed 
        bit IsRequired 
        bit IsActive 
        uniqueidentifier Tenant 
        datetimeoffset EntityCreatedDateTime 
        datetimeoffset EntityUpdatedDateTime 
        uniqueidentifier EntityCreatedAuthToken 
        uniqueidentifier EntityUpdatedAuthToken 
        bit Concealed 
    }

    "CRM.ContractTemplates" {
        uniqueidentifier Id PK
        nvarchar Name 
        uniqueidentifier Tenant 
        datetimeoffset EntityCreatedDateTime 
        datetimeoffset EntityUpdatedDateTime 
        uniqueidentifier EntityCreatedAuthToken 
        uniqueidentifier EntityUpdatedAuthToken 
        bit Concealed 
    }

    "CRM.ContractTemplateDetails" }o--|| "CRM.ContractTemplates" : "ContractTemplateId"
    "CRM.ContractTemplateDetails" }o--|| "CRM.CustomEnums" : "CustomEnumId"
    "CRM.ContractTemplateDetails" }o--|| "Pricing.CustomEnums" : "CustomEnumId"
    "CRM.ContractTemplateDetails" }o--|| "ApplicationCore.CustomEnums" : "CustomEnumId"
    "CRM.ContractTemplateDetails" }o--|| "PM.CustomEnums" : "CustomEnumId"
    "CRM.ContractVersionDetailSetValues" }o--|| "CRM.ContractTemplateDetails" : "ContractTemplateDetailId"
    "CRM.ContractTypePhase_ContractTemplate" }o--|| "CRM.ContractTemplates" : "ContractTemplateId"
    "CRM.ContractTypes" }o--|| "CRM.ContractTemplates" : "GeneralContractTemplateId"
    "CRM.ContractVersionDetailSets" }o--|| "CRM.ContractTemplates" : "ContractTemplateId"
{
    "definitions":  {
                        "CRM.ContractTemplateDetails":  {
                                                            "properties":  {
                                                                               "IsRequired":  {
                                                                                                  "type":  "boolean",
                                                                                                  "description":  "bit"
                                                                                              },
                                                                               "Id":  {
                                                                                          "format":  "uuid",
                                                                                          "description":  "uniqueidentifier",
                                                                                          "type":  "string"
                                                                                      },
                                                                               "EntityUpdatedAuthToken":  {
                                                                                                              "format":  "uuid",
                                                                                                              "description":  "uniqueidentifier",
                                                                                                              "type":  "string"
                                                                                                          },
                                                                               "Concealed":  {
                                                                                                 "type":  "boolean",
                                                                                                 "description":  "bit"
                                                                                             },
                                                                               "IsActive":  {
                                                                                                "type":  "boolean",
                                                                                                "description":  "bit"
                                                                                            },
                                                                               "EntityCreatedAuthToken":  {
                                                                                                              "format":  "uuid",
                                                                                                              "description":  "uniqueidentifier",
                                                                                                              "type":  "string"
                                                                                                          },
                                                                               "DefaultValue":  {
                                                                                                    "type":  "string",
                                                                                                    "description":  "nvarchar"
                                                                                                },
                                                                               "IsFixed":  {
                                                                                               "type":  "boolean",
                                                                                               "description":  "bit"
                                                                                           },
                                                                               "EntityUpdatedDateTime":  {
                                                                                                             "format":  "date-time",
                                                                                                             "description":  "datetimeoffset",
                                                                                                             "type":  "string"
                                                                                                         },
                                                                               "ContractTemplateId":  {
                                                                                                          "type":  "string",
                                                                                                          "description":  "FK to CRM.ContractTemplates"
                                                                                                      },
                                                                               "Tenant":  {
                                                                                              "format":  "uuid",
                                                                                              "description":  "uniqueidentifier",
                                                                                              "type":  "string"
                                                                                          },
                                                                               "Key":  {
                                                                                           "type":  "string",
                                                                                           "description":  "nvarchar"
                                                                                       },
                                                                               "EntityCreatedDateTime":  {
                                                                                                             "format":  "date-time",
                                                                                                             "description":  "datetimeoffset",
                                                                                                             "type":  "string"
                                                                                                         },
                                                                               "FormatType":  {
                                                                                                  "type":  "integer",
                                                                                                  "description":  "int"
                                                                                              },
                                                                               "CustomEnumId":  {
                                                                                                    "type":  "string",
                                                                                                    "description":  "FK to PM.CustomEnums"
                                                                                                }
                                                                           },
                                                            "type":  "object"
                                                        },
                        "CRM.ContractTemplates":  {
                                                      "properties":  {
                                                                         "Concealed":  {
                                                                                           "type":  "boolean",
                                                                                           "description":  "bit"
                                                                                       },
                                                                         "EntityUpdatedAuthToken":  {
                                                                                                        "format":  "uuid",
                                                                                                        "description":  "uniqueidentifier",
                                                                                                        "type":  "string"
                                                                                                    },
                                                                         "Id":  {
                                                                                    "format":  "uuid",
                                                                                    "description":  "uniqueidentifier",
                                                                                    "type":  "string"
                                                                                },
                                                                         "EntityCreatedDateTime":  {
                                                                                                       "format":  "date-time",
                                                                                                       "description":  "datetimeoffset",
                                                                                                       "type":  "string"
                                                                                                   },
                                                                         "Name":  {
                                                                                      "type":  "string",
                                                                                      "description":  "nvarchar"
                                                                                  },
                                                                         "EntityUpdatedDateTime":  {
                                                                                                       "format":  "date-time",
                                                                                                       "description":  "datetimeoffset",
                                                                                                       "type":  "string"
                                                                                                   },
                                                                         "EntityCreatedAuthToken":  {
                                                                                                        "format":  "uuid",
                                                                                                        "description":  "uniqueidentifier",
                                                                                                        "type":  "string"
                                                                                                    },
                                                                         "Tenant":  {
                                                                                        "format":  "uuid",
                                                                                        "description":  "uniqueidentifier",
                                                                                        "type":  "string"
                                                                                    }
                                                                     },
                                                      "type":  "object"
                                                  }
                    },
    "title":  "CRM.ContractTemplate",
    "$comment":  "Generated from Mermaid ERD with property-level descriptions",
    "$schema":  "http://json-schema.org/draft-07/schema#",
    "type":  "object"
}

Contract Type

Aggregate Root: ContractType

Represents different types of contracts with their associated document types and phases.

erDiagram
    "CRM.ContractTypeDocumentTypes" {
        uniqueidentifier Id PK
        uniqueidentifier ContractTypeId FK
        nvarchar Name 
        uniqueidentifier DocGenTemplateRootId 
        bit IsScorable 
        uniqueidentifier Tenant 
        datetimeoffset EntityCreatedDateTime 
        datetimeoffset EntityUpdatedDateTime 
        uniqueidentifier EntityCreatedAuthToken 
        uniqueidentifier EntityUpdatedAuthToken 
        bit Concealed 
    }

    "CRM.ContractTypePhase_ContractTemplate" {
        uniqueidentifier Id PK
        uniqueidentifier ContractTypePhaseId FK
        uniqueidentifier ContractTemplateId FK
        uniqueidentifier Tenant 
        datetimeoffset EntityCreatedDateTime 
        datetimeoffset EntityUpdatedDateTime 
        uniqueidentifier EntityCreatedAuthToken 
        uniqueidentifier EntityUpdatedAuthToken 
        bit Concealed 
    }

    "CRM.ContractTypePhases" {
        uniqueidentifier Id PK
        uniqueidentifier ContractTypeId FK
        nvarchar Name 
        uniqueidentifier Tenant 
        datetimeoffset EntityCreatedDateTime 
        datetimeoffset EntityUpdatedDateTime 
        uniqueidentifier EntityCreatedAuthToken 
        uniqueidentifier EntityUpdatedAuthToken 
        bit Concealed 
    }

    "CRM.ContractTypes" {
        uniqueidentifier Id PK
        nvarchar Name 
        uniqueidentifier PropositionTemplateId 
        uniqueidentifier Tenant 
        datetimeoffset EntityCreatedDateTime 
        datetimeoffset EntityUpdatedDateTime 
        uniqueidentifier EntityCreatedAuthToken 
        uniqueidentifier EntityUpdatedAuthToken 
        uniqueidentifier GeneralContractTemplateId FK
        bit Concealed 
    }

    "CRM.ContractDocuments" }o--|| "CRM.ContractTypeDocumentTypes" : "ContractTypeDocumentTypeId"
    "CRM.ContractTypeDocumentTypes" }o--|| "CRM.ContractTypes" : "ContractTypeId"
    "CRM.ContractTypePhase_ContractTemplate" }o--|| "CRM.ContractTemplates" : "ContractTemplateId"
    "CRM.ContractTypePhase_ContractTemplate" }o--|| "CRM.ContractTypePhases" : "ContractTypePhaseId"
    "CRM.ContractTypePhases" }o--|| "CRM.ContractTypes" : "ContractTypeId"
    "CRM.ContractVersionOptionPhases" }o--|| "CRM.ContractTypePhases" : "ContractTypePhaseId"
    "CRM.Contracts" }o--|| "CRM.ContractTypes" : "ContractTypeId"
    "CRM.ContractTypes" }o--|| "CRM.ContractTemplates" : "GeneralContractTemplateId"
erDiagram
    "CRM.ContractTypeDocumentTypes" {
        uniqueidentifier Id PK
        uniqueidentifier ContractTypeId FK
        nvarchar Name 
        uniqueidentifier DocGenTemplateRootId 
        bit IsScorable 
        uniqueidentifier Tenant 
        datetimeoffset EntityCreatedDateTime 
        datetimeoffset EntityUpdatedDateTime 
        uniqueidentifier EntityCreatedAuthToken 
        uniqueidentifier EntityUpdatedAuthToken 
        bit Concealed 
    }

    "CRM.ContractTypePhase_ContractTemplate" {
        uniqueidentifier Id PK
        uniqueidentifier ContractTypePhaseId FK
        uniqueidentifier ContractTemplateId FK
        uniqueidentifier Tenant 
        datetimeoffset EntityCreatedDateTime 
        datetimeoffset EntityUpdatedDateTime 
        uniqueidentifier EntityCreatedAuthToken 
        uniqueidentifier EntityUpdatedAuthToken 
        bit Concealed 
    }

    "CRM.ContractTypePhases" {
        uniqueidentifier Id PK
        uniqueidentifier ContractTypeId FK
        nvarchar Name 
        uniqueidentifier Tenant 
        datetimeoffset EntityCreatedDateTime 
        datetimeoffset EntityUpdatedDateTime 
        uniqueidentifier EntityCreatedAuthToken 
        uniqueidentifier EntityUpdatedAuthToken 
        bit Concealed 
    }

    "CRM.ContractTypes" {
        uniqueidentifier Id PK
        nvarchar Name 
        uniqueidentifier PropositionTemplateId 
        uniqueidentifier Tenant 
        datetimeoffset EntityCreatedDateTime 
        datetimeoffset EntityUpdatedDateTime 
        uniqueidentifier EntityCreatedAuthToken 
        uniqueidentifier EntityUpdatedAuthToken 
        uniqueidentifier GeneralContractTemplateId FK
        bit Concealed 
    }

    "CRM.ContractDocuments" }o--|| "CRM.ContractTypeDocumentTypes" : "ContractTypeDocumentTypeId"
    "CRM.ContractTypeDocumentTypes" }o--|| "CRM.ContractTypes" : "ContractTypeId"
    "CRM.ContractTypePhase_ContractTemplate" }o--|| "CRM.ContractTemplates" : "ContractTemplateId"
    "CRM.ContractTypePhase_ContractTemplate" }o--|| "CRM.ContractTypePhases" : "ContractTypePhaseId"
    "CRM.ContractTypePhases" }o--|| "CRM.ContractTypes" : "ContractTypeId"
    "CRM.ContractVersionOptionPhases" }o--|| "CRM.ContractTypePhases" : "ContractTypePhaseId"
    "CRM.Contracts" }o--|| "CRM.ContractTypes" : "ContractTypeId"
    "CRM.ContractTypes" }o--|| "CRM.ContractTemplates" : "GeneralContractTemplateId"
{
    "definitions":  {
                        "CRM.ContractTypeDocumentTypes":  {
                                                              "properties":  {
                                                                                 "Tenant":  {
                                                                                                "format":  "uuid",
                                                                                                "description":  "uniqueidentifier",
                                                                                                "type":  "string"
                                                                                            },
                                                                                 "EntityUpdatedAuthToken":  {
                                                                                                                "format":  "uuid",
                                                                                                                "description":  "uniqueidentifier",
                                                                                                                "type":  "string"
                                                                                                            },
                                                                                 "DocGenTemplateRootId":  {
                                                                                                              "format":  "uuid",
                                                                                                              "description":  "uniqueidentifier",
                                                                                                              "type":  "string"
                                                                                                          },
                                                                                 "Id":  {
                                                                                            "format":  "uuid",
                                                                                            "description":  "uniqueidentifier",
                                                                                            "type":  "string"
                                                                                        },
                                                                                 "ContractTypeId":  {
                                                                                                        "type":  "string",
                                                                                                        "description":  "FK to CRM.ContractTypes"
                                                                                                    },
                                                                                 "Concealed":  {
                                                                                                   "type":  "boolean",
                                                                                                   "description":  "bit"
                                                                                               },
                                                                                 "EntityCreatedDateTime":  {
                                                                                                               "format":  "date-time",
                                                                                                               "description":  "datetimeoffset",
                                                                                                               "type":  "string"
                                                                                                           },
                                                                                 "Name":  {
                                                                                              "type":  "string",
                                                                                              "description":  "nvarchar"
                                                                                          },
                                                                                 "EntityUpdatedDateTime":  {
                                                                                                               "format":  "date-time",
                                                                                                               "description":  "datetimeoffset",
                                                                                                               "type":  "string"
                                                                                                           },
                                                                                 "EntityCreatedAuthToken":  {
                                                                                                                "format":  "uuid",
                                                                                                                "description":  "uniqueidentifier",
                                                                                                                "type":  "string"
                                                                                                            },
                                                                                 "IsScorable":  {
                                                                                                    "type":  "boolean",
                                                                                                    "description":  "bit"
                                                                                                }
                                                                             },
                                                              "type":  "object"
                                                          },
                        "CRM.ContractTypePhase_ContractTemplate":  {
                                                                       "properties":  {
                                                                                          "ContractTemplateId":  {
                                                                                                                     "type":  "string",
                                                                                                                     "description":  "FK to CRM.ContractTemplates"
                                                                                                                 },
                                                                                          "EntityUpdatedAuthToken":  {
                                                                                                                         "format":  "uuid",
                                                                                                                         "description":  "uniqueidentifier",
                                                                                                                         "type":  "string"
                                                                                                                     },
                                                                                          "Id":  {
                                                                                                     "format":  "uuid",
                                                                                                     "description":  "uniqueidentifier",
                                                                                                     "type":  "string"
                                                                                                 },
                                                                                          "ContractTypePhaseId":  {
                                                                                                                      "type":  "string",
                                                                                                                      "description":  "FK to CRM.ContractTypePhases"
                                                                                                                  },
                                                                                          "Concealed":  {
                                                                                                            "type":  "boolean",
                                                                                                            "description":  "bit"
                                                                                                        },
                                                                                          "EntityCreatedDateTime":  {
                                                                                                                        "format":  "date-time",
                                                                                                                        "description":  "datetimeoffset",
                                                                                                                        "type":  "string"
                                                                                                                    },
                                                                                          "EntityUpdatedDateTime":  {
                                                                                                                        "format":  "date-time",
                                                                                                                        "description":  "datetimeoffset",
                                                                                                                        "type":  "string"
                                                                                                                    },
                                                                                          "EntityCreatedAuthToken":  {
                                                                                                                         "format":  "uuid",
                                                                                                                         "description":  "uniqueidentifier",
                                                                                                                         "type":  "string"
                                                                                                                     },
                                                                                          "Tenant":  {
                                                                                                         "format":  "uuid",
                                                                                                         "description":  "uniqueidentifier",
                                                                                                         "type":  "string"
                                                                                                     }
                                                                                      },
                                                                       "type":  "object"
                                                                   },
                        "CRM.ContractTypePhases":  {
                                                       "properties":  {
                                                                          "Concealed":  {
                                                                                            "type":  "boolean",
                                                                                            "description":  "bit"
                                                                                        },
                                                                          "EntityUpdatedAuthToken":  {
                                                                                                         "format":  "uuid",
                                                                                                         "description":  "uniqueidentifier",
                                                                                                         "type":  "string"
                                                                                                     },
                                                                          "Id":  {
                                                                                     "format":  "uuid",
                                                                                     "description":  "uniqueidentifier",
                                                                                     "type":  "string"
                                                                                 },
                                                                          "ContractTypeId":  {
                                                                                                 "type":  "string",
                                                                                                 "description":  "FK to CRM.ContractTypes"
                                                                                             },
                                                                          "EntityCreatedDateTime":  {
                                                                                                        "format":  "date-time",
                                                                                                        "description":  "datetimeoffset",
                                                                                                        "type":  "string"
                                                                                                    },
                                                                          "Name":  {
                                                                                       "type":  "string",
                                                                                       "description":  "nvarchar"
                                                                                   },
                                                                          "EntityUpdatedDateTime":  {
                                                                                                        "format":  "date-time",
                                                                                                        "description":  "datetimeoffset",
                                                                                                        "type":  "string"
                                                                                                    },
                                                                          "EntityCreatedAuthToken":  {
                                                                                                         "format":  "uuid",
                                                                                                         "description":  "uniqueidentifier",
                                                                                                         "type":  "string"
                                                                                                     },
                                                                          "Tenant":  {
                                                                                         "format":  "uuid",
                                                                                         "description":  "uniqueidentifier",
                                                                                         "type":  "string"
                                                                                     }
                                                                      },
                                                       "type":  "object"
                                                   },
                        "CRM.ContractTypes":  {
                                                  "properties":  {
                                                                     "Concealed":  {
                                                                                       "type":  "boolean",
                                                                                       "description":  "bit"
                                                                                   },
                                                                     "EntityUpdatedAuthToken":  {
                                                                                                    "format":  "uuid",
                                                                                                    "description":  "uniqueidentifier",
                                                                                                    "type":  "string"
                                                                                                },
                                                                     "Id":  {
                                                                                "format":  "uuid",
                                                                                "description":  "uniqueidentifier",
                                                                                "type":  "string"
                                                                            },
                                                                     "GeneralContractTemplateId":  {
                                                                                                       "type":  "string",
                                                                                                       "description":  "FK to CRM.ContractTemplates"
                                                                                                   },
                                                                     "EntityUpdatedDateTime":  {
                                                                                                   "format":  "date-time",
                                                                                                   "description":  "datetimeoffset",
                                                                                                   "type":  "string"
                                                                                               },
                                                                     "EntityCreatedDateTime":  {
                                                                                                   "format":  "date-time",
                                                                                                   "description":  "datetimeoffset",
                                                                                                   "type":  "string"
                                                                                               },
                                                                     "Name":  {
                                                                                  "type":  "string",
                                                                                  "description":  "nvarchar"
                                                                              },
                                                                     "PropositionTemplateId":  {
                                                                                                   "format":  "uuid",
                                                                                                   "description":  "uniqueidentifier",
                                                                                                   "type":  "string"
                                                                                               },
                                                                     "EntityCreatedAuthToken":  {
                                                                                                    "format":  "uuid",
                                                                                                    "description":  "uniqueidentifier",
                                                                                                    "type":  "string"
                                                                                                },
                                                                     "Tenant":  {
                                                                                    "format":  "uuid",
                                                                                    "description":  "uniqueidentifier",
                                                                                    "type":  "string"
                                                                                }
                                                                 },
                                                  "type":  "object"
                                              }
                    },
    "title":  "CRM.ContractType",
    "$comment":  "Generated from Mermaid ERD with property-level descriptions",
    "$schema":  "http://json-schema.org/draft-07/schema#",
    "type":  "object"
}

Control Flex Asset Result Processor

Aggregate Root: ControlFlexAssetResultProcessor

Processes results from flex asset control operations and manages the outcome of flex asset activities.

erDiagram
    "CRM.ControlFlexAssetResultProcessors" {
        uniqueidentifier Id PK
        uniqueidentifier ControlFlexAssetResultProcessorImplementationId 
        nvarchar Name 
        nvarchar Description 
        nvarchar Config 
        uniqueidentifier Tenant 
        datetimeoffset EntityCreatedDateTime 
        datetimeoffset EntityUpdatedDateTime 
        uniqueidentifier EntityCreatedAuthToken 
        uniqueidentifier EntityUpdatedAuthToken 
        bit Concealed 
    }

    "CRM.FlexController_ControlFlexAssetResultProcessor" }o--|| "CRM.ControlFlexAssetResultProcessors" : "ControlFlexAssetResultProcessorId"
erDiagram
    "CRM.ControlFlexAssetResultProcessors" {
        uniqueidentifier Id PK
        uniqueidentifier ControlFlexAssetResultProcessorImplementationId 
        nvarchar Name 
        nvarchar Description 
        nvarchar Config 
        uniqueidentifier Tenant 
        datetimeoffset EntityCreatedDateTime 
        datetimeoffset EntityUpdatedDateTime 
        uniqueidentifier EntityCreatedAuthToken 
        uniqueidentifier EntityUpdatedAuthToken 
        bit Concealed 
    }

    "CRM.FlexController_ControlFlexAssetResultProcessor" }o--|| "CRM.ControlFlexAssetResultProcessors" : "ControlFlexAssetResultProcessorId"
{
    "definitions":  {
                        "CRM.ControlFlexAssetResultProcessors":  {
                                                                     "properties":  {
                                                                                        "Concealed":  {
                                                                                                          "type":  "boolean",
                                                                                                          "description":  "bit"
                                                                                                      },
                                                                                        "EntityUpdatedAuthToken":  {
                                                                                                                       "format":  "uuid",
                                                                                                                       "description":  "uniqueidentifier",
                                                                                                                       "type":  "string"
                                                                                                                   },
                                                                                        "Id":  {
                                                                                                   "format":  "uuid",
                                                                                                   "description":  "uniqueidentifier",
                                                                                                   "type":  "string"
                                                                                               },
                                                                                        "Config":  {
                                                                                                       "type":  "string",
                                                                                                       "description":  "nvarchar"
                                                                                                   },
                                                                                        "Description":  {
                                                                                                            "type":  "string",
                                                                                                            "description":  "nvarchar"
                                                                                                        },
                                                                                        "ControlFlexAssetResultProcessorImplementationId":  {
                                                                                                                                                "format":  "uuid",
                                                                                                                                                "description":  "uniqueidentifier",
                                                                                                                                                "type":  "string"
                                                                                                                                            },
                                                                                        "EntityCreatedDateTime":  {
                                                                                                                      "format":  "date-time",
                                                                                                                      "description":  "datetimeoffset",
                                                                                                                      "type":  "string"
                                                                                                                  },
                                                                                        "Name":  {
                                                                                                     "type":  "string",
                                                                                                     "description":  "nvarchar"
                                                                                                 },
                                                                                        "EntityUpdatedDateTime":  {
                                                                                                                      "format":  "date-time",
                                                                                                                      "description":  "datetimeoffset",
                                                                                                                      "type":  "string"
                                                                                                                  },
                                                                                        "EntityCreatedAuthToken":  {
                                                                                                                       "format":  "uuid",
                                                                                                                       "description":  "uniqueidentifier",
                                                                                                                       "type":  "string"
                                                                                                                   },
                                                                                        "Tenant":  {
                                                                                                       "format":  "uuid",
                                                                                                       "description":  "uniqueidentifier",
                                                                                                       "type":  "string"
                                                                                                   }
                                                                                    },
                                                                     "type":  "object"
                                                                 }
                    },
    "title":  "CRM.ControlFlexAssetResultProcessor",
    "$comment":  "Generated from Mermaid ERD with property-level descriptions",
    "$schema":  "http://json-schema.org/draft-07/schema#",
    "type":  "object"
}

Control Flex Asset Value Provider

Aggregate Root: ControlFlexAssetValueProvider

Provides values for flex asset control operations and manages the input data for flex asset activities.

erDiagram
    "CRM.ControlFlexAssetValueProviders" {
        uniqueidentifier Id PK
        uniqueidentifier ControlFlexAssetValueProviderImplementationId 
        nvarchar Name 
        nvarchar Description 
        nvarchar Config 
        uniqueidentifier Tenant 
        datetimeoffset EntityCreatedDateTime 
        datetimeoffset EntityUpdatedDateTime 
        uniqueidentifier EntityCreatedAuthToken 
        uniqueidentifier EntityUpdatedAuthToken 
        bit Concealed 
    }

    "CRM.FlexController_ControlFlexAssetValueProvider" }o--|| "CRM.ControlFlexAssetValueProviders" : "ControlFlexAssetValueProviderId"
erDiagram
    "CRM.ControlFlexAssetValueProviders" {
        uniqueidentifier Id PK
        uniqueidentifier ControlFlexAssetValueProviderImplementationId 
        nvarchar Name 
        nvarchar Description 
        nvarchar Config 
        uniqueidentifier Tenant 
        datetimeoffset EntityCreatedDateTime 
        datetimeoffset EntityUpdatedDateTime 
        uniqueidentifier EntityCreatedAuthToken 
        uniqueidentifier EntityUpdatedAuthToken 
        bit Concealed 
    }

    "CRM.FlexController_ControlFlexAssetValueProvider" }o--|| "CRM.ControlFlexAssetValueProviders" : "ControlFlexAssetValueProviderId"
{
    "definitions":  {
                        "CRM.ControlFlexAssetValueProviders":  {
                                                                   "properties":  {
                                                                                      "Concealed":  {
                                                                                                        "type":  "boolean",
                                                                                                        "description":  "bit"
                                                                                                    },
                                                                                      "EntityUpdatedAuthToken":  {
                                                                                                                     "format":  "uuid",
                                                                                                                     "description":  "uniqueidentifier",
                                                                                                                     "type":  "string"
                                                                                                                 },
                                                                                      "Id":  {
                                                                                                 "format":  "uuid",
                                                                                                 "description":  "uniqueidentifier",
                                                                                                 "type":  "string"
                                                                                             },
                                                                                      "Config":  {
                                                                                                     "type":  "string",
                                                                                                     "description":  "nvarchar"
                                                                                                 },
                                                                                      "Description":  {
                                                                                                          "type":  "string",
                                                                                                          "description":  "nvarchar"
                                                                                                      },
                                                                                      "EntityUpdatedDateTime":  {
                                                                                                                    "format":  "date-time",
                                                                                                                    "description":  "datetimeoffset",
                                                                                                                    "type":  "string"
                                                                                                                },
                                                                                      "EntityCreatedDateTime":  {
                                                                                                                    "format":  "date-time",
                                                                                                                    "description":  "datetimeoffset",
                                                                                                                    "type":  "string"
                                                                                                                },
                                                                                      "Name":  {
                                                                                                   "type":  "string",
                                                                                                   "description":  "nvarchar"
                                                                                               },
                                                                                      "ControlFlexAssetValueProviderImplementationId":  {
                                                                                                                                            "format":  "uuid",
                                                                                                                                            "description":  "uniqueidentifier",
                                                                                                                                            "type":  "string"
                                                                                                                                        },
                                                                                      "EntityCreatedAuthToken":  {
                                                                                                                     "format":  "uuid",
                                                                                                                     "description":  "uniqueidentifier",
                                                                                                                     "type":  "string"
                                                                                                                 },
                                                                                      "Tenant":  {
                                                                                                     "format":  "uuid",
                                                                                                     "description":  "uniqueidentifier",
                                                                                                     "type":  "string"
                                                                                                 }
                                                                                  },
                                                                   "type":  "object"
                                                               }
                    },
    "title":  "CRM.ControlFlexAssetValueProvider",
    "$comment":  "Generated from Mermaid ERD with property-level descriptions",
    "$schema":  "http://json-schema.org/draft-07/schema#",
    "type":  "object"
}

Customer

Aggregate Root: Customer

Represents customers in the CRM system with their addresses, names, and associations with metering points and categories.

erDiagram
    "CRM.CustomerAddresses" {
        uniqueidentifier Id PK
        uniqueidentifier CustomerId FK
        int AddressType 
        nvarchar Street 
        nvarchar HouseNumber 
        nvarchar Suffix 
        nvarchar PostalCode 
        nvarchar City 
        nvarchar Country 
        uniqueidentifier Tenant 
        datetimeoffset EntityCreatedDateTime 
        datetimeoffset EntityUpdatedDateTime 
        uniqueidentifier EntityCreatedAuthToken 
        uniqueidentifier EntityUpdatedAuthToken 
        bit Concealed 
    }

    "CRM.CustomerNames" {
        uniqueidentifier Id PK
        uniqueidentifier CustomerId FK
        nvarchar Name 
        int NameType 
        uniqueidentifier Tenant 
        datetimeoffset EntityCreatedDateTime 
        datetimeoffset EntityUpdatedDateTime 
        uniqueidentifier EntityCreatedAuthToken 
        uniqueidentifier EntityUpdatedAuthToken 
        bit Concealed 
    }

    "CRM.Customer_CategoryLabel" {
        uniqueidentifier Id PK
        uniqueidentifier CustomerId FK
        uniqueidentifier CategoryId 
        uniqueidentifier CategoryLabelId 
        uniqueidentifier Tenant 
        datetimeoffset EntityCreatedDateTime 
        datetimeoffset EntityUpdatedDateTime 
        uniqueidentifier EntityCreatedAuthToken 
        uniqueidentifier EntityUpdatedAuthToken 
        bit Concealed 
    }

    "CRM.Customer_MeteringPoint" {
        uniqueidentifier Id PK
        uniqueidentifier CustomerId FK
        uniqueidentifier MeteringPointId 
        uniqueidentifier Tenant 
        datetimeoffset EntityCreatedDateTime 
        datetimeoffset EntityUpdatedDateTime 
        uniqueidentifier EntityCreatedAuthToken 
        uniqueidentifier EntityUpdatedAuthToken 
        bit Concealed 
    }

    "CRM.Customer_SBI" {
        uniqueidentifier Id PK
        uniqueidentifier CustomerId FK
        uniqueidentifier SBIId FK
        bit IsMainSBI 
        uniqueidentifier Tenant 
        datetimeoffset EntityCreatedDateTime 
        datetimeoffset EntityUpdatedDateTime 
        uniqueidentifier EntityCreatedAuthToken 
        uniqueidentifier EntityUpdatedAuthToken 
        bit Concealed 
    }

    "CRM.Customers" {
        uniqueidentifier Id PK
        nvarchar IBAN 
        nvarchar VATNumber 
        nvarchar Website 
        uniqueidentifier Tenant 
        datetimeoffset EntityCreatedDateTime 
        datetimeoffset EntityUpdatedDateTime 
        uniqueidentifier EntityCreatedAuthToken 
        uniqueidentifier EntityUpdatedAuthToken 
        nvarchar ChamberOfCommerceNumber 
        uniqueidentifier CollectiveId FK
        nvarchar LegalForm 
        nvarchar LegalFormCode 
        uniqueidentifier ChatId 
        bit IsVirtual 
        nvarchar Name 
        nvarchar InternalReference 
        uniqueidentifier AccountManagerUserId 
        bit Concealed 
    }

    "CRM.CustomerAddresses" }o--|| "CRM.Customers" : "CustomerId"
    "CRM.CustomerNames" }o--|| "CRM.Customers" : "CustomerId"
    "CRM.Customer_CategoryLabel" }o--|| "CRM.Customers" : "CustomerId"
    "CRM.Customer_MeteringPoint" }o--|| "CRM.Customers" : "CustomerId"
    "CRM.Customer_SBI" }o--|| "CRM.Customers" : "CustomerId"
    "CRM.Customer_SBI" }o--|| "CRM.SBIs" : "SBIId"
    "CRM.FlexControllers" }o--|| "CRM.Customers" : "CustomerId"
    "CRM.ProductComponentModelPricingRequests" }o--|| "CRM.Customers" : "CustomerId"
    "CRM.PropositionModelPricingRequests" }o--|| "CRM.Customers" : "CustomerId"
    "CRM.SalesBatches" }o--|| "CRM.Customers" : "CustomerId"
    "CRM.SalesBatchGenerators" }o--|| "CRM.Customers" : "CustomerId"
    "CRM.Sites" }o--|| "CRM.Customers" : "CustomerId"
    "CRM.ProductComponentModelPricingRequest_Customer" }o--|| "CRM.Customers" : "CustomerId"
    "CRM.PropositionModelPricingRequest_Customer" }o--|| "CRM.Customers" : "CustomerId"
    "CRM.EstimatedSalesVolumes" }o--|| "CRM.Customers" : "CustomerId"
    "CRM.Contracts" }o--|| "CRM.Customers" : "CustomerId"
    "CRM.Customer_Contact" }o--|| "CRM.Customers" : "CustomerId"
    "CRM.Customers" }o--|| "CRM.Collectives" : "CollectiveId"
erDiagram
    "CRM.CustomerAddresses" {
        uniqueidentifier Id PK
        uniqueidentifier CustomerId FK
        int AddressType 
        nvarchar Street 
        nvarchar HouseNumber 
        nvarchar Suffix 
        nvarchar PostalCode 
        nvarchar City 
        nvarchar Country 
        uniqueidentifier Tenant 
        datetimeoffset EntityCreatedDateTime 
        datetimeoffset EntityUpdatedDateTime 
        uniqueidentifier EntityCreatedAuthToken 
        uniqueidentifier EntityUpdatedAuthToken 
        bit Concealed 
    }

    "CRM.CustomerNames" {
        uniqueidentifier Id PK
        uniqueidentifier CustomerId FK
        nvarchar Name 
        int NameType 
        uniqueidentifier Tenant 
        datetimeoffset EntityCreatedDateTime 
        datetimeoffset EntityUpdatedDateTime 
        uniqueidentifier EntityCreatedAuthToken 
        uniqueidentifier EntityUpdatedAuthToken 
        bit Concealed 
    }

    "CRM.Customer_CategoryLabel" {
        uniqueidentifier Id PK
        uniqueidentifier CustomerId FK
        uniqueidentifier CategoryId 
        uniqueidentifier CategoryLabelId 
        uniqueidentifier Tenant 
        datetimeoffset EntityCreatedDateTime 
        datetimeoffset EntityUpdatedDateTime 
        uniqueidentifier EntityCreatedAuthToken 
        uniqueidentifier EntityUpdatedAuthToken 
        bit Concealed 
    }

    "CRM.Customer_MeteringPoint" {
        uniqueidentifier Id PK
        uniqueidentifier CustomerId FK
        uniqueidentifier MeteringPointId 
        uniqueidentifier Tenant 
        datetimeoffset EntityCreatedDateTime 
        datetimeoffset EntityUpdatedDateTime 
        uniqueidentifier EntityCreatedAuthToken 
        uniqueidentifier EntityUpdatedAuthToken 
        bit Concealed 
    }

    "CRM.Customer_SBI" {
        uniqueidentifier Id PK
        uniqueidentifier CustomerId FK
        uniqueidentifier SBIId FK
        bit IsMainSBI 
        uniqueidentifier Tenant 
        datetimeoffset EntityCreatedDateTime 
        datetimeoffset EntityUpdatedDateTime 
        uniqueidentifier EntityCreatedAuthToken 
        uniqueidentifier EntityUpdatedAuthToken 
        bit Concealed 
    }

    "CRM.Customers" {
        uniqueidentifier Id PK
        nvarchar IBAN 
        nvarchar VATNumber 
        nvarchar Website 
        uniqueidentifier Tenant 
        datetimeoffset EntityCreatedDateTime 
        datetimeoffset EntityUpdatedDateTime 
        uniqueidentifier EntityCreatedAuthToken 
        uniqueidentifier EntityUpdatedAuthToken 
        nvarchar ChamberOfCommerceNumber 
        uniqueidentifier CollectiveId FK
        nvarchar LegalForm 
        nvarchar LegalFormCode 
        uniqueidentifier ChatId 
        bit IsVirtual 
        nvarchar Name 
        nvarchar InternalReference 
        uniqueidentifier AccountManagerUserId 
        bit Concealed 
    }

    "CRM.CustomerAddresses" }o--|| "CRM.Customers" : "CustomerId"
    "CRM.CustomerNames" }o--|| "CRM.Customers" : "CustomerId"
    "CRM.Customer_CategoryLabel" }o--|| "CRM.Customers" : "CustomerId"
    "CRM.Customer_MeteringPoint" }o--|| "CRM.Customers" : "CustomerId"
    "CRM.Customer_SBI" }o--|| "CRM.Customers" : "CustomerId"
    "CRM.Customer_SBI" }o--|| "CRM.SBIs" : "SBIId"
    "CRM.FlexControllers" }o--|| "CRM.Customers" : "CustomerId"
    "CRM.ProductComponentModelPricingRequests" }o--|| "CRM.Customers" : "CustomerId"
    "CRM.PropositionModelPricingRequests" }o--|| "CRM.Customers" : "CustomerId"
    "CRM.SalesBatches" }o--|| "CRM.Customers" : "CustomerId"
    "CRM.SalesBatchGenerators" }o--|| "CRM.Customers" : "CustomerId"
    "CRM.Sites" }o--|| "CRM.Customers" : "CustomerId"
    "CRM.ProductComponentModelPricingRequest_Customer" }o--|| "CRM.Customers" : "CustomerId"
    "CRM.PropositionModelPricingRequest_Customer" }o--|| "CRM.Customers" : "CustomerId"
    "CRM.EstimatedSalesVolumes" }o--|| "CRM.Customers" : "CustomerId"
    "CRM.Contracts" }o--|| "CRM.Customers" : "CustomerId"
    "CRM.Customer_Contact" }o--|| "CRM.Customers" : "CustomerId"
    "CRM.Customers" }o--|| "CRM.Collectives" : "CollectiveId"
{
    "definitions":  {
                        "CRM.Customer_CategoryLabel":  {
                                                           "properties":  {
                                                                              "Concealed":  {
                                                                                                "type":  "boolean",
                                                                                                "description":  "bit"
                                                                                            },
                                                                              "EntityUpdatedAuthToken":  {
                                                                                                             "format":  "uuid",
                                                                                                             "description":  "uniqueidentifier",
                                                                                                             "type":  "string"
                                                                                                         },
                                                                              "Id":  {
                                                                                         "format":  "uuid",
                                                                                         "description":  "uniqueidentifier",
                                                                                         "type":  "string"
                                                                                     },
                                                                              "CategoryLabelId":  {
                                                                                                      "format":  "uuid",
                                                                                                      "description":  "uniqueidentifier",
                                                                                                      "type":  "string"
                                                                                                  },
                                                                              "CustomerId":  {
                                                                                                 "type":  "string",
                                                                                                 "description":  "FK to CRM.Customers"
                                                                                             },
                                                                              "EntityCreatedDateTime":  {
                                                                                                            "format":  "date-time",
                                                                                                            "description":  "datetimeoffset",
                                                                                                            "type":  "string"
                                                                                                        },
                                                                              "EntityUpdatedDateTime":  {
                                                                                                            "format":  "date-time",
                                                                                                            "description":  "datetimeoffset",
                                                                                                            "type":  "string"
                                                                                                        },
                                                                              "CategoryId":  {
                                                                                                 "format":  "uuid",
                                                                                                 "description":  "uniqueidentifier",
                                                                                                 "type":  "string"
                                                                                             },
                                                                              "EntityCreatedAuthToken":  {
                                                                                                             "format":  "uuid",
                                                                                                             "description":  "uniqueidentifier",
                                                                                                             "type":  "string"
                                                                                                         },
                                                                              "Tenant":  {
                                                                                             "format":  "uuid",
                                                                                             "description":  "uniqueidentifier",
                                                                                             "type":  "string"
                                                                                         }
                                                                          },
                                                           "type":  "object"
                                                       },
                        "CRM.CustomerAddresses":  {
                                                      "properties":  {
                                                                         "Street":  {
                                                                                        "type":  "string",
                                                                                        "description":  "nvarchar"
                                                                                    },
                                                                         "Country":  {
                                                                                         "type":  "string",
                                                                                         "description":  "nvarchar"
                                                                                     },
                                                                         "Id":  {
                                                                                    "format":  "uuid",
                                                                                    "description":  "uniqueidentifier",
                                                                                    "type":  "string"
                                                                                },
                                                                         "EntityUpdatedAuthToken":  {
                                                                                                        "format":  "uuid",
                                                                                                        "description":  "uniqueidentifier",
                                                                                                        "type":  "string"
                                                                                                    },
                                                                         "Concealed":  {
                                                                                           "type":  "boolean",
                                                                                           "description":  "bit"
                                                                                       },
                                                                         "EntityCreatedAuthToken":  {
                                                                                                        "format":  "uuid",
                                                                                                        "description":  "uniqueidentifier",
                                                                                                        "type":  "string"
                                                                                                    },
                                                                         "HouseNumber":  {
                                                                                             "type":  "string",
                                                                                             "description":  "nvarchar"
                                                                                         },
                                                                         "City":  {
                                                                                      "type":  "string",
                                                                                      "description":  "nvarchar"
                                                                                  },
                                                                         "Suffix":  {
                                                                                        "type":  "string",
                                                                                        "description":  "nvarchar"
                                                                                    },
                                                                         "EntityUpdatedDateTime":  {
                                                                                                       "format":  "date-time",
                                                                                                       "description":  "datetimeoffset",
                                                                                                       "type":  "string"
                                                                                                   },
                                                                         "CustomerId":  {
                                                                                            "type":  "string",
                                                                                            "description":  "FK to CRM.Customers"
                                                                                        },
                                                                         "Tenant":  {
                                                                                        "format":  "uuid",
                                                                                        "description":  "uniqueidentifier",
                                                                                        "type":  "string"
                                                                                    },
                                                                         "PostalCode":  {
                                                                                            "type":  "string",
                                                                                            "description":  "nvarchar"
                                                                                        },
                                                                         "EntityCreatedDateTime":  {
                                                                                                       "format":  "date-time",
                                                                                                       "description":  "datetimeoffset",
                                                                                                       "type":  "string"
                                                                                                   },
                                                                         "AddressType":  {
                                                                                             "type":  "integer",
                                                                                             "description":  "int"
                                                                                         }
                                                                     },
                                                      "type":  "object"
                                                  },
                        "CRM.Customers":  {
                                              "properties":  {
                                                                 "Concealed":  {
                                                                                   "type":  "boolean",
                                                                                   "description":  "bit"
                                                                               },
                                                                 "Id":  {
                                                                            "format":  "uuid",
                                                                            "description":  "uniqueidentifier",
                                                                            "type":  "string"
                                                                        },
                                                                 "EntityUpdatedAuthToken":  {
                                                                                                "format":  "uuid",
                                                                                                "description":  "uniqueidentifier",
                                                                                                "type":  "string"
                                                                                            },
                                                                 "Name":  {
                                                                              "type":  "string",
                                                                              "description":  "nvarchar"
                                                                          },
                                                                 "IBAN":  {
                                                                              "type":  "string",
                                                                              "description":  "nvarchar"
                                                                          },
                                                                 "EntityCreatedAuthToken":  {
                                                                                                "format":  "uuid",
                                                                                                "description":  "uniqueidentifier",
                                                                                                "type":  "string"
                                                                                            },
                                                                 "IsVirtual":  {
                                                                                   "type":  "boolean",
                                                                                   "description":  "bit"
                                                                               },
                                                                 "ChamberOfCommerceNumber":  {
                                                                                                 "type":  "string",
                                                                                                 "description":  "nvarchar"
                                                                                             },
                                                                 "Website":  {
                                                                                 "type":  "string",
                                                                                 "description":  "nvarchar"
                                                                             },
                                                                 "EntityUpdatedDateTime":  {
                                                                                               "format":  "date-time",
                                                                                               "description":  "datetimeoffset",
                                                                                               "type":  "string"
                                                                                           },
                                                                 "LegalFormCode":  {
                                                                                       "type":  "string",
                                                                                       "description":  "nvarchar"
                                                                                   },
                                                                 "CollectiveId":  {
                                                                                      "type":  "string",
                                                                                      "description":  "FK to CRM.Collectives"
                                                                                  },
                                                                 "Tenant":  {
                                                                                "format":  "uuid",
                                                                                "description":  "uniqueidentifier",
                                                                                "type":  "string"
                                                                            },
                                                                 "InternalReference":  {
                                                                                           "type":  "string",
                                                                                           "description":  "nvarchar"
                                                                                       },
                                                                 "AccountManagerUserId":  {
                                                                                              "format":  "uuid",
                                                                                              "description":  "uniqueidentifier",
                                                                                              "type":  "string"
                                                                                          },
                                                                 "VATNumber":  {
                                                                                   "type":  "string",
                                                                                   "description":  "nvarchar"
                                                                               },
                                                                 "ChatId":  {
                                                                                "format":  "uuid",
                                                                                "description":  "uniqueidentifier",
                                                                                "type":  "string"
                                                                            },
                                                                 "EntityCreatedDateTime":  {
                                                                                               "format":  "date-time",
                                                                                               "description":  "datetimeoffset",
                                                                                               "type":  "string"
                                                                                           },
                                                                 "LegalForm":  {
                                                                                   "type":  "string",
                                                                                   "description":  "nvarchar"
                                                                               }
                                                             },
                                              "type":  "object"
                                          },
                        "CRM.Customer_SBI":  {
                                                 "properties":  {
                                                                    "Concealed":  {
                                                                                      "type":  "boolean",
                                                                                      "description":  "bit"
                                                                                  },
                                                                    "EntityUpdatedAuthToken":  {
                                                                                                   "format":  "uuid",
                                                                                                   "description":  "uniqueidentifier",
                                                                                                   "type":  "string"
                                                                                               },
                                                                    "Id":  {
                                                                               "format":  "uuid",
                                                                               "description":  "uniqueidentifier",
                                                                               "type":  "string"
                                                                           },
                                                                    "SBIId":  {
                                                                                  "type":  "string",
                                                                                  "description":  "FK to CRM.SBIs"
                                                                              },
                                                                    "CustomerId":  {
                                                                                       "type":  "string",
                                                                                       "description":  "FK to CRM.Customers"
                                                                                   },
                                                                    "EntityCreatedDateTime":  {
                                                                                                  "format":  "date-time",
                                                                                                  "description":  "datetimeoffset",
                                                                                                  "type":  "string"
                                                                                              },
                                                                    "EntityUpdatedDateTime":  {
                                                                                                  "format":  "date-time",
                                                                                                  "description":  "datetimeoffset",
                                                                                                  "type":  "string"
                                                                                              },
                                                                    "IsMainSBI":  {
                                                                                      "type":  "boolean",
                                                                                      "description":  "bit"
                                                                                  },
                                                                    "EntityCreatedAuthToken":  {
                                                                                                   "format":  "uuid",
                                                                                                   "description":  "uniqueidentifier",
                                                                                                   "type":  "string"
                                                                                               },
                                                                    "Tenant":  {
                                                                                   "format":  "uuid",
                                                                                   "description":  "uniqueidentifier",
                                                                                   "type":  "string"
                                                                               }
                                                                },
                                                 "type":  "object"
                                             },
                        "CRM.Customer_MeteringPoint":  {
                                                           "properties":  {
                                                                              "Concealed":  {
                                                                                                "type":  "boolean",
                                                                                                "description":  "bit"
                                                                                            },
                                                                              "EntityUpdatedAuthToken":  {
                                                                                                             "format":  "uuid",
                                                                                                             "description":  "uniqueidentifier",
                                                                                                             "type":  "string"
                                                                                                         },
                                                                              "Id":  {
                                                                                         "format":  "uuid",
                                                                                         "description":  "uniqueidentifier",
                                                                                         "type":  "string"
                                                                                     },
                                                                              "CustomerId":  {
                                                                                                 "type":  "string",
                                                                                                 "description":  "FK to CRM.Customers"
                                                                                             },
                                                                              "MeteringPointId":  {
                                                                                                      "format":  "uuid",
                                                                                                      "description":  "uniqueidentifier",
                                                                                                      "type":  "string"
                                                                                                  },
                                                                              "EntityCreatedDateTime":  {
                                                                                                            "format":  "date-time",
                                                                                                            "description":  "datetimeoffset",
                                                                                                            "type":  "string"
                                                                                                        },
                                                                              "EntityUpdatedDateTime":  {
                                                                                                            "format":  "date-time",
                                                                                                            "description":  "datetimeoffset",
                                                                                                            "type":  "string"
                                                                                                        },
                                                                              "EntityCreatedAuthToken":  {
                                                                                                             "format":  "uuid",
                                                                                                             "description":  "uniqueidentifier",
                                                                                                             "type":  "string"
                                                                                                         },
                                                                              "Tenant":  {
                                                                                             "format":  "uuid",
                                                                                             "description":  "uniqueidentifier",
                                                                                             "type":  "string"
                                                                                         }
                                                                          },
                                                           "type":  "object"
                                                       },
                        "CRM.CustomerNames":  {
                                                  "properties":  {
                                                                     "Concealed":  {
                                                                                       "type":  "boolean",
                                                                                       "description":  "bit"
                                                                                   },
                                                                     "EntityUpdatedAuthToken":  {
                                                                                                    "format":  "uuid",
                                                                                                    "description":  "uniqueidentifier",
                                                                                                    "type":  "string"
                                                                                                },
                                                                     "Id":  {
                                                                                "format":  "uuid",
                                                                                "description":  "uniqueidentifier",
                                                                                "type":  "string"
                                                                            },
                                                                     "CustomerId":  {
                                                                                        "type":  "string",
                                                                                        "description":  "FK to CRM.Customers"
                                                                                    },
                                                                     "EntityCreatedDateTime":  {
                                                                                                   "format":  "date-time",
                                                                                                   "description":  "datetimeoffset",
                                                                                                   "type":  "string"
                                                                                               },
                                                                     "Name":  {
                                                                                  "type":  "string",
                                                                                  "description":  "nvarchar"
                                                                              },
                                                                     "EntityUpdatedDateTime":  {
                                                                                                   "format":  "date-time",
                                                                                                   "description":  "datetimeoffset",
                                                                                                   "type":  "string"
                                                                                               },
                                                                     "NameType":  {
                                                                                      "type":  "integer",
                                                                                      "description":  "int"
                                                                                  },
                                                                     "EntityCreatedAuthToken":  {
                                                                                                    "format":  "uuid",
                                                                                                    "description":  "uniqueidentifier",
                                                                                                    "type":  "string"
                                                                                                },
                                                                     "Tenant":  {
                                                                                    "format":  "uuid",
                                                                                    "description":  "uniqueidentifier",
                                                                                    "type":  "string"
                                                                                }
                                                                 },
                                                  "type":  "object"
                                              }
                    },
    "title":  "CRM.Customer",
    "$comment":  "Generated from Mermaid ERD with property-level descriptions",
    "$schema":  "http://json-schema.org/draft-07/schema#",
    "type":  "object"
}

Flex Controller

Aggregate Root: FlexController

Controls flex asset operations and manages the relationship between sites, installations, and flex asset processors.

erDiagram
    "CRM.FlexController_ControlFlexAssetResultProcessor" {
        uniqueidentifier Id PK
        uniqueidentifier FlexControllerId FK
        uniqueidentifier ControlFlexAssetResultProcessorId FK
        uniqueidentifier Tenant 
        datetimeoffset EntityCreatedDateTime 
        datetimeoffset EntityUpdatedDateTime 
        uniqueidentifier EntityCreatedAuthToken 
        uniqueidentifier EntityUpdatedAuthToken 
        bit Concealed 
    }

    "CRM.FlexController_ControlFlexAssetValueProvider" {
        uniqueidentifier Id PK
        uniqueidentifier FlexControllerId FK
        uniqueidentifier ControlFlexAssetValueProviderId FK
        uniqueidentifier Tenant 
        datetimeoffset EntityCreatedDateTime 
        datetimeoffset EntityUpdatedDateTime 
        uniqueidentifier EntityCreatedAuthToken 
        uniqueidentifier EntityUpdatedAuthToken 
        bit Concealed 
    }

    "CRM.FlexController_Installation" {
        uniqueidentifier Id PK
        uniqueidentifier FlexControllerId FK
        uniqueidentifier InstallationId 
        uniqueidentifier Tenant 
        datetimeoffset EntityCreatedDateTime 
        datetimeoffset EntityUpdatedDateTime 
        uniqueidentifier EntityCreatedAuthToken 
        uniqueidentifier EntityUpdatedAuthToken 
        bit Concealed 
    }

    "CRM.FlexController_Site" {
        uniqueidentifier Id PK
        uniqueidentifier FlexControllerId FK
        uniqueidentifier SiteId 
        uniqueidentifier Tenant 
        datetimeoffset EntityCreatedDateTime 
        datetimeoffset EntityUpdatedDateTime 
        uniqueidentifier EntityCreatedAuthToken 
        uniqueidentifier EntityUpdatedAuthToken 
        bit Concealed 
    }

    "CRM.FlexController_Site_MeteringPoint" {
        uniqueidentifier Id PK
        uniqueidentifier FlexControllerId FK
        uniqueidentifier SiteMeteringPointId 
        uniqueidentifier Tenant 
        datetimeoffset EntityCreatedDateTime 
        datetimeoffset EntityUpdatedDateTime 
        uniqueidentifier EntityCreatedAuthToken 
        uniqueidentifier EntityUpdatedAuthToken 
        bit Concealed 
    }

    "CRM.FlexControllers" {
        uniqueidentifier Id PK
        nvarchar Name 
        nvarchar Description 
        nvarchar Schedule 
        uniqueidentifier ScriptId 
        uniqueidentifier CustomerId FK
        uniqueidentifier Tenant 
        datetimeoffset EntityCreatedDateTime 
        datetimeoffset EntityUpdatedDateTime 
        uniqueidentifier EntityCreatedAuthToken 
        uniqueidentifier EntityUpdatedAuthToken 
        bit Concealed 
    }

    "CRM.FlexController_ControlFlexAssetResultProcessor" }o--|| "CRM.ControlFlexAssetResultProcessors" : "ControlFlexAssetResultProcessorId"
    "CRM.FlexController_ControlFlexAssetResultProcessor" }o--|| "CRM.FlexControllers" : "FlexControllerId"
    "CRM.FlexController_ControlFlexAssetValueProvider" }o--|| "CRM.ControlFlexAssetValueProviders" : "ControlFlexAssetValueProviderId"
    "CRM.FlexController_ControlFlexAssetValueProvider" }o--|| "CRM.FlexControllers" : "FlexControllerId"
    "CRM.FlexController_Installation" }o--|| "CRM.FlexControllers" : "FlexControllerId"
    "CRM.FlexController_Site" }o--|| "CRM.FlexControllers" : "FlexControllerId"
    "CRM.FlexController_Site_MeteringPoint" }o--|| "CRM.FlexControllers" : "FlexControllerId"
    "CRM.FlexControllers" }o--|| "CRM.Customers" : "CustomerId"
erDiagram
    "CRM.FlexController_ControlFlexAssetResultProcessor" {
        uniqueidentifier Id PK
        uniqueidentifier FlexControllerId FK
        uniqueidentifier ControlFlexAssetResultProcessorId FK
        uniqueidentifier Tenant 
        datetimeoffset EntityCreatedDateTime 
        datetimeoffset EntityUpdatedDateTime 
        uniqueidentifier EntityCreatedAuthToken 
        uniqueidentifier EntityUpdatedAuthToken 
        bit Concealed 
    }

    "CRM.FlexController_ControlFlexAssetValueProvider" {
        uniqueidentifier Id PK
        uniqueidentifier FlexControllerId FK
        uniqueidentifier ControlFlexAssetValueProviderId FK
        uniqueidentifier Tenant 
        datetimeoffset EntityCreatedDateTime 
        datetimeoffset EntityUpdatedDateTime 
        uniqueidentifier EntityCreatedAuthToken 
        uniqueidentifier EntityUpdatedAuthToken 
        bit Concealed 
    }

    "CRM.FlexController_Installation" {
        uniqueidentifier Id PK
        uniqueidentifier FlexControllerId FK
        uniqueidentifier InstallationId 
        uniqueidentifier Tenant 
        datetimeoffset EntityCreatedDateTime 
        datetimeoffset EntityUpdatedDateTime 
        uniqueidentifier EntityCreatedAuthToken 
        uniqueidentifier EntityUpdatedAuthToken 
        bit Concealed 
    }

    "CRM.FlexController_Site" {
        uniqueidentifier Id PK
        uniqueidentifier FlexControllerId FK
        uniqueidentifier SiteId 
        uniqueidentifier Tenant 
        datetimeoffset EntityCreatedDateTime 
        datetimeoffset EntityUpdatedDateTime 
        uniqueidentifier EntityCreatedAuthToken 
        uniqueidentifier EntityUpdatedAuthToken 
        bit Concealed 
    }

    "CRM.FlexController_Site_MeteringPoint" {
        uniqueidentifier Id PK
        uniqueidentifier FlexControllerId FK
        uniqueidentifier SiteMeteringPointId 
        uniqueidentifier Tenant 
        datetimeoffset EntityCreatedDateTime 
        datetimeoffset EntityUpdatedDateTime 
        uniqueidentifier EntityCreatedAuthToken 
        uniqueidentifier EntityUpdatedAuthToken 
        bit Concealed 
    }

    "CRM.FlexControllers" {
        uniqueidentifier Id PK
        nvarchar Name 
        nvarchar Description 
        nvarchar Schedule 
        uniqueidentifier ScriptId 
        uniqueidentifier CustomerId FK
        uniqueidentifier Tenant 
        datetimeoffset EntityCreatedDateTime 
        datetimeoffset EntityUpdatedDateTime 
        uniqueidentifier EntityCreatedAuthToken 
        uniqueidentifier EntityUpdatedAuthToken 
        bit Concealed 
    }

    "CRM.FlexController_ControlFlexAssetResultProcessor" }o--|| "CRM.ControlFlexAssetResultProcessors" : "ControlFlexAssetResultProcessorId"
    "CRM.FlexController_ControlFlexAssetResultProcessor" }o--|| "CRM.FlexControllers" : "FlexControllerId"
    "CRM.FlexController_ControlFlexAssetValueProvider" }o--|| "CRM.ControlFlexAssetValueProviders" : "ControlFlexAssetValueProviderId"
    "CRM.FlexController_ControlFlexAssetValueProvider" }o--|| "CRM.FlexControllers" : "FlexControllerId"
    "CRM.FlexController_Installation" }o--|| "CRM.FlexControllers" : "FlexControllerId"
    "CRM.FlexController_Site" }o--|| "CRM.FlexControllers" : "FlexControllerId"
    "CRM.FlexController_Site_MeteringPoint" }o--|| "CRM.FlexControllers" : "FlexControllerId"
    "CRM.FlexControllers" }o--|| "CRM.Customers" : "CustomerId"
{
    "definitions":  {
                        "CRM.FlexController_Site":  {
                                                        "properties":  {
                                                                           "Concealed":  {
                                                                                             "type":  "boolean",
                                                                                             "description":  "bit"
                                                                                         },
                                                                           "FlexControllerId":  {
                                                                                                    "type":  "string",
                                                                                                    "description":  "FK to CRM.FlexControllers"
                                                                                                },
                                                                           "Id":  {
                                                                                      "format":  "uuid",
                                                                                      "description":  "uniqueidentifier",
                                                                                      "type":  "string"
                                                                                  },
                                                                           "SiteId":  {
                                                                                          "format":  "uuid",
                                                                                          "description":  "uniqueidentifier",
                                                                                          "type":  "string"
                                                                                      },
                                                                           "EntityUpdatedAuthToken":  {
                                                                                                          "format":  "uuid",
                                                                                                          "description":  "uniqueidentifier",
                                                                                                          "type":  "string"
                                                                                                      },
                                                                           "EntityCreatedDateTime":  {
                                                                                                         "format":  "date-time",
                                                                                                         "description":  "datetimeoffset",
                                                                                                         "type":  "string"
                                                                                                     },
                                                                           "EntityUpdatedDateTime":  {
                                                                                                         "format":  "date-time",
                                                                                                         "description":  "datetimeoffset",
                                                                                                         "type":  "string"
                                                                                                     },
                                                                           "EntityCreatedAuthToken":  {
                                                                                                          "format":  "uuid",
                                                                                                          "description":  "uniqueidentifier",
                                                                                                          "type":  "string"
                                                                                                      },
                                                                           "Tenant":  {
                                                                                          "format":  "uuid",
                                                                                          "description":  "uniqueidentifier",
                                                                                          "type":  "string"
                                                                                      }
                                                                       },
                                                        "type":  "object"
                                                    },
                        "CRM.FlexControllers":  {
                                                    "properties":  {
                                                                       "Concealed":  {
                                                                                         "type":  "boolean",
                                                                                         "description":  "bit"
                                                                                     },
                                                                       "ScriptId":  {
                                                                                        "format":  "uuid",
                                                                                        "description":  "uniqueidentifier",
                                                                                        "type":  "string"
                                                                                    },
                                                                       "Description":  {
                                                                                           "type":  "string",
                                                                                           "description":  "nvarchar"
                                                                                       },
                                                                       "EntityUpdatedAuthToken":  {
                                                                                                      "format":  "uuid",
                                                                                                      "description":  "uniqueidentifier",
                                                                                                      "type":  "string"
                                                                                                  },
                                                                       "Name":  {
                                                                                    "type":  "string",
                                                                                    "description":  "nvarchar"
                                                                                },
                                                                       "EntityCreatedAuthToken":  {
                                                                                                      "format":  "uuid",
                                                                                                      "description":  "uniqueidentifier",
                                                                                                      "type":  "string"
                                                                                                  },
                                                                       "CustomerId":  {
                                                                                          "type":  "string",
                                                                                          "description":  "FK to CRM.Customers"
                                                                                      },
                                                                       "EntityUpdatedDateTime":  {
                                                                                                     "format":  "date-time",
                                                                                                     "description":  "datetimeoffset",
                                                                                                     "type":  "string"
                                                                                                 },
                                                                       "Schedule":  {
                                                                                        "type":  "string",
                                                                                        "description":  "nvarchar"
                                                                                    },
                                                                       "Tenant":  {
                                                                                      "format":  "uuid",
                                                                                      "description":  "uniqueidentifier",
                                                                                      "type":  "string"
                                                                                  },
                                                                       "Id":  {
                                                                                  "format":  "uuid",
                                                                                  "description":  "uniqueidentifier",
                                                                                  "type":  "string"
                                                                              },
                                                                       "EntityCreatedDateTime":  {
                                                                                                     "format":  "date-time",
                                                                                                     "description":  "datetimeoffset",
                                                                                                     "type":  "string"
                                                                                                 }
                                                                   },
                                                    "type":  "object"
                                                },
                        "CRM.FlexController_Site_MeteringPoint":  {
                                                                      "properties":  {
                                                                                         "Concealed":  {
                                                                                                           "type":  "boolean",
                                                                                                           "description":  "bit"
                                                                                                       },
                                                                                         "FlexControllerId":  {
                                                                                                                  "type":  "string",
                                                                                                                  "description":  "FK to CRM.FlexControllers"
                                                                                                              },
                                                                                         "Id":  {
                                                                                                    "format":  "uuid",
                                                                                                    "description":  "uniqueidentifier",
                                                                                                    "type":  "string"
                                                                                                },
                                                                                         "SiteMeteringPointId":  {
                                                                                                                     "format":  "uuid",
                                                                                                                     "description":  "uniqueidentifier",
                                                                                                                     "type":  "string"
                                                                                                                 },
                                                                                         "EntityUpdatedAuthToken":  {
                                                                                                                        "format":  "uuid",
                                                                                                                        "description":  "uniqueidentifier",
                                                                                                                        "type":  "string"
                                                                                                                    },
                                                                                         "EntityCreatedDateTime":  {
                                                                                                                       "format":  "date-time",
                                                                                                                       "description":  "datetimeoffset",
                                                                                                                       "type":  "string"
                                                                                                                   },
                                                                                         "EntityUpdatedDateTime":  {
                                                                                                                       "format":  "date-time",
                                                                                                                       "description":  "datetimeoffset",
                                                                                                                       "type":  "string"
                                                                                                                   },
                                                                                         "EntityCreatedAuthToken":  {
                                                                                                                        "format":  "uuid",
                                                                                                                        "description":  "uniqueidentifier",
                                                                                                                        "type":  "string"
                                                                                                                    },
                                                                                         "Tenant":  {
                                                                                                        "format":  "uuid",
                                                                                                        "description":  "uniqueidentifier",
                                                                                                        "type":  "string"
                                                                                                    }
                                                                                     },
                                                                      "type":  "object"
                                                                  },
                        "CRM.FlexController_ControlFlexAssetResultProcessor":  {
                                                                                   "properties":  {
                                                                                                      "Concealed":  {
                                                                                                                        "type":  "boolean",
                                                                                                                        "description":  "bit"
                                                                                                                    },
                                                                                                      "FlexControllerId":  {
                                                                                                                               "type":  "string",
                                                                                                                               "description":  "FK to CRM.FlexControllers"
                                                                                                                           },
                                                                                                      "Id":  {
                                                                                                                 "format":  "uuid",
                                                                                                                 "description":  "uniqueidentifier",
                                                                                                                 "type":  "string"
                                                                                                             },
                                                                                                      "EntityUpdatedAuthToken":  {
                                                                                                                                     "format":  "uuid",
                                                                                                                                     "description":  "uniqueidentifier",
                                                                                                                                     "type":  "string"
                                                                                                                                 },
                                                                                                      "ControlFlexAssetResultProcessorId":  {
                                                                                                                                                "type":  "string",
                                                                                                                                                "description":  "FK to CRM.ControlFlexAssetResultProcessors"
                                                                                                                                            },
                                                                                                      "EntityCreatedDateTime":  {
                                                                                                                                    "format":  "date-time",
                                                                                                                                    "description":  "datetimeoffset",
                                                                                                                                    "type":  "string"
                                                                                                                                },
                                                                                                      "EntityUpdatedDateTime":  {
                                                                                                                                    "format":  "date-time",
                                                                                                                                    "description":  "datetimeoffset",
                                                                                                                                    "type":  "string"
                                                                                                                                },
                                                                                                      "EntityCreatedAuthToken":  {
                                                                                                                                     "format":  "uuid",
                                                                                                                                     "description":  "uniqueidentifier",
                                                                                                                                     "type":  "string"
                                                                                                                                 },
                                                                                                      "Tenant":  {
                                                                                                                     "format":  "uuid",
                                                                                                                     "description":  "uniqueidentifier",
                                                                                                                     "type":  "string"
                                                                                                                 }
                                                                                                  },
                                                                                   "type":  "object"
                                                                               },
                        "CRM.FlexController_Installation":  {
                                                                "properties":  {
                                                                                   "Concealed":  {
                                                                                                     "type":  "boolean",
                                                                                                     "description":  "bit"
                                                                                                 },
                                                                                   "FlexControllerId":  {
                                                                                                            "type":  "string",
                                                                                                            "description":  "FK to CRM.FlexControllers"
                                                                                                        },
                                                                                   "Id":  {
                                                                                              "format":  "uuid",
                                                                                              "description":  "uniqueidentifier",
                                                                                              "type":  "string"
                                                                                          },
                                                                                   "InstallationId":  {
                                                                                                          "format":  "uuid",
                                                                                                          "description":  "uniqueidentifier",
                                                                                                          "type":  "string"
                                                                                                      },
                                                                                   "EntityUpdatedAuthToken":  {
                                                                                                                  "format":  "uuid",
                                                                                                                  "description":  "uniqueidentifier",
                                                                                                                  "type":  "string"
                                                                                                              },
                                                                                   "EntityCreatedDateTime":  {
                                                                                                                 "format":  "date-time",
                                                                                                                 "description":  "datetimeoffset",
                                                                                                                 "type":  "string"
                                                                                                             },
                                                                                   "EntityUpdatedDateTime":  {
                                                                                                                 "format":  "date-time",
                                                                                                                 "description":  "datetimeoffset",
                                                                                                                 "type":  "string"
                                                                                                             },
                                                                                   "EntityCreatedAuthToken":  {
                                                                                                                  "format":  "uuid",
                                                                                                                  "description":  "uniqueidentifier",
                                                                                                                  "type":  "string"
                                                                                                              },
                                                                                   "Tenant":  {
                                                                                                  "format":  "uuid",
                                                                                                  "description":  "uniqueidentifier",
                                                                                                  "type":  "string"
                                                                                              }
                                                                               },
                                                                "type":  "object"
                                                            },
                        "CRM.FlexController_ControlFlexAssetValueProvider":  {
                                                                                 "properties":  {
                                                                                                    "Concealed":  {
                                                                                                                      "type":  "boolean",
                                                                                                                      "description":  "bit"
                                                                                                                  },
                                                                                                    "FlexControllerId":  {
                                                                                                                             "type":  "string",
                                                                                                                             "description":  "FK to CRM.FlexControllers"
                                                                                                                         },
                                                                                                    "Id":  {
                                                                                                               "format":  "uuid",
                                                                                                               "description":  "uniqueidentifier",
                                                                                                               "type":  "string"
                                                                                                           },
                                                                                                    "EntityCreatedAuthToken":  {
                                                                                                                                   "format":  "uuid",
                                                                                                                                   "description":  "uniqueidentifier",
                                                                                                                                   "type":  "string"
                                                                                                                               },
                                                                                                    "EntityUpdatedAuthToken":  {
                                                                                                                                   "format":  "uuid",
                                                                                                                                   "description":  "uniqueidentifier",
                                                                                                                                   "type":  "string"
                                                                                                                               },
                                                                                                    "ControlFlexAssetValueProviderId":  {
                                                                                                                                            "type":  "string",
                                                                                                                                            "description":  "FK to CRM.ControlFlexAssetValueProviders"
                                                                                                                                        },
                                                                                                    "EntityUpdatedDateTime":  {
                                                                                                                                  "format":  "date-time",
                                                                                                                                  "description":  "datetimeoffset",
                                                                                                                                  "type":  "string"
                                                                                                                              },
                                                                                                    "EntityCreatedDateTime":  {
                                                                                                                                  "format":  "date-time",
                                                                                                                                  "description":  "datetimeoffset",
                                                                                                                                  "type":  "string"
                                                                                                                              },
                                                                                                    "Tenant":  {
                                                                                                                   "format":  "uuid",
                                                                                                                   "description":  "uniqueidentifier",
                                                                                                                   "type":  "string"
                                                                                                               }
                                                                                                },
                                                                                 "type":  "object"
                                                                             }
                    },
    "title":  "CRM.FlexController",
    "$comment":  "Generated from Mermaid ERD with property-level descriptions",
    "$schema":  "http://json-schema.org/draft-07/schema#",
    "type":  "object"
}

Installation Type

Aggregate Root: InstallationType

Defines different types of installations with their associated keys and configurations.

erDiagram
    "CRM.InstallationTypeKeys" {
        uniqueidentifier Id PK
        uniqueidentifier InstallationTypeId FK
        nvarchar Key 
        bit Active 
        uniqueidentifier Tenant 
        datetimeoffset EntityCreatedDateTime 
        datetimeoffset EntityUpdatedDateTime 
        uniqueidentifier EntityCreatedAuthToken 
        uniqueidentifier EntityUpdatedAuthToken 
        bit Concealed 
    }

    "CRM.InstallationTypes" {
        uniqueidentifier Id PK
        nvarchar Name 
        bit Active 
        uniqueidentifier Tenant 
        datetimeoffset EntityCreatedDateTime 
        datetimeoffset EntityUpdatedDateTime 
        uniqueidentifier EntityCreatedAuthToken 
        uniqueidentifier EntityUpdatedAuthToken 
        bit Concealed 
    }

    "CRM.InstallationTypeKeys" }o--|| "CRM.InstallationTypes" : "InstallationTypeId"
    "CRM.InstallationValues" }o--|| "CRM.InstallationTypeKeys" : "InstallationTypeKeyId"
    "CRM.Installations" }o--|| "CRM.InstallationTypes" : "InstallationTypeId"
erDiagram
    "CRM.InstallationTypeKeys" {
        uniqueidentifier Id PK
        uniqueidentifier InstallationTypeId FK
        nvarchar Key 
        bit Active 
        uniqueidentifier Tenant 
        datetimeoffset EntityCreatedDateTime 
        datetimeoffset EntityUpdatedDateTime 
        uniqueidentifier EntityCreatedAuthToken 
        uniqueidentifier EntityUpdatedAuthToken 
        bit Concealed 
    }

    "CRM.InstallationTypes" {
        uniqueidentifier Id PK
        nvarchar Name 
        bit Active 
        uniqueidentifier Tenant 
        datetimeoffset EntityCreatedDateTime 
        datetimeoffset EntityUpdatedDateTime 
        uniqueidentifier EntityCreatedAuthToken 
        uniqueidentifier EntityUpdatedAuthToken 
        bit Concealed 
    }

    "CRM.InstallationTypeKeys" }o--|| "CRM.InstallationTypes" : "InstallationTypeId"
    "CRM.InstallationValues" }o--|| "CRM.InstallationTypeKeys" : "InstallationTypeKeyId"
    "CRM.Installations" }o--|| "CRM.InstallationTypes" : "InstallationTypeId"
{
    "definitions":  {
                        "CRM.InstallationTypes":  {
                                                      "properties":  {
                                                                         "Concealed":  {
                                                                                           "type":  "boolean",
                                                                                           "description":  "bit"
                                                                                       },
                                                                         "EntityUpdatedAuthToken":  {
                                                                                                        "format":  "uuid",
                                                                                                        "description":  "uniqueidentifier",
                                                                                                        "type":  "string"
                                                                                                    },
                                                                         "Id":  {
                                                                                    "format":  "uuid",
                                                                                    "description":  "uniqueidentifier",
                                                                                    "type":  "string"
                                                                                },
                                                                         "EntityCreatedDateTime":  {
                                                                                                       "format":  "date-time",
                                                                                                       "description":  "datetimeoffset",
                                                                                                       "type":  "string"
                                                                                                   },
                                                                         "Name":  {
                                                                                      "type":  "string",
                                                                                      "description":  "nvarchar"
                                                                                  },
                                                                         "EntityUpdatedDateTime":  {
                                                                                                       "format":  "date-time",
                                                                                                       "description":  "datetimeoffset",
                                                                                                       "type":  "string"
                                                                                                   },
                                                                         "Active":  {
                                                                                        "type":  "boolean",
                                                                                        "description":  "bit"
                                                                                    },
                                                                         "EntityCreatedAuthToken":  {
                                                                                                        "format":  "uuid",
                                                                                                        "description":  "uniqueidentifier",
                                                                                                        "type":  "string"
                                                                                                    },
                                                                         "Tenant":  {
                                                                                        "format":  "uuid",
                                                                                        "description":  "uniqueidentifier",
                                                                                        "type":  "string"
                                                                                    }
                                                                     },
                                                      "type":  "object"
                                                  },
                        "CRM.InstallationTypeKeys":  {
                                                         "properties":  {
                                                                            "Concealed":  {
                                                                                              "type":  "boolean",
                                                                                              "description":  "bit"
                                                                                          },
                                                                            "InstallationTypeId":  {
                                                                                                       "type":  "string",
                                                                                                       "description":  "FK to CRM.InstallationTypes"
                                                                                                   },
                                                                            "Id":  {
                                                                                       "format":  "uuid",
                                                                                       "description":  "uniqueidentifier",
                                                                                       "type":  "string"
                                                                                   },
                                                                            "Key":  {
                                                                                        "type":  "string",
                                                                                        "description":  "nvarchar"
                                                                                    },
                                                                            "EntityUpdatedAuthToken":  {
                                                                                                           "format":  "uuid",
                                                                                                           "description":  "uniqueidentifier",
                                                                                                           "type":  "string"
                                                                                                       },
                                                                            "EntityCreatedDateTime":  {
                                                                                                          "format":  "date-time",
                                                                                                          "description":  "datetimeoffset",
                                                                                                          "type":  "string"
                                                                                                      },
                                                                            "EntityUpdatedDateTime":  {
                                                                                                          "format":  "date-time",
                                                                                                          "description":  "datetimeoffset",
                                                                                                          "type":  "string"
                                                                                                      },
                                                                            "Active":  {
                                                                                           "type":  "boolean",
                                                                                           "description":  "bit"
                                                                                       },
                                                                            "EntityCreatedAuthToken":  {
                                                                                                           "format":  "uuid",
                                                                                                           "description":  "uniqueidentifier",
                                                                                                           "type":  "string"
                                                                                                       },
                                                                            "Tenant":  {
                                                                                           "format":  "uuid",
                                                                                           "description":  "uniqueidentifier",
                                                                                           "type":  "string"
                                                                                       }
                                                                        },
                                                         "type":  "object"
                                                     }
                    },
    "title":  "CRM.InstallationType",
    "$comment":  "Generated from Mermaid ERD with property-level descriptions",
    "$schema":  "http://json-schema.org/draft-07/schema#",
    "type":  "object"
}

Model Contract Template

Aggregate Root: ModelContractTemplate

Represents model-based contract templates with predefined structures for automated contract generation.

erDiagram
    "CRM.ModelContractTemplateDetails" {
        uniqueidentifier Id PK
        uniqueidentifier ModelContractTemplateId FK
        nvarchar Key 
        nvarchar Value 
        int FormatType 
        uniqueidentifier CustomEnumId FK
        uniqueidentifier Tenant 
        datetimeoffset EntityCreatedDateTime 
        datetimeoffset EntityUpdatedDateTime 
        uniqueidentifier EntityCreatedAuthToken 
        uniqueidentifier EntityUpdatedAuthToken 
        bit Concealed 
        int PricingStage 
        bit UserOverwritableOnPricing 
    }

    "CRM.ModelContractTemplates" {
        uniqueidentifier Id PK
        nvarchar Name 
        nvarchar Description 
        bit IsActive 
        uniqueidentifier Tenant 
        datetimeoffset EntityCreatedDateTime 
        datetimeoffset EntityUpdatedDateTime 
        uniqueidentifier EntityCreatedAuthToken 
        uniqueidentifier EntityUpdatedAuthToken 
        bit Concealed 
    }

    "CRM.ModelContractTemplateDetails" }o--|| "CRM.CustomEnums" : "CustomEnumId"
    "CRM.ModelContractTemplateDetails" }o--|| "Pricing.CustomEnums" : "CustomEnumId"
    "CRM.ModelContractTemplateDetails" }o--|| "ApplicationCore.CustomEnums" : "CustomEnumId"
    "CRM.ModelContractTemplateDetails" }o--|| "PM.CustomEnums" : "CustomEnumId"
    "CRM.ModelContractTemplateDetails" }o--|| "CRM.ModelContractTemplates" : "ModelContractTemplateId"
    "CRM.ProductComponentModelPricingRequests" }o--|| "CRM.ModelContractTemplates" : "ModelContractTemplateId"
    "CRM.PropositionModelPricingRequests" }o--|| "CRM.ModelContractTemplates" : "ModelContractTemplateId"
erDiagram
    "CRM.ModelContractTemplateDetails" {
        uniqueidentifier Id PK
        uniqueidentifier ModelContractTemplateId FK
        nvarchar Key 
        nvarchar Value 
        int FormatType 
        uniqueidentifier CustomEnumId FK
        uniqueidentifier Tenant 
        datetimeoffset EntityCreatedDateTime 
        datetimeoffset EntityUpdatedDateTime 
        uniqueidentifier EntityCreatedAuthToken 
        uniqueidentifier EntityUpdatedAuthToken 
        bit Concealed 
        int PricingStage 
        bit UserOverwritableOnPricing 
    }

    "CRM.ModelContractTemplates" {
        uniqueidentifier Id PK
        nvarchar Name 
        nvarchar Description 
        bit IsActive 
        uniqueidentifier Tenant 
        datetimeoffset EntityCreatedDateTime 
        datetimeoffset EntityUpdatedDateTime 
        uniqueidentifier EntityCreatedAuthToken 
        uniqueidentifier EntityUpdatedAuthToken 
        bit Concealed 
    }

    "CRM.ModelContractTemplateDetails" }o--|| "CRM.CustomEnums" : "CustomEnumId"
    "CRM.ModelContractTemplateDetails" }o--|| "Pricing.CustomEnums" : "CustomEnumId"
    "CRM.ModelContractTemplateDetails" }o--|| "ApplicationCore.CustomEnums" : "CustomEnumId"
    "CRM.ModelContractTemplateDetails" }o--|| "PM.CustomEnums" : "CustomEnumId"
    "CRM.ModelContractTemplateDetails" }o--|| "CRM.ModelContractTemplates" : "ModelContractTemplateId"
    "CRM.ProductComponentModelPricingRequests" }o--|| "CRM.ModelContractTemplates" : "ModelContractTemplateId"
    "CRM.PropositionModelPricingRequests" }o--|| "CRM.ModelContractTemplates" : "ModelContractTemplateId"
{
    "definitions":  {
                        "CRM.ModelContractTemplates":  {
                                                           "properties":  {
                                                                              "Concealed":  {
                                                                                                "type":  "boolean",
                                                                                                "description":  "bit"
                                                                                            },
                                                                              "EntityUpdatedAuthToken":  {
                                                                                                             "format":  "uuid",
                                                                                                             "description":  "uniqueidentifier",
                                                                                                             "type":  "string"
                                                                                                         },
                                                                              "Id":  {
                                                                                         "format":  "uuid",
                                                                                         "description":  "uniqueidentifier",
                                                                                         "type":  "string"
                                                                                     },
                                                                              "Description":  {
                                                                                                  "type":  "string",
                                                                                                  "description":  "nvarchar"
                                                                                              },
                                                                              "EntityCreatedDateTime":  {
                                                                                                            "format":  "date-time",
                                                                                                            "description":  "datetimeoffset",
                                                                                                            "type":  "string"
                                                                                                        },
                                                                              "Name":  {
                                                                                           "type":  "string",
                                                                                           "description":  "nvarchar"
                                                                                       },
                                                                              "EntityUpdatedDateTime":  {
                                                                                                            "format":  "date-time",
                                                                                                            "description":  "datetimeoffset",
                                                                                                            "type":  "string"
                                                                                                        },
                                                                              "IsActive":  {
                                                                                               "type":  "boolean",
                                                                                               "description":  "bit"
                                                                                           },
                                                                              "EntityCreatedAuthToken":  {
                                                                                                             "format":  "uuid",
                                                                                                             "description":  "uniqueidentifier",
                                                                                                             "type":  "string"
                                                                                                         },
                                                                              "Tenant":  {
                                                                                             "format":  "uuid",
                                                                                             "description":  "uniqueidentifier",
                                                                                             "type":  "string"
                                                                                         }
                                                                          },
                                                           "type":  "object"
                                                       },
                        "CRM.ModelContractTemplateDetails":  {
                                                                 "properties":  {
                                                                                    "PricingStage":  {
                                                                                                         "type":  "integer",
                                                                                                         "description":  "int"
                                                                                                     },
                                                                                    "Id":  {
                                                                                               "format":  "uuid",
                                                                                               "description":  "uniqueidentifier",
                                                                                               "type":  "string"
                                                                                           },
                                                                                    "EntityUpdatedAuthToken":  {
                                                                                                                   "format":  "uuid",
                                                                                                                   "description":  "uniqueidentifier",
                                                                                                                   "type":  "string"
                                                                                                               },
                                                                                    "Concealed":  {
                                                                                                      "type":  "boolean",
                                                                                                      "description":  "bit"
                                                                                                  },
                                                                                    "Value":  {
                                                                                                  "type":  "string",
                                                                                                  "description":  "nvarchar"
                                                                                              },
                                                                                    "EntityCreatedAuthToken":  {
                                                                                                                   "format":  "uuid",
                                                                                                                   "description":  "uniqueidentifier",
                                                                                                                   "type":  "string"
                                                                                                               },
                                                                                    "ModelContractTemplateId":  {
                                                                                                                    "type":  "string",
                                                                                                                    "description":  "FK to CRM.ModelContractTemplates"
                                                                                                                },
                                                                                    "UserOverwritableOnPricing":  {
                                                                                                                      "type":  "boolean",
                                                                                                                      "description":  "bit"
                                                                                                                  },
                                                                                    "EntityUpdatedDateTime":  {
                                                                                                                  "format":  "date-time",
                                                                                                                  "description":  "datetimeoffset",
                                                                                                                  "type":  "string"
                                                                                                              },
                                                                                    "Tenant":  {
                                                                                                   "format":  "uuid",
                                                                                                   "description":  "uniqueidentifier",
                                                                                                   "type":  "string"
                                                                                               },
                                                                                    "Key":  {
                                                                                                "type":  "string",
                                                                                                "description":  "nvarchar"
                                                                                            },
                                                                                    "EntityCreatedDateTime":  {
                                                                                                                  "format":  "date-time",
                                                                                                                  "description":  "datetimeoffset",
                                                                                                                  "type":  "string"
                                                                                                              },
                                                                                    "FormatType":  {
                                                                                                       "type":  "integer",
                                                                                                       "description":  "int"
                                                                                                   },
                                                                                    "CustomEnumId":  {
                                                                                                         "type":  "string",
                                                                                                         "description":  "FK to PM.CustomEnums"
                                                                                                     }
                                                                                },
                                                                 "type":  "object"
                                                             }
                    },
    "title":  "CRM.ModelContractTemplate",
    "$comment":  "Generated from Mermaid ERD with property-level descriptions",
    "$schema":  "http://json-schema.org/draft-07/schema#",
    "type":  "object"
}

Pricing Request Generator

Aggregate Root: PricingRequestGenerator

Generates pricing requests automatically based on configured models and parameters.

erDiagram
    "CRM.ModelPricingRequestKeyValues" {
        uniqueidentifier Id PK
        uniqueidentifier ModelPricingRequestId FK
        nvarchar Key 
        nvarchar Value 
        uniqueidentifier Tenant 
        datetimeoffset EntityCreatedDateTime 
        datetimeoffset EntityUpdatedDateTime 
        uniqueidentifier EntityCreatedAuthToken 
        uniqueidentifier EntityUpdatedAuthToken 
        bit Concealed 
    }

    "CRM.ModelPricingRequests" {
        uniqueidentifier Id PK
        nvarchar Name 
        nvarchar Description 
        uniqueidentifier PricingRequestGeneratorId FK
        uniqueidentifier ContractTemplateId 
        uniqueidentifier PropositionTemplateId 
        uniqueidentifier ProductComponentId 
        uniqueidentifier Tenant 
        datetimeoffset EntityCreatedDateTime 
        datetimeoffset EntityUpdatedDateTime 
        uniqueidentifier EntityCreatedAuthToken 
        uniqueidentifier EntityUpdatedAuthToken 
        uniqueidentifier CustomerId 
        bit Concealed 
    }

    "CRM.PricingRequestGeneratorRuns" {
        uniqueidentifier Id PK
        uniqueidentifier PricingRequestGeneratorId FK
        datetimeoffset RunDateTime 
        uniqueidentifier Tenant 
        datetimeoffset EntityCreatedDateTime 
        datetimeoffset EntityUpdatedDateTime 
        uniqueidentifier EntityCreatedAuthToken 
        uniqueidentifier EntityUpdatedAuthToken 
        bit Concealed 
    }

    "CRM.PricingRequestGenerators" {
        uniqueidentifier Id PK
        nvarchar Name 
        nvarchar Description 
        datetimeoffset Start 
        datetimeoffset End 
        bit EditMode 
        nvarchar Schedule 
        datetimeoffset NextRunTime 
        uniqueidentifier Tenant 
        datetimeoffset EntityCreatedDateTime 
        datetimeoffset EntityUpdatedDateTime 
        uniqueidentifier EntityCreatedAuthToken 
        uniqueidentifier EntityUpdatedAuthToken 
        bit Concealed 
    }

    "CRM.ModelPricingRequestKeyValues" }o--|| "CRM.ModelPricingRequests" : "ModelPricingRequestId"
    "CRM.ModelPricingRequests" }o--|| "CRM.PricingRequestGenerators" : "PricingRequestGeneratorId"
    "CRM.PricingRequestGeneratorRuns" }o--|| "CRM.PricingRequestGenerators" : "PricingRequestGeneratorId"
erDiagram
    "CRM.ModelPricingRequestKeyValues" {
        uniqueidentifier Id PK
        uniqueidentifier ModelPricingRequestId FK
        nvarchar Key 
        nvarchar Value 
        uniqueidentifier Tenant 
        datetimeoffset EntityCreatedDateTime 
        datetimeoffset EntityUpdatedDateTime 
        uniqueidentifier EntityCreatedAuthToken 
        uniqueidentifier EntityUpdatedAuthToken 
        bit Concealed 
    }

    "CRM.ModelPricingRequests" {
        uniqueidentifier Id PK
        nvarchar Name 
        nvarchar Description 
        uniqueidentifier PricingRequestGeneratorId FK
        uniqueidentifier ContractTemplateId 
        uniqueidentifier PropositionTemplateId 
        uniqueidentifier ProductComponentId 
        uniqueidentifier Tenant 
        datetimeoffset EntityCreatedDateTime 
        datetimeoffset EntityUpdatedDateTime 
        uniqueidentifier EntityCreatedAuthToken 
        uniqueidentifier EntityUpdatedAuthToken 
        uniqueidentifier CustomerId 
        bit Concealed 
    }

    "CRM.PricingRequestGeneratorRuns" {
        uniqueidentifier Id PK
        uniqueidentifier PricingRequestGeneratorId FK
        datetimeoffset RunDateTime 
        uniqueidentifier Tenant 
        datetimeoffset EntityCreatedDateTime 
        datetimeoffset EntityUpdatedDateTime 
        uniqueidentifier EntityCreatedAuthToken 
        uniqueidentifier EntityUpdatedAuthToken 
        bit Concealed 
    }

    "CRM.PricingRequestGenerators" {
        uniqueidentifier Id PK
        nvarchar Name 
        nvarchar Description 
        datetimeoffset Start 
        datetimeoffset End 
        bit EditMode 
        nvarchar Schedule 
        datetimeoffset NextRunTime 
        uniqueidentifier Tenant 
        datetimeoffset EntityCreatedDateTime 
        datetimeoffset EntityUpdatedDateTime 
        uniqueidentifier EntityCreatedAuthToken 
        uniqueidentifier EntityUpdatedAuthToken 
        bit Concealed 
    }

    "CRM.ModelPricingRequestKeyValues" }o--|| "CRM.ModelPricingRequests" : "ModelPricingRequestId"
    "CRM.ModelPricingRequests" }o--|| "CRM.PricingRequestGenerators" : "PricingRequestGeneratorId"
    "CRM.PricingRequestGeneratorRuns" }o--|| "CRM.PricingRequestGenerators" : "PricingRequestGeneratorId"
{
    "definitions":  {
                        "CRM.PricingRequestGeneratorRuns":  {
                                                                "properties":  {
                                                                                   "Tenant":  {
                                                                                                  "format":  "uuid",
                                                                                                  "description":  "uniqueidentifier",
                                                                                                  "type":  "string"
                                                                                              },
                                                                                   "EntityUpdatedAuthToken":  {
                                                                                                                  "format":  "uuid",
                                                                                                                  "description":  "uniqueidentifier",
                                                                                                                  "type":  "string"
                                                                                                              },
                                                                                   "Id":  {
                                                                                              "format":  "uuid",
                                                                                              "description":  "uniqueidentifier",
                                                                                              "type":  "string"
                                                                                          },
                                                                                   "RunDateTime":  {
                                                                                                       "format":  "date-time",
                                                                                                       "description":  "datetimeoffset",
                                                                                                       "type":  "string"
                                                                                                   },
                                                                                   "Concealed":  {
                                                                                                     "type":  "boolean",
                                                                                                     "description":  "bit"
                                                                                                 },
                                                                                   "EntityCreatedDateTime":  {
                                                                                                                 "format":  "date-time",
                                                                                                                 "description":  "datetimeoffset",
                                                                                                                 "type":  "string"
                                                                                                             },
                                                                                   "EntityUpdatedDateTime":  {
                                                                                                                 "format":  "date-time",
                                                                                                                 "description":  "datetimeoffset",
                                                                                                                 "type":  "string"
                                                                                                             },
                                                                                   "EntityCreatedAuthToken":  {
                                                                                                                  "format":  "uuid",
                                                                                                                  "description":  "uniqueidentifier",
                                                                                                                  "type":  "string"
                                                                                                              },
                                                                                   "PricingRequestGeneratorId":  {
                                                                                                                     "type":  "string",
                                                                                                                     "description":  "FK to CRM.PricingRequestGenerators"
                                                                                                                 }
                                                                               },
                                                                "type":  "object"
                                                            },
                        "CRM.PricingRequestGenerators":  {
                                                             "properties":  {
                                                                                "Concealed":  {
                                                                                                  "type":  "boolean",
                                                                                                  "description":  "bit"
                                                                                              },
                                                                                "End":  {
                                                                                            "format":  "date-time",
                                                                                            "description":  "datetimeoffset",
                                                                                            "type":  "string"
                                                                                        },
                                                                                "Description":  {
                                                                                                    "type":  "string",
                                                                                                    "description":  "nvarchar"
                                                                                                },
                                                                                "EntityUpdatedAuthToken":  {
                                                                                                               "format":  "uuid",
                                                                                                               "description":  "uniqueidentifier",
                                                                                                               "type":  "string"
                                                                                                           },
                                                                                "Name":  {
                                                                                             "type":  "string",
                                                                                             "description":  "nvarchar"
                                                                                         },
                                                                                "EditMode":  {
                                                                                                 "type":  "boolean",
                                                                                                 "description":  "bit"
                                                                                             },
                                                                                "EntityCreatedAuthToken":  {
                                                                                                               "format":  "uuid",
                                                                                                               "description":  "uniqueidentifier",
                                                                                                               "type":  "string"
                                                                                                           },
                                                                                "Start":  {
                                                                                              "format":  "date-time",
                                                                                              "description":  "datetimeoffset",
                                                                                              "type":  "string"
                                                                                          },
                                                                                "EntityUpdatedDateTime":  {
                                                                                                              "format":  "date-time",
                                                                                                              "description":  "datetimeoffset",
                                                                                                              "type":  "string"
                                                                                                          },
                                                                                "Schedule":  {
                                                                                                 "type":  "string",
                                                                                                 "description":  "nvarchar"
                                                                                             },
                                                                                "Tenant":  {
                                                                                               "format":  "uuid",
                                                                                               "description":  "uniqueidentifier",
                                                                                               "type":  "string"
                                                                                           },
                                                                                "NextRunTime":  {
                                                                                                    "format":  "date-time",
                                                                                                    "description":  "datetimeoffset",
                                                                                                    "type":  "string"
                                                                                                },
                                                                                "Id":  {
                                                                                           "format":  "uuid",
                                                                                           "description":  "uniqueidentifier",
                                                                                           "type":  "string"
                                                                                       },
                                                                                "EntityCreatedDateTime":  {
                                                                                                              "format":  "date-time",
                                                                                                              "description":  "datetimeoffset",
                                                                                                              "type":  "string"
                                                                                                          }
                                                                            },
                                                             "type":  "object"
                                                         },
                        "CRM.ModelPricingRequests":  {
                                                         "properties":  {
                                                                            "Concealed":  {
                                                                                              "type":  "boolean",
                                                                                              "description":  "bit"
                                                                                          },
                                                                            "Description":  {
                                                                                                "type":  "string",
                                                                                                "description":  "nvarchar"
                                                                                            },
                                                                            "EntityUpdatedAuthToken":  {
                                                                                                           "format":  "uuid",
                                                                                                           "description":  "uniqueidentifier",
                                                                                                           "type":  "string"
                                                                                                       },
                                                                            "ProductComponentId":  {
                                                                                                       "format":  "uuid",
                                                                                                       "description":  "uniqueidentifier",
                                                                                                       "type":  "string"
                                                                                                   },
                                                                            "Tenant":  {
                                                                                           "format":  "uuid",
                                                                                           "description":  "uniqueidentifier",
                                                                                           "type":  "string"
                                                                                       },
                                                                            "EntityCreatedAuthToken":  {
                                                                                                           "format":  "uuid",
                                                                                                           "description":  "uniqueidentifier",
                                                                                                           "type":  "string"
                                                                                                       },
                                                                            "Name":  {
                                                                                         "type":  "string",
                                                                                         "description":  "nvarchar"
                                                                                     },
                                                                            "PricingRequestGeneratorId":  {
                                                                                                              "type":  "string",
                                                                                                              "description":  "FK to CRM.PricingRequestGenerators"
                                                                                                          },
                                                                            "EntityUpdatedDateTime":  {
                                                                                                          "format":  "date-time",
                                                                                                          "description":  "datetimeoffset",
                                                                                                          "type":  "string"
                                                                                                      },
                                                                            "CustomerId":  {
                                                                                               "format":  "uuid",
                                                                                               "description":  "uniqueidentifier",
                                                                                               "type":  "string"
                                                                                           },
                                                                            "ContractTemplateId":  {
                                                                                                       "format":  "uuid",
                                                                                                       "description":  "uniqueidentifier",
                                                                                                       "type":  "string"
                                                                                                   },
                                                                            "EntityCreatedDateTime":  {
                                                                                                          "format":  "date-time",
                                                                                                          "description":  "datetimeoffset",
                                                                                                          "type":  "string"
                                                                                                      },
                                                                            "Id":  {
                                                                                       "format":  "uuid",
                                                                                       "description":  "uniqueidentifier",
                                                                                       "type":  "string"
                                                                                   },
                                                                            "PropositionTemplateId":  {
                                                                                                          "format":  "uuid",
                                                                                                          "description":  "uniqueidentifier",
                                                                                                          "type":  "string"
                                                                                                      }
                                                                        },
                                                         "type":  "object"
                                                     },
                        "CRM.ModelPricingRequestKeyValues":  {
                                                                 "properties":  {
                                                                                    "Concealed":  {
                                                                                                      "type":  "boolean",
                                                                                                      "description":  "bit"
                                                                                                  },
                                                                                    "EntityUpdatedAuthToken":  {
                                                                                                                   "format":  "uuid",
                                                                                                                   "description":  "uniqueidentifier",
                                                                                                                   "type":  "string"
                                                                                                               },
                                                                                    "Id":  {
                                                                                               "format":  "uuid",
                                                                                               "description":  "uniqueidentifier",
                                                                                               "type":  "string"
                                                                                           },
                                                                                    "Key":  {
                                                                                                "type":  "string",
                                                                                                "description":  "nvarchar"
                                                                                            },
                                                                                    "EntityCreatedAuthToken":  {
                                                                                                                   "format":  "uuid",
                                                                                                                   "description":  "uniqueidentifier",
                                                                                                                   "type":  "string"
                                                                                                               },
                                                                                    "Value":  {
                                                                                                  "type":  "string",
                                                                                                  "description":  "nvarchar"
                                                                                              },
                                                                                    "EntityUpdatedDateTime":  {
                                                                                                                  "format":  "date-time",
                                                                                                                  "description":  "datetimeoffset",
                                                                                                                  "type":  "string"
                                                                                                              },
                                                                                    "ModelPricingRequestId":  {
                                                                                                                  "type":  "string",
                                                                                                                  "description":  "FK to CRM.ModelPricingRequests"
                                                                                                              },
                                                                                    "EntityCreatedDateTime":  {
                                                                                                                  "format":  "date-time",
                                                                                                                  "description":  "datetimeoffset",
                                                                                                                  "type":  "string"
                                                                                                              },
                                                                                    "Tenant":  {
                                                                                                   "format":  "uuid",
                                                                                                   "description":  "uniqueidentifier",
                                                                                                   "type":  "string"
                                                                                               }
                                                                                },
                                                                 "type":  "object"
                                                             }
                    },
    "title":  "CRM.PricingRequestGenerator",
    "$comment":  "Generated from Mermaid ERD with property-level descriptions",
    "$schema":  "http://json-schema.org/draft-07/schema#",
    "type":  "object"
}

Proposition Product Component Model Pricing Request

Aggregate Root: PropositionProductComponentModelPricingRequest

Represents pricing requests for proposition product components with associated brands and sales products.

erDiagram
    "CRM.ProductComponentModelPricingRequest_Brand" {
        uniqueidentifier Id PK
        uniqueidentifier ProductComponentModelPricingRequestId FK
        uniqueidentifier BrandId FK
        uniqueidentifier Tenant 
        datetimeoffset EntityCreatedDateTime 
        datetimeoffset EntityUpdatedDateTime 
        uniqueidentifier EntityCreatedAuthToken 
        uniqueidentifier EntityUpdatedAuthToken 
        bit Concealed 
    }

    "CRM.ProductComponentModelPricingRequest_ProductComponent" {
    }

    "CRM.ProductComponentModelPricingRequest_SalesProduct" {
    }

    "CRM.ProductComponentModelPricingRequests" {
        uniqueidentifier Id PK
        uniqueidentifier ProductComponentId 
        nvarchar Name 
        nvarchar Description 
        uniqueidentifier CustomerId FK
        uniqueidentifier ModelContractTemplateId FK
        uniqueidentifier Tenant 
        datetimeoffset EntityCreatedDateTime 
        datetimeoffset EntityUpdatedDateTime 
        uniqueidentifier EntityCreatedAuthToken 
        uniqueidentifier EntityUpdatedAuthToken 
        nvarchar InternalReference 
        bit Concealed 
        int SourceInAdvanceVolumeLimit 
    }

    "CRM.ProductComponentModelPricingRequest_Brand" }o--|| "CRM.Brands" : "BrandId"
    "CRM.ProductComponentModelPricingRequest_Brand" }o--|| "CRM.ProductComponentModelPricingRequests" : "ProductComponentModelPricingRequestId"
    "CRM.ProductComponentModelPricingRequest_CategoryLabel" }o--|| "CRM.ProductComponentModelPricingRequests" : "ProductComponentModelPricingRequestId"
    "CRM.ProductComponentModelPricingRequestKeyValues" }o--|| "CRM.ProductComponentModelPricingRequests" : "ProductComponentModelPricingRequestId"
    "CRM.ProductComponentModelPricingRequests" }o--|| "CRM.Customers" : "CustomerId"
    "CRM.ProductComponentModelPricingRequests" }o--|| "CRM.ModelContractTemplates" : "ModelContractTemplateId"
    "CRM.ProductComponentSalesBatchItems" }o--|| "CRM.ProductComponentModelPricingRequests" : "ProductComponentModelPricingRequestId"
    "CRM.PropositionModelPricingRequest_ProductComponentModelPricingRequest" }o--|| "CRM.ProductComponentModelPricingRequests" : "ProductComponentModelPricingRequestId"
    "CRM.SalesBatchStrategyProductComponentMPRGroup_ProductComponentMPR" }o--|| "CRM.ProductComponentModelPricingRequests" : "ProductComponentModelPricingRequestId"
    "CRM.ProductComponentModelPricingRequest_Customer" }o--|| "CRM.ProductComponentModelPricingRequests" : "ProductComponentModelPricingRequestId"
erDiagram
    "CRM.ProductComponentModelPricingRequest_Brand" {
        uniqueidentifier Id PK
        uniqueidentifier ProductComponentModelPricingRequestId FK
        uniqueidentifier BrandId FK
        uniqueidentifier Tenant 
        datetimeoffset EntityCreatedDateTime 
        datetimeoffset EntityUpdatedDateTime 
        uniqueidentifier EntityCreatedAuthToken 
        uniqueidentifier EntityUpdatedAuthToken 
        bit Concealed 
    }

    "CRM.ProductComponentModelPricingRequest_ProductComponent" {
    }

    "CRM.ProductComponentModelPricingRequest_SalesProduct" {
    }

    "CRM.ProductComponentModelPricingRequests" {
        uniqueidentifier Id PK
        uniqueidentifier ProductComponentId 
        nvarchar Name 
        nvarchar Description 
        uniqueidentifier CustomerId FK
        uniqueidentifier ModelContractTemplateId FK
        uniqueidentifier Tenant 
        datetimeoffset EntityCreatedDateTime 
        datetimeoffset EntityUpdatedDateTime 
        uniqueidentifier EntityCreatedAuthToken 
        uniqueidentifier EntityUpdatedAuthToken 
        nvarchar InternalReference 
        bit Concealed 
        int SourceInAdvanceVolumeLimit 
    }

    "CRM.ProductComponentModelPricingRequest_Brand" }o--|| "CRM.Brands" : "BrandId"
    "CRM.ProductComponentModelPricingRequest_Brand" }o--|| "CRM.ProductComponentModelPricingRequests" : "ProductComponentModelPricingRequestId"
    "CRM.ProductComponentModelPricingRequest_CategoryLabel" }o--|| "CRM.ProductComponentModelPricingRequests" : "ProductComponentModelPricingRequestId"
    "CRM.ProductComponentModelPricingRequestKeyValues" }o--|| "CRM.ProductComponentModelPricingRequests" : "ProductComponentModelPricingRequestId"
    "CRM.ProductComponentModelPricingRequests" }o--|| "CRM.Customers" : "CustomerId"
    "CRM.ProductComponentModelPricingRequests" }o--|| "CRM.ModelContractTemplates" : "ModelContractTemplateId"
    "CRM.ProductComponentSalesBatchItems" }o--|| "CRM.ProductComponentModelPricingRequests" : "ProductComponentModelPricingRequestId"
    "CRM.PropositionModelPricingRequest_ProductComponentModelPricingRequest" }o--|| "CRM.ProductComponentModelPricingRequests" : "ProductComponentModelPricingRequestId"
    "CRM.SalesBatchStrategyProductComponentMPRGroup_ProductComponentMPR" }o--|| "CRM.ProductComponentModelPricingRequests" : "ProductComponentModelPricingRequestId"
    "CRM.ProductComponentModelPricingRequest_Customer" }o--|| "CRM.ProductComponentModelPricingRequests" : "ProductComponentModelPricingRequestId"
{
    "definitions":  {
                        "CRM.ProductComponentModelPricingRequest_SalesProduct":  {
                                                                                     "properties":  {

                                                                                                    },
                                                                                     "type":  "object"
                                                                                 },
                        "CRM.ProductComponentModelPricingRequest_Brand":  {
                                                                              "properties":  {
                                                                                                 "Concealed":  {
                                                                                                                   "type":  "boolean",
                                                                                                                   "description":  "bit"
                                                                                                               },
                                                                                                 "EntityUpdatedAuthToken":  {
                                                                                                                                "format":  "uuid",
                                                                                                                                "description":  "uniqueidentifier",
                                                                                                                                "type":  "string"
                                                                                                                            },
                                                                                                 "Id":  {
                                                                                                            "format":  "uuid",
                                                                                                            "description":  "uniqueidentifier",
                                                                                                            "type":  "string"
                                                                                                        },
                                                                                                 "EntityCreatedDateTime":  {
                                                                                                                               "format":  "date-time",
                                                                                                                               "description":  "datetimeoffset",
                                                                                                                               "type":  "string"
                                                                                                                           },
                                                                                                 "BrandId":  {
                                                                                                                 "type":  "string",
                                                                                                                 "description":  "FK to CRM.Brands"
                                                                                                             },
                                                                                                 "EntityUpdatedDateTime":  {
                                                                                                                               "format":  "date-time",
                                                                                                                               "description":  "datetimeoffset",
                                                                                                                               "type":  "string"
                                                                                                                           },
                                                                                                 "ProductComponentModelPricingRequestId":  {
                                                                                                                                               "type":  "string",
                                                                                                                                               "description":  "FK to CRM.ProductComponentModelPricingRequests"
                                                                                                                                           },
                                                                                                 "EntityCreatedAuthToken":  {
                                                                                                                                "format":  "uuid",
                                                                                                                                "description":  "uniqueidentifier",
                                                                                                                                "type":  "string"
                                                                                                                            },
                                                                                                 "Tenant":  {
                                                                                                                "format":  "uuid",
                                                                                                                "description":  "uniqueidentifier",
                                                                                                                "type":  "string"
                                                                                                            }
                                                                                             },
                                                                              "type":  "object"
                                                                          },
                        "CRM.ProductComponentModelPricingRequests":  {
                                                                         "properties":  {
                                                                                            "Concealed":  {
                                                                                                              "type":  "boolean",
                                                                                                              "description":  "bit"
                                                                                                          },
                                                                                            "Description":  {
                                                                                                                "type":  "string",
                                                                                                                "description":  "nvarchar"
                                                                                                            },
                                                                                            "EntityUpdatedAuthToken":  {
                                                                                                                           "format":  "uuid",
                                                                                                                           "description":  "uniqueidentifier",
                                                                                                                           "type":  "string"
                                                                                                                       },
                                                                                            "ProductComponentId":  {
                                                                                                                       "format":  "uuid",
                                                                                                                       "description":  "uniqueidentifier",
                                                                                                                       "type":  "string"
                                                                                                                   },
                                                                                            "EntityCreatedAuthToken":  {
                                                                                                                           "format":  "uuid",
                                                                                                                           "description":  "uniqueidentifier",
                                                                                                                           "type":  "string"
                                                                                                                       },
                                                                                            "ModelContractTemplateId":  {
                                                                                                                            "type":  "string",
                                                                                                                            "description":  "FK to CRM.ModelContractTemplates"
                                                                                                                        },
                                                                                            "Name":  {
                                                                                                         "type":  "string",
                                                                                                         "description":  "nvarchar"
                                                                                                     },
                                                                                            "SourceInAdvanceVolumeLimit":  {
                                                                                                                               "type":  "integer",
                                                                                                                               "description":  "int"
                                                                                                                           },
                                                                                            "EntityUpdatedDateTime":  {
                                                                                                                          "format":  "date-time",
                                                                                                                          "description":  "datetimeoffset",
                                                                                                                          "type":  "string"
                                                                                                                      },
                                                                                            "CustomerId":  {
                                                                                                               "type":  "string",
                                                                                                               "description":  "FK to CRM.Customers"
                                                                                                           },
                                                                                            "Tenant":  {
                                                                                                           "format":  "uuid",
                                                                                                           "description":  "uniqueidentifier",
                                                                                                           "type":  "string"
                                                                                                       },
                                                                                            "InternalReference":  {
                                                                                                                      "type":  "string",
                                                                                                                      "description":  "nvarchar"
                                                                                                                  },
                                                                                            "Id":  {
                                                                                                       "format":  "uuid",
                                                                                                       "description":  "uniqueidentifier",
                                                                                                       "type":  "string"
                                                                                                   },
                                                                                            "EntityCreatedDateTime":  {
                                                                                                                          "format":  "date-time",
                                                                                                                          "description":  "datetimeoffset",
                                                                                                                          "type":  "string"
                                                                                                                      }
                                                                                        },
                                                                         "type":  "object"
                                                                     },
                        "CRM.ProductComponentModelPricingRequest_ProductComponent":  {
                                                                                         "properties":  {

                                                                                                        },
                                                                                         "type":  "object"
                                                                                     }
                    },
    "title":  "CRM.PropositionProductComponentModelPricingRequest",
    "$comment":  "Generated from Mermaid ERD with property-level descriptions",
    "$schema":  "http://json-schema.org/draft-07/schema#",
    "type":  "object"
}

Sales Batch

Aggregate Root: SalesBatch

Represents batches of sales activities and transactions for processing and management.

erDiagram
    "CRM.SalesBatchDetails" {
        uniqueidentifier Id PK
        uniqueidentifier SalesBatchId FK
        nvarchar Key 
        nvarchar Value 
        int FormatType 
        uniqueidentifier CustomEnumId FK
        uniqueidentifier Tenant 
        datetimeoffset EntityCreatedDateTime 
        datetimeoffset EntityUpdatedDateTime 
        uniqueidentifier EntityCreatedAuthToken 
        uniqueidentifier EntityUpdatedAuthToken 
        bit Concealed 
        int PricingStage 
        bit UserOverwritableOnPricing 
    }

    "CRM.SalesBatchGeneratorDetails" {
        uniqueidentifier Id PK
        uniqueidentifier SalesBatchGeneratorId FK
        nvarchar Key 
        nvarchar Value 
        int FormatType 
        uniqueidentifier CustomEnumId FK
        uniqueidentifier Tenant 
        datetimeoffset EntityCreatedDateTime 
        datetimeoffset EntityUpdatedDateTime 
        uniqueidentifier EntityCreatedAuthToken 
        uniqueidentifier EntityUpdatedAuthToken 
        bit Concealed 
        int PricingStage 
        bit UserOverwritableOnPricing 
    }

    "CRM.SalesBatchGenerators" {
        uniqueidentifier Id PK
        nvarchar Name 
        nvarchar Description 
        int AllowedScoringType 
        bit MustEstimateSalesVolumes 
        uniqueidentifier Tenant 
        datetimeoffset EntityCreatedDateTime 
        datetimeoffset EntityUpdatedDateTime 
        uniqueidentifier EntityCreatedAuthToken 
        uniqueidentifier EntityUpdatedAuthToken 
        bit Concealed 
        bit SourceInAdvance 
        uniqueidentifier CustomerId FK
        int SalesBatchForecastType 
        uniqueidentifier ScriptId 
    }

    "CRM.SalesBatchSeries" {
        uniqueidentifier Id PK
        nvarchar Name 
        datetimeoffset Start 
        datetimeoffset End 
        nvarchar Schedule 
        datetimeoffset NextRunTime 
        uniqueidentifier Tenant 
        datetimeoffset EntityCreatedDateTime 
        datetimeoffset EntityUpdatedDateTime 
        uniqueidentifier EntityCreatedAuthToken 
        uniqueidentifier EntityUpdatedAuthToken 
        bit Concealed 
    }

    "CRM.SalesBatchSeries_SalesBatchGenerator" {
        uniqueidentifier Id PK
        uniqueidentifier SalesBatchSeriesId FK
        uniqueidentifier SalesBatchGeneratorId FK
        nvarchar Schedule 
        datetimeoffset NextRunTime 
        uniqueidentifier Tenant 
        datetimeoffset EntityCreatedDateTime 
        datetimeoffset EntityUpdatedDateTime 
        uniqueidentifier EntityCreatedAuthToken 
        uniqueidentifier EntityUpdatedAuthToken 
        bit Concealed 
        int OrderIndex 
    }

    "CRM.SalesBatchStrategies" {
        uniqueidentifier Id PK
        uniqueidentifier SalesBatchStrategyProductComponentMPRGroupId FK
        int SourcingType 
        uniqueidentifier ProductElementId 
        decimal Percentage 
        int ProcurementPeriodInMonths 
        int ProcurementOffsetPeriodInMonths 
        int ProcurementDeliveryPeriodInMonths 
        decimal StopLossThreshold 
        int StopLossThresholdUnit 
        int FallbackStrategySourcingType 
        datetimeoffset StartDate 
        datetimeoffset EndDate 
        uniqueidentifier Tenant 
        datetimeoffset EntityCreatedDateTime 
        datetimeoffset EntityUpdatedDateTime 
        uniqueidentifier EntityCreatedAuthToken 
        uniqueidentifier EntityUpdatedAuthToken 
        bit Concealed 
        datetimeoffset ProcurementEnd 
        datetimeoffset ProcurementStart 
    }

    "CRM.SalesBatchStrategyProductComponentMPRGroup_ProductComponentMPR" {
        uniqueidentifier Id PK
        uniqueidentifier SalesBatchStrategyProductComponentMPRGroupId FK
        uniqueidentifier ProductComponentModelPricingRequestId FK
        uniqueidentifier Tenant 
        datetimeoffset EntityCreatedDateTime 
        datetimeoffset EntityUpdatedDateTime 
        uniqueidentifier EntityCreatedAuthToken 
        uniqueidentifier EntityUpdatedAuthToken 
        bit Concealed 
    }

    "CRM.SalesBatchStrategyProductComponentMPRGroups" {
        uniqueidentifier Id PK
        uniqueidentifier SalesBatchId FK
        uniqueidentifier Tenant 
        datetimeoffset EntityCreatedDateTime 
        datetimeoffset EntityUpdatedDateTime 
        uniqueidentifier EntityCreatedAuthToken 
        uniqueidentifier EntityUpdatedAuthToken 
        bit Concealed 
    }

    "CRM.SalesBatches" {
        uniqueidentifier Id PK
        nvarchar InternalReference 
        nvarchar ExternalReference 
        uniqueidentifier SalesBatchSeriesId FK
        uniqueidentifier Tenant 
        datetimeoffset EntityCreatedDateTime 
        datetimeoffset EntityUpdatedDateTime 
        uniqueidentifier EntityCreatedAuthToken 
        uniqueidentifier EntityUpdatedAuthToken 
        datetimeoffset Timestamp 
        bit Concealed 
        bit SourceInAdvance 
        uniqueidentifier CustomerId FK
        int SalesBatchForecastType 
        uniqueidentifier ScriptId 
        bit WaitingOnScript 
        nvarchar ErrorMessage 
    }

    "CRM.SalesBatchDetails" }o--|| "CRM.CustomEnums" : "CustomEnumId"
    "CRM.SalesBatchDetails" }o--|| "Pricing.CustomEnums" : "CustomEnumId"
    "CRM.SalesBatchDetails" }o--|| "ApplicationCore.CustomEnums" : "CustomEnumId"
    "CRM.SalesBatchDetails" }o--|| "PM.CustomEnums" : "CustomEnumId"
    "CRM.SalesBatchDetails" }o--|| "CRM.SalesBatches" : "SalesBatchId"
    "CRM.SalesBatchGeneratorDetails" }o--|| "CRM.CustomEnums" : "CustomEnumId"
    "CRM.SalesBatchGeneratorDetails" }o--|| "Pricing.CustomEnums" : "CustomEnumId"
    "CRM.SalesBatchGeneratorDetails" }o--|| "ApplicationCore.CustomEnums" : "CustomEnumId"
    "CRM.SalesBatchGeneratorDetails" }o--|| "PM.CustomEnums" : "CustomEnumId"
    "CRM.SalesBatchGeneratorDetails" }o--|| "CRM.SalesBatchGenerators" : "SalesBatchGeneratorId"
    "CRM.ProductComponentSalesBatchItem_SalesBatchGenerator" }o--|| "CRM.SalesBatchGenerators" : "SalesBatchGeneratorId"
    "CRM.PropositionSalesBatchItem_SalesBatchGenerator" }o--|| "CRM.SalesBatchGenerators" : "SalesBatchGeneratorId"
    "CRM.SalesBatchGenerator_PropositionModelPricingRequest" }o--|| "CRM.SalesBatchGenerators" : "SalesBatchGeneratorId"
    "CRM.SalesBatchGenerators" }o--|| "CRM.Customers" : "CustomerId"
    "CRM.SalesBatchSeries_SalesBatchGenerator" }o--|| "CRM.SalesBatchGenerators" : "SalesBatchGeneratorId"
    "CRM.SalesBatches" }o--|| "CRM.SalesBatchSeries" : "SalesBatchSeriesId"
    "CRM.SalesBatchSeries_SalesBatchGenerator" }o--|| "CRM.SalesBatchSeries" : "SalesBatchSeriesId"
    "CRM.SalesBatchStrategies" }o--|| "CRM.SalesBatchStrategyProductComponentMPRGroups" : "SalesBatchStrategyProductComponentMPRGroupId"
    "CRM.SalesBatchStrategyProductComponentMPRGroup_ProductComponentMPR" }o--|| "CRM.ProductComponentModelPricingRequests" : "ProductComponentModelPricingRequestId"
    "CRM.SalesBatchStrategyProductComponentMPRGroup_ProductComponentMPR" }o--|| "CRM.SalesBatchStrategyProductComponentMPRGroups" : "SalesBatchStrategyProductComponentMPRGroupId"
    "CRM.SalesBatchStrategyProductComponentMPRGroups" }o--|| "CRM.SalesBatches" : "SalesBatchId"
    "CRM.ProductComponentSalesBatchItems" }o--|| "CRM.SalesBatches" : "SalesBatchId"
    "CRM.PropositionSalesBatchItems" }o--|| "CRM.SalesBatches" : "SalesBatchId"
    "CRM.SalesBatch_TSSelector" }o--|| "CRM.SalesBatches" : "SalesBatchId"
    "CRM.SalesBatches" }o--|| "CRM.Customers" : "CustomerId"
    "CRM.EstimatedSalesVolumes" }o--|| "CRM.SalesBatches" : "SalesBatchId"
erDiagram
    "CRM.SalesBatchDetails" {
        uniqueidentifier Id PK
        uniqueidentifier SalesBatchId FK
        nvarchar Key 
        nvarchar Value 
        int FormatType 
        uniqueidentifier CustomEnumId FK
        uniqueidentifier Tenant 
        datetimeoffset EntityCreatedDateTime 
        datetimeoffset EntityUpdatedDateTime 
        uniqueidentifier EntityCreatedAuthToken 
        uniqueidentifier EntityUpdatedAuthToken 
        bit Concealed 
        int PricingStage 
        bit UserOverwritableOnPricing 
    }

    "CRM.SalesBatchGeneratorDetails" {
        uniqueidentifier Id PK
        uniqueidentifier SalesBatchGeneratorId FK
        nvarchar Key 
        nvarchar Value 
        int FormatType 
        uniqueidentifier CustomEnumId FK
        uniqueidentifier Tenant 
        datetimeoffset EntityCreatedDateTime 
        datetimeoffset EntityUpdatedDateTime 
        uniqueidentifier EntityCreatedAuthToken 
        uniqueidentifier EntityUpdatedAuthToken 
        bit Concealed 
        int PricingStage 
        bit UserOverwritableOnPricing 
    }

    "CRM.SalesBatchGenerators" {
        uniqueidentifier Id PK
        nvarchar Name 
        nvarchar Description 
        int AllowedScoringType 
        bit MustEstimateSalesVolumes 
        uniqueidentifier Tenant 
        datetimeoffset EntityCreatedDateTime 
        datetimeoffset EntityUpdatedDateTime 
        uniqueidentifier EntityCreatedAuthToken 
        uniqueidentifier EntityUpdatedAuthToken 
        bit Concealed 
        bit SourceInAdvance 
        uniqueidentifier CustomerId FK
        int SalesBatchForecastType 
        uniqueidentifier ScriptId 
    }

    "CRM.SalesBatchSeries" {
        uniqueidentifier Id PK
        nvarchar Name 
        datetimeoffset Start 
        datetimeoffset End 
        nvarchar Schedule 
        datetimeoffset NextRunTime 
        uniqueidentifier Tenant 
        datetimeoffset EntityCreatedDateTime 
        datetimeoffset EntityUpdatedDateTime 
        uniqueidentifier EntityCreatedAuthToken 
        uniqueidentifier EntityUpdatedAuthToken 
        bit Concealed 
    }

    "CRM.SalesBatchSeries_SalesBatchGenerator" {
        uniqueidentifier Id PK
        uniqueidentifier SalesBatchSeriesId FK
        uniqueidentifier SalesBatchGeneratorId FK
        nvarchar Schedule 
        datetimeoffset NextRunTime 
        uniqueidentifier Tenant 
        datetimeoffset EntityCreatedDateTime 
        datetimeoffset EntityUpdatedDateTime 
        uniqueidentifier EntityCreatedAuthToken 
        uniqueidentifier EntityUpdatedAuthToken 
        bit Concealed 
        int OrderIndex 
    }

    "CRM.SalesBatchStrategies" {
        uniqueidentifier Id PK
        uniqueidentifier SalesBatchStrategyProductComponentMPRGroupId FK
        int SourcingType 
        uniqueidentifier ProductElementId 
        decimal Percentage 
        int ProcurementPeriodInMonths 
        int ProcurementOffsetPeriodInMonths 
        int ProcurementDeliveryPeriodInMonths 
        decimal StopLossThreshold 
        int StopLossThresholdUnit 
        int FallbackStrategySourcingType 
        datetimeoffset StartDate 
        datetimeoffset EndDate 
        uniqueidentifier Tenant 
        datetimeoffset EntityCreatedDateTime 
        datetimeoffset EntityUpdatedDateTime 
        uniqueidentifier EntityCreatedAuthToken 
        uniqueidentifier EntityUpdatedAuthToken 
        bit Concealed 
        datetimeoffset ProcurementEnd 
        datetimeoffset ProcurementStart 
    }

    "CRM.SalesBatchStrategyProductComponentMPRGroup_ProductComponentMPR" {
        uniqueidentifier Id PK
        uniqueidentifier SalesBatchStrategyProductComponentMPRGroupId FK
        uniqueidentifier ProductComponentModelPricingRequestId FK
        uniqueidentifier Tenant 
        datetimeoffset EntityCreatedDateTime 
        datetimeoffset EntityUpdatedDateTime 
        uniqueidentifier EntityCreatedAuthToken 
        uniqueidentifier EntityUpdatedAuthToken 
        bit Concealed 
    }

    "CRM.SalesBatchStrategyProductComponentMPRGroups" {
        uniqueidentifier Id PK
        uniqueidentifier SalesBatchId FK
        uniqueidentifier Tenant 
        datetimeoffset EntityCreatedDateTime 
        datetimeoffset EntityUpdatedDateTime 
        uniqueidentifier EntityCreatedAuthToken 
        uniqueidentifier EntityUpdatedAuthToken 
        bit Concealed 
    }

    "CRM.SalesBatches" {
        uniqueidentifier Id PK
        nvarchar InternalReference 
        nvarchar ExternalReference 
        uniqueidentifier SalesBatchSeriesId FK
        uniqueidentifier Tenant 
        datetimeoffset EntityCreatedDateTime 
        datetimeoffset EntityUpdatedDateTime 
        uniqueidentifier EntityCreatedAuthToken 
        uniqueidentifier EntityUpdatedAuthToken 
        datetimeoffset Timestamp 
        bit Concealed 
        bit SourceInAdvance 
        uniqueidentifier CustomerId FK
        int SalesBatchForecastType 
        uniqueidentifier ScriptId 
        bit WaitingOnScript 
        nvarchar ErrorMessage 
    }

    "CRM.SalesBatchDetails" }o--|| "CRM.CustomEnums" : "CustomEnumId"
    "CRM.SalesBatchDetails" }o--|| "Pricing.CustomEnums" : "CustomEnumId"
    "CRM.SalesBatchDetails" }o--|| "ApplicationCore.CustomEnums" : "CustomEnumId"
    "CRM.SalesBatchDetails" }o--|| "PM.CustomEnums" : "CustomEnumId"
    "CRM.SalesBatchDetails" }o--|| "CRM.SalesBatches" : "SalesBatchId"
    "CRM.SalesBatchGeneratorDetails" }o--|| "CRM.CustomEnums" : "CustomEnumId"
    "CRM.SalesBatchGeneratorDetails" }o--|| "Pricing.CustomEnums" : "CustomEnumId"
    "CRM.SalesBatchGeneratorDetails" }o--|| "ApplicationCore.CustomEnums" : "CustomEnumId"
    "CRM.SalesBatchGeneratorDetails" }o--|| "PM.CustomEnums" : "CustomEnumId"
    "CRM.SalesBatchGeneratorDetails" }o--|| "CRM.SalesBatchGenerators" : "SalesBatchGeneratorId"
    "CRM.ProductComponentSalesBatchItem_SalesBatchGenerator" }o--|| "CRM.SalesBatchGenerators" : "SalesBatchGeneratorId"
    "CRM.PropositionSalesBatchItem_SalesBatchGenerator" }o--|| "CRM.SalesBatchGenerators" : "SalesBatchGeneratorId"
    "CRM.SalesBatchGenerator_PropositionModelPricingRequest" }o--|| "CRM.SalesBatchGenerators" : "SalesBatchGeneratorId"
    "CRM.SalesBatchGenerators" }o--|| "CRM.Customers" : "CustomerId"
    "CRM.SalesBatchSeries_SalesBatchGenerator" }o--|| "CRM.SalesBatchGenerators" : "SalesBatchGeneratorId"
    "CRM.SalesBatches" }o--|| "CRM.SalesBatchSeries" : "SalesBatchSeriesId"
    "CRM.SalesBatchSeries_SalesBatchGenerator" }o--|| "CRM.SalesBatchSeries" : "SalesBatchSeriesId"
    "CRM.SalesBatchStrategies" }o--|| "CRM.SalesBatchStrategyProductComponentMPRGroups" : "SalesBatchStrategyProductComponentMPRGroupId"
    "CRM.SalesBatchStrategyProductComponentMPRGroup_ProductComponentMPR" }o--|| "CRM.ProductComponentModelPricingRequests" : "ProductComponentModelPricingRequestId"
    "CRM.SalesBatchStrategyProductComponentMPRGroup_ProductComponentMPR" }o--|| "CRM.SalesBatchStrategyProductComponentMPRGroups" : "SalesBatchStrategyProductComponentMPRGroupId"
    "CRM.SalesBatchStrategyProductComponentMPRGroups" }o--|| "CRM.SalesBatches" : "SalesBatchId"
    "CRM.ProductComponentSalesBatchItems" }o--|| "CRM.SalesBatches" : "SalesBatchId"
    "CRM.PropositionSalesBatchItems" }o--|| "CRM.SalesBatches" : "SalesBatchId"
    "CRM.SalesBatch_TSSelector" }o--|| "CRM.SalesBatches" : "SalesBatchId"
    "CRM.SalesBatches" }o--|| "CRM.Customers" : "CustomerId"
    "CRM.EstimatedSalesVolumes" }o--|| "CRM.SalesBatches" : "SalesBatchId"
{
    "definitions":  {
                        "CRM.SalesBatchStrategyProductComponentMPRGroup_ProductComponentMPR":  {
                                                                                                   "properties":  {
                                                                                                                      "Concealed":  {
                                                                                                                                        "type":  "boolean",
                                                                                                                                        "description":  "bit"
                                                                                                                                    },
                                                                                                                      "EntityUpdatedAuthToken":  {
                                                                                                                                                     "format":  "uuid",
                                                                                                                                                     "description":  "uniqueidentifier",
                                                                                                                                                     "type":  "string"
                                                                                                                                                 },
                                                                                                                      "Id":  {
                                                                                                                                 "format":  "uuid",
                                                                                                                                 "description":  "uniqueidentifier",
                                                                                                                                 "type":  "string"
                                                                                                                             },
                                                                                                                      "EntityCreatedAuthToken":  {
                                                                                                                                                     "format":  "uuid",
                                                                                                                                                     "description":  "uniqueidentifier",
                                                                                                                                                     "type":  "string"
                                                                                                                                                 },
                                                                                                                      "EntityCreatedDateTime":  {
                                                                                                                                                    "format":  "date-time",
                                                                                                                                                    "description":  "datetimeoffset",
                                                                                                                                                    "type":  "string"
                                                                                                                                                },
                                                                                                                      "EntityUpdatedDateTime":  {
                                                                                                                                                    "format":  "date-time",
                                                                                                                                                    "description":  "datetimeoffset",
                                                                                                                                                    "type":  "string"
                                                                                                                                                },
                                                                                                                      "ProductComponentModelPricingRequestId":  {
                                                                                                                                                                    "type":  "string",
                                                                                                                                                                    "description":  "FK to CRM.ProductComponentModelPricingRequests"
                                                                                                                                                                },
                                                                                                                      "SalesBatchStrategyProductComponentMPRGroupId":  {
                                                                                                                                                                           "type":  "string",
                                                                                                                                                                           "description":  "FK to CRM.SalesBatchStrategyProductComponentMPRGroups"
                                                                                                                                                                       },
                                                                                                                      "Tenant":  {
                                                                                                                                     "format":  "uuid",
                                                                                                                                     "description":  "uniqueidentifier",
                                                                                                                                     "type":  "string"
                                                                                                                                 }
                                                                                                                  },
                                                                                                   "type":  "object"
                                                                                               },
                        "CRM.SalesBatchSeries":  {
                                                     "properties":  {
                                                                        "Tenant":  {
                                                                                       "format":  "uuid",
                                                                                       "description":  "uniqueidentifier",
                                                                                       "type":  "string"
                                                                                   },
                                                                        "EntityUpdatedAuthToken":  {
                                                                                                       "format":  "uuid",
                                                                                                       "description":  "uniqueidentifier",
                                                                                                       "type":  "string"
                                                                                                   },
                                                                        "Id":  {
                                                                                   "format":  "uuid",
                                                                                   "description":  "uniqueidentifier",
                                                                                   "type":  "string"
                                                                               },
                                                                        "Start":  {
                                                                                      "format":  "date-time",
                                                                                      "description":  "datetimeoffset",
                                                                                      "type":  "string"
                                                                                  },
                                                                        "Concealed":  {
                                                                                          "type":  "boolean",
                                                                                          "description":  "bit"
                                                                                      },
                                                                        "Schedule":  {
                                                                                         "type":  "string",
                                                                                         "description":  "nvarchar"
                                                                                     },
                                                                        "EntityCreatedDateTime":  {
                                                                                                      "format":  "date-time",
                                                                                                      "description":  "datetimeoffset",
                                                                                                      "type":  "string"
                                                                                                  },
                                                                        "Name":  {
                                                                                     "type":  "string",
                                                                                     "description":  "nvarchar"
                                                                                 },
                                                                        "EntityUpdatedDateTime":  {
                                                                                                      "format":  "date-time",
                                                                                                      "description":  "datetimeoffset",
                                                                                                      "type":  "string"
                                                                                                  },
                                                                        "NextRunTime":  {
                                                                                            "format":  "date-time",
                                                                                            "description":  "datetimeoffset",
                                                                                            "type":  "string"
                                                                                        },
                                                                        "EntityCreatedAuthToken":  {
                                                                                                       "format":  "uuid",
                                                                                                       "description":  "uniqueidentifier",
                                                                                                       "type":  "string"
                                                                                                   },
                                                                        "End":  {
                                                                                    "format":  "date-time",
                                                                                    "description":  "datetimeoffset",
                                                                                    "type":  "string"
                                                                                }
                                                                    },
                                                     "type":  "object"
                                                 },
                        "CRM.SalesBatchGeneratorDetails":  {
                                                               "properties":  {
                                                                                  "PricingStage":  {
                                                                                                       "type":  "integer",
                                                                                                       "description":  "int"
                                                                                                   },
                                                                                  "Id":  {
                                                                                             "format":  "uuid",
                                                                                             "description":  "uniqueidentifier",
                                                                                             "type":  "string"
                                                                                         },
                                                                                  "EntityUpdatedAuthToken":  {
                                                                                                                 "format":  "uuid",
                                                                                                                 "description":  "uniqueidentifier",
                                                                                                                 "type":  "string"
                                                                                                             },
                                                                                  "Concealed":  {
                                                                                                    "type":  "boolean",
                                                                                                    "description":  "bit"
                                                                                                },
                                                                                  "Value":  {
                                                                                                "type":  "string",
                                                                                                "description":  "nvarchar"
                                                                                            },
                                                                                  "EntityCreatedAuthToken":  {
                                                                                                                 "format":  "uuid",
                                                                                                                 "description":  "uniqueidentifier",
                                                                                                                 "type":  "string"
                                                                                                             },
                                                                                  "UserOverwritableOnPricing":  {
                                                                                                                    "type":  "boolean",
                                                                                                                    "description":  "bit"
                                                                                                                },
                                                                                  "SalesBatchGeneratorId":  {
                                                                                                                "type":  "string",
                                                                                                                "description":  "FK to CRM.SalesBatchGenerators"
                                                                                                            },
                                                                                  "EntityUpdatedDateTime":  {
                                                                                                                "format":  "date-time",
                                                                                                                "description":  "datetimeoffset",
                                                                                                                "type":  "string"
                                                                                                            },
                                                                                  "Tenant":  {
                                                                                                 "format":  "uuid",
                                                                                                 "description":  "uniqueidentifier",
                                                                                                 "type":  "string"
                                                                                             },
                                                                                  "Key":  {
                                                                                              "type":  "string",
                                                                                              "description":  "nvarchar"
                                                                                          },
                                                                                  "EntityCreatedDateTime":  {
                                                                                                                "format":  "date-time",
                                                                                                                "description":  "datetimeoffset",
                                                                                                                "type":  "string"
                                                                                                            },
                                                                                  "FormatType":  {
                                                                                                     "type":  "integer",
                                                                                                     "description":  "int"
                                                                                                 },
                                                                                  "CustomEnumId":  {
                                                                                                       "type":  "string",
                                                                                                       "description":  "FK to PM.CustomEnums"
                                                                                                   }
                                                                              },
                                                               "type":  "object"
                                                           },
                        "CRM.SalesBatchDetails":  {
                                                      "properties":  {
                                                                         "PricingStage":  {
                                                                                              "type":  "integer",
                                                                                              "description":  "int"
                                                                                          },
                                                                         "Id":  {
                                                                                    "format":  "uuid",
                                                                                    "description":  "uniqueidentifier",
                                                                                    "type":  "string"
                                                                                },
                                                                         "EntityUpdatedAuthToken":  {
                                                                                                        "format":  "uuid",
                                                                                                        "description":  "uniqueidentifier",
                                                                                                        "type":  "string"
                                                                                                    },
                                                                         "Concealed":  {
                                                                                           "type":  "boolean",
                                                                                           "description":  "bit"
                                                                                       },
                                                                         "Value":  {
                                                                                       "type":  "string",
                                                                                       "description":  "nvarchar"
                                                                                   },
                                                                         "EntityCreatedAuthToken":  {
                                                                                                        "format":  "uuid",
                                                                                                        "description":  "uniqueidentifier",
                                                                                                        "type":  "string"
                                                                                                    },
                                                                         "UserOverwritableOnPricing":  {
                                                                                                           "type":  "boolean",
                                                                                                           "description":  "bit"
                                                                                                       },
                                                                         "SalesBatchId":  {
                                                                                              "type":  "string",
                                                                                              "description":  "FK to CRM.SalesBatches"
                                                                                          },
                                                                         "EntityUpdatedDateTime":  {
                                                                                                       "format":  "date-time",
                                                                                                       "description":  "datetimeoffset",
                                                                                                       "type":  "string"
                                                                                                   },
                                                                         "Tenant":  {
                                                                                        "format":  "uuid",
                                                                                        "description":  "uniqueidentifier",
                                                                                        "type":  "string"
                                                                                    },
                                                                         "Key":  {
                                                                                     "type":  "string",
                                                                                     "description":  "nvarchar"
                                                                                 },
                                                                         "EntityCreatedDateTime":  {
                                                                                                       "format":  "date-time",
                                                                                                       "description":  "datetimeoffset",
                                                                                                       "type":  "string"
                                                                                                   },
                                                                         "FormatType":  {
                                                                                            "type":  "integer",
                                                                                            "description":  "int"
                                                                                        },
                                                                         "CustomEnumId":  {
                                                                                              "type":  "string",
                                                                                              "description":  "FK to PM.CustomEnums"
                                                                                          }
                                                                     },
                                                      "type":  "object"
                                                  },
                        "CRM.SalesBatches":  {
                                                 "properties":  {
                                                                    "ScriptId":  {
                                                                                     "format":  "uuid",
                                                                                     "description":  "uniqueidentifier",
                                                                                     "type":  "string"
                                                                                 },
                                                                    "Id":  {
                                                                               "format":  "uuid",
                                                                               "description":  "uniqueidentifier",
                                                                               "type":  "string"
                                                                           },
                                                                    "EntityUpdatedAuthToken":  {
                                                                                                   "format":  "uuid",
                                                                                                   "description":  "uniqueidentifier",
                                                                                                   "type":  "string"
                                                                                               },
                                                                    "Concealed":  {
                                                                                      "type":  "boolean",
                                                                                      "description":  "bit"
                                                                                  },
                                                                    "EntityCreatedAuthToken":  {
                                                                                                   "format":  "uuid",
                                                                                                   "description":  "uniqueidentifier",
                                                                                                   "type":  "string"
                                                                                               },
                                                                    "CustomerId":  {
                                                                                       "type":  "string",
                                                                                       "description":  "FK to CRM.Customers"
                                                                                   },
                                                                    "EntityUpdatedDateTime":  {
                                                                                                  "format":  "date-time",
                                                                                                  "description":  "datetimeoffset",
                                                                                                  "type":  "string"
                                                                                              },
                                                                    "ErrorMessage":  {
                                                                                         "type":  "string",
                                                                                         "description":  "nvarchar"
                                                                                     },
                                                                    "ExternalReference":  {
                                                                                              "type":  "string",
                                                                                              "description":  "nvarchar"
                                                                                          },
                                                                    "Tenant":  {
                                                                                   "format":  "uuid",
                                                                                   "description":  "uniqueidentifier",
                                                                                   "type":  "string"
                                                                               },
                                                                    "InternalReference":  {
                                                                                              "type":  "string",
                                                                                              "description":  "nvarchar"
                                                                                          },
                                                                    "SalesBatchSeriesId":  {
                                                                                               "type":  "string",
                                                                                               "description":  "FK to CRM.SalesBatchSeries"
                                                                                           },
                                                                    "WaitingOnScript":  {
                                                                                            "type":  "boolean",
                                                                                            "description":  "bit"
                                                                                        },
                                                                    "SourceInAdvance":  {
                                                                                            "type":  "boolean",
                                                                                            "description":  "bit"
                                                                                        },
                                                                    "EntityCreatedDateTime":  {
                                                                                                  "format":  "date-time",
                                                                                                  "description":  "datetimeoffset",
                                                                                                  "type":  "string"
                                                                                              },
                                                                    "SalesBatchForecastType":  {
                                                                                                   "type":  "integer",
                                                                                                   "description":  "int"
                                                                                               },
                                                                    "Timestamp":  {
                                                                                      "format":  "date-time",
                                                                                      "description":  "datetimeoffset",
                                                                                      "type":  "string"
                                                                                  }
                                                                },
                                                 "type":  "object"
                                             },
                        "CRM.SalesBatchGenerators":  {
                                                         "properties":  {
                                                                            "Concealed":  {
                                                                                              "type":  "boolean",
                                                                                              "description":  "bit"
                                                                                          },
                                                                            "ScriptId":  {
                                                                                             "format":  "uuid",
                                                                                             "description":  "uniqueidentifier",
                                                                                             "type":  "string"
                                                                                         },
                                                                            "Description":  {
                                                                                                "type":  "string",
                                                                                                "description":  "nvarchar"
                                                                                            },
                                                                            "EntityUpdatedAuthToken":  {
                                                                                                           "format":  "uuid",
                                                                                                           "description":  "uniqueidentifier",
                                                                                                           "type":  "string"
                                                                                                       },
                                                                            "Name":  {
                                                                                         "type":  "string",
                                                                                         "description":  "nvarchar"
                                                                                     },
                                                                            "Id":  {
                                                                                       "format":  "uuid",
                                                                                       "description":  "uniqueidentifier",
                                                                                       "type":  "string"
                                                                                   },
                                                                            "EntityCreatedAuthToken":  {
                                                                                                           "format":  "uuid",
                                                                                                           "description":  "uniqueidentifier",
                                                                                                           "type":  "string"
                                                                                                       },
                                                                            "CustomerId":  {
                                                                                               "type":  "string",
                                                                                               "description":  "FK to CRM.Customers"
                                                                                           },
                                                                            "AllowedScoringType":  {
                                                                                                       "type":  "integer",
                                                                                                       "description":  "int"
                                                                                                   },
                                                                            "EntityUpdatedDateTime":  {
                                                                                                          "format":  "date-time",
                                                                                                          "description":  "datetimeoffset",
                                                                                                          "type":  "string"
                                                                                                      },
                                                                            "Tenant":  {
                                                                                           "format":  "uuid",
                                                                                           "description":  "uniqueidentifier",
                                                                                           "type":  "string"
                                                                                       },
                                                                            "SourceInAdvance":  {
                                                                                                    "type":  "boolean",
                                                                                                    "description":  "bit"
                                                                                                },
                                                                            "EntityCreatedDateTime":  {
                                                                                                          "format":  "date-time",
                                                                                                          "description":  "datetimeoffset",
                                                                                                          "type":  "string"
                                                                                                      },
                                                                            "SalesBatchForecastType":  {
                                                                                                           "type":  "integer",
                                                                                                           "description":  "int"
                                                                                                       },
                                                                            "MustEstimateSalesVolumes":  {
                                                                                                             "type":  "boolean",
                                                                                                             "description":  "bit"
                                                                                                         }
                                                                        },
                                                         "type":  "object"
                                                     },
                        "CRM.SalesBatchStrategies":  {
                                                         "properties":  {
                                                                            "Concealed":  {
                                                                                              "type":  "boolean",
                                                                                              "description":  "bit"
                                                                                          },
                                                                            "Id":  {
                                                                                       "format":  "uuid",
                                                                                       "description":  "uniqueidentifier",
                                                                                       "type":  "string"
                                                                                   },
                                                                            "SourcingType":  {
                                                                                                 "type":  "integer",
                                                                                                 "description":  "int"
                                                                                             },
                                                                            "EntityUpdatedDateTime":  {
                                                                                                          "format":  "date-time",
                                                                                                          "description":  "datetimeoffset",
                                                                                                          "type":  "string"
                                                                                                      },
                                                                            "EntityUpdatedAuthToken":  {
                                                                                                           "format":  "uuid",
                                                                                                           "description":  "uniqueidentifier",
                                                                                                           "type":  "string"
                                                                                                       },
                                                                            "FallbackStrategySourcingType":  {
                                                                                                                 "type":  "integer",
                                                                                                                 "description":  "int"
                                                                                                             },
                                                                            "ProcurementEnd":  {
                                                                                                   "format":  "date-time",
                                                                                                   "description":  "datetimeoffset",
                                                                                                   "type":  "string"
                                                                                               },
                                                                            "EntityCreatedAuthToken":  {
                                                                                                           "format":  "uuid",
                                                                                                           "description":  "uniqueidentifier",
                                                                                                           "type":  "string"
                                                                                                       },
                                                                            "ProcurementPeriodInMonths":  {
                                                                                                              "type":  "integer",
                                                                                                              "description":  "int"
                                                                                                          },
                                                                            "EndDate":  {
                                                                                            "format":  "date-time",
                                                                                            "description":  "datetimeoffset",
                                                                                            "type":  "string"
                                                                                        },
                                                                            "Percentage":  {
                                                                                               "type":  "string",
                                                                                               "description":  "decimal"
                                                                                           },
                                                                            "ProcurementStart":  {
                                                                                                     "format":  "date-time",
                                                                                                     "description":  "datetimeoffset",
                                                                                                     "type":  "string"
                                                                                                 },
                                                                            "EntityCreatedDateTime":  {
                                                                                                          "format":  "date-time",
                                                                                                          "description":  "datetimeoffset",
                                                                                                          "type":  "string"
                                                                                                      },
                                                                            "ProcurementOffsetPeriodInMonths":  {
                                                                                                                    "type":  "integer",
                                                                                                                    "description":  "int"
                                                                                                                },
                                                                            "SalesBatchStrategyProductComponentMPRGroupId":  {
                                                                                                                                 "type":  "string",
                                                                                                                                 "description":  "FK to CRM.SalesBatchStrategyProductComponentMPRGroups"
                                                                                                                             },
                                                                            "Tenant":  {
                                                                                           "format":  "uuid",
                                                                                           "description":  "uniqueidentifier",
                                                                                           "type":  "string"
                                                                                       },
                                                                            "StopLossThresholdUnit":  {
                                                                                                          "type":  "integer",
                                                                                                          "description":  "int"
                                                                                                      },
                                                                            "ProcurementDeliveryPeriodInMonths":  {
                                                                                                                      "type":  "integer",
                                                                                                                      "description":  "int"
                                                                                                                  },
                                                                            "ProductElementId":  {
                                                                                                     "format":  "uuid",
                                                                                                     "description":  "uniqueidentifier",
                                                                                                     "type":  "string"
                                                                                                 },
                                                                            "StartDate":  {
                                                                                              "format":  "date-time",
                                                                                              "description":  "datetimeoffset",
                                                                                              "type":  "string"
                                                                                          },
                                                                            "StopLossThreshold":  {
                                                                                                      "type":  "string",
                                                                                                      "description":  "decimal"
                                                                                                  }
                                                                        },
                                                         "type":  "object"
                                                     },
                        "CRM.SalesBatchSeries_SalesBatchGenerator":  {
                                                                         "properties":  {
                                                                                            "Id":  {
                                                                                                       "format":  "uuid",
                                                                                                       "description":  "uniqueidentifier",
                                                                                                       "type":  "string"
                                                                                                   },
                                                                                            "EntityUpdatedAuthToken":  {
                                                                                                                           "format":  "uuid",
                                                                                                                           "description":  "uniqueidentifier",
                                                                                                                           "type":  "string"
                                                                                                                       },
                                                                                            "Concealed":  {
                                                                                                              "type":  "boolean",
                                                                                                              "description":  "bit"
                                                                                                          },
                                                                                            "EntityCreatedAuthToken":  {
                                                                                                                           "format":  "uuid",
                                                                                                                           "description":  "uniqueidentifier",
                                                                                                                           "type":  "string"
                                                                                                                       },
                                                                                            "Schedule":  {
                                                                                                             "type":  "string",
                                                                                                             "description":  "nvarchar"
                                                                                                         },
                                                                                            "SalesBatchGeneratorId":  {
                                                                                                                          "type":  "string",
                                                                                                                          "description":  "FK to CRM.SalesBatchGenerators"
                                                                                                                      },
                                                                                            "EntityUpdatedDateTime":  {
                                                                                                                          "format":  "date-time",
                                                                                                                          "description":  "datetimeoffset",
                                                                                                                          "type":  "string"
                                                                                                                      },
                                                                                            "OrderIndex":  {
                                                                                                               "type":  "integer",
                                                                                                               "description":  "int"
                                                                                                           },
                                                                                            "Tenant":  {
                                                                                                           "format":  "uuid",
                                                                                                           "description":  "uniqueidentifier",
                                                                                                           "type":  "string"
                                                                                                       },
                                                                                            "NextRunTime":  {
                                                                                                                "format":  "date-time",
                                                                                                                "description":  "datetimeoffset",
                                                                                                                "type":  "string"
                                                                                                            },
                                                                                            "SalesBatchSeriesId":  {
                                                                                                                       "type":  "string",
                                                                                                                       "description":  "FK to CRM.SalesBatchSeries"
                                                                                                                   },
                                                                                            "EntityCreatedDateTime":  {
                                                                                                                          "format":  "date-time",
                                                                                                                          "description":  "datetimeoffset",
                                                                                                                          "type":  "string"
                                                                                                                      }
                                                                                        },
                                                                         "type":  "object"
                                                                     },
                        "CRM.SalesBatchStrategyProductComponentMPRGroups":  {
                                                                                "properties":  {
                                                                                                   "Concealed":  {
                                                                                                                     "type":  "boolean",
                                                                                                                     "description":  "bit"
                                                                                                                 },
                                                                                                   "EntityUpdatedAuthToken":  {
                                                                                                                                  "format":  "uuid",
                                                                                                                                  "description":  "uniqueidentifier",
                                                                                                                                  "type":  "string"
                                                                                                                              },
                                                                                                   "Id":  {
                                                                                                              "format":  "uuid",
                                                                                                              "description":  "uniqueidentifier",
                                                                                                              "type":  "string"
                                                                                                          },
                                                                                                   "EntityCreatedDateTime":  {
                                                                                                                                 "format":  "date-time",
                                                                                                                                 "description":  "datetimeoffset",
                                                                                                                                 "type":  "string"
                                                                                                                             },
                                                                                                   "EntityUpdatedDateTime":  {
                                                                                                                                 "format":  "date-time",
                                                                                                                                 "description":  "datetimeoffset",
                                                                                                                                 "type":  "string"
                                                                                                                             },
                                                                                                   "SalesBatchId":  {
                                                                                                                        "type":  "string",
                                                                                                                        "description":  "FK to CRM.SalesBatches"
                                                                                                                    },
                                                                                                   "EntityCreatedAuthToken":  {
                                                                                                                                  "format":  "uuid",
                                                                                                                                  "description":  "uniqueidentifier",
                                                                                                                                  "type":  "string"
                                                                                                                              },
                                                                                                   "Tenant":  {
                                                                                                                  "format":  "uuid",
                                                                                                                  "description":  "uniqueidentifier",
                                                                                                                  "type":  "string"
                                                                                                              }
                                                                                               },
                                                                                "type":  "object"
                                                                            }
                    },
    "title":  "CRM.SalesBatch",
    "$comment":  "Generated from Mermaid ERD with property-level descriptions",
    "$schema":  "http://json-schema.org/draft-07/schema#",
    "type":  "object"
}

Sales Channel

Aggregate Root: SalesChannel

Represents different channels through which sales are conducted and managed.

erDiagram
    "CRM.SalesChannels" {
        uniqueidentifier Id PK
        uniqueidentifier Tenant 
        datetimeoffset EntityCreatedDateTime 
        datetimeoffset EntityUpdatedDateTime 
        uniqueidentifier EntityCreatedAuthToken 
        uniqueidentifier EntityUpdatedAuthToken 
        bit Concealed 
    }
erDiagram
    "CRM.SalesChannels" {
        uniqueidentifier Id PK
        uniqueidentifier Tenant 
        datetimeoffset EntityCreatedDateTime 
        datetimeoffset EntityUpdatedDateTime 
        uniqueidentifier EntityCreatedAuthToken 
        uniqueidentifier EntityUpdatedAuthToken 
        bit Concealed 
    }
{
    "definitions":  {
                        "CRM.SalesChannels":  {
                                                  "properties":  {
                                                                     "Concealed":  {
                                                                                       "type":  "boolean",
                                                                                       "description":  "bit"
                                                                                   },
                                                                     "EntityUpdatedAuthToken":  {
                                                                                                    "format":  "uuid",
                                                                                                    "description":  "uniqueidentifier",
                                                                                                    "type":  "string"
                                                                                                },
                                                                     "Id":  {
                                                                                "format":  "uuid",
                                                                                "description":  "uniqueidentifier",
                                                                                "type":  "string"
                                                                            },
                                                                     "EntityCreatedDateTime":  {
                                                                                                   "format":  "date-time",
                                                                                                   "description":  "datetimeoffset",
                                                                                                   "type":  "string"
                                                                                               },
                                                                     "EntityUpdatedDateTime":  {
                                                                                                   "format":  "date-time",
                                                                                                   "description":  "datetimeoffset",
                                                                                                   "type":  "string"
                                                                                               },
                                                                     "EntityCreatedAuthToken":  {
                                                                                                    "format":  "uuid",
                                                                                                    "description":  "uniqueidentifier",
                                                                                                    "type":  "string"
                                                                                                },
                                                                     "Tenant":  {
                                                                                    "format":  "uuid",
                                                                                    "description":  "uniqueidentifier",
                                                                                    "type":  "string"
                                                                                }
                                                                 },
                                                  "type":  "object"
                                              }
                    },
    "title":  "CRM.SalesChannel",
    "$comment":  "Generated from Mermaid ERD with property-level descriptions",
    "$schema":  "http://json-schema.org/draft-07/schema#",
    "type":  "object"
}

SBI

Aggregate Root: SBI

Represents SBI (Standard Business Identifier) entities for business classification and identification.

erDiagram
    "CRM.SBIs" {
        uniqueidentifier Id PK
        nvarchar Code 
        nvarchar Description 
        uniqueidentifier Tenant 
        datetimeoffset EntityCreatedDateTime 
        datetimeoffset EntityUpdatedDateTime 
        uniqueidentifier EntityCreatedAuthToken 
        uniqueidentifier EntityUpdatedAuthToken 
        bit Concealed 
    }

    "CRM.Customer_SBI" }o--|| "CRM.SBIs" : "SBIId"
erDiagram
    "CRM.SBIs" {
        uniqueidentifier Id PK
        nvarchar Code 
        nvarchar Description 
        uniqueidentifier Tenant 
        datetimeoffset EntityCreatedDateTime 
        datetimeoffset EntityUpdatedDateTime 
        uniqueidentifier EntityCreatedAuthToken 
        uniqueidentifier EntityUpdatedAuthToken 
        bit Concealed 
    }

    "CRM.Customer_SBI" }o--|| "CRM.SBIs" : "SBIId"
{
    "definitions":  {
                        "CRM.SBIs":  {
                                         "properties":  {
                                                            "Concealed":  {
                                                                              "type":  "boolean",
                                                                              "description":  "bit"
                                                                          },
                                                            "EntityUpdatedAuthToken":  {
                                                                                           "format":  "uuid",
                                                                                           "description":  "uniqueidentifier",
                                                                                           "type":  "string"
                                                                                       },
                                                            "Id":  {
                                                                       "format":  "uuid",
                                                                       "description":  "uniqueidentifier",
                                                                       "type":  "string"
                                                                   },
                                                            "Description":  {
                                                                                "type":  "string",
                                                                                "description":  "nvarchar"
                                                                            },
                                                            "EntityCreatedDateTime":  {
                                                                                          "format":  "date-time",
                                                                                          "description":  "datetimeoffset",
                                                                                          "type":  "string"
                                                                                      },
                                                            "EntityUpdatedDateTime":  {
                                                                                          "format":  "date-time",
                                                                                          "description":  "datetimeoffset",
                                                                                          "type":  "string"
                                                                                      },
                                                            "Code":  {
                                                                         "type":  "string",
                                                                         "description":  "nvarchar"
                                                                     },
                                                            "EntityCreatedAuthToken":  {
                                                                                           "format":  "uuid",
                                                                                           "description":  "uniqueidentifier",
                                                                                           "type":  "string"
                                                                                       },
                                                            "Tenant":  {
                                                                           "format":  "uuid",
                                                                           "description":  "uniqueidentifier",
                                                                           "type":  "string"
                                                                       }
                                                        },
                                         "type":  "object"
                                     }
                    },
    "title":  "CRM.SBI",
    "$comment":  "Generated from Mermaid ERD with property-level descriptions",
    "$schema":  "http://json-schema.org/draft-07/schema#",
    "type":  "object"
}

Site

Aggregate Root: Site

Represents physical sites with their associated metering points and installations.

erDiagram
    "CRM.Site_MeteringPoint" {
        uniqueidentifier Id PK
        uniqueidentifier SiteId FK
        uniqueidentifier MeteringPointId 
        uniqueidentifier Tenant 
        datetimeoffset EntityCreatedDateTime 
        datetimeoffset EntityUpdatedDateTime 
        uniqueidentifier EntityCreatedAuthToken 
        uniqueidentifier EntityUpdatedAuthToken 
        bit Concealed 
    }

    "CRM.Sites" {
        uniqueidentifier Id PK
        nvarchar Name 
        uniqueidentifier CustomerId FK
        uniqueidentifier Tenant 
        datetimeoffset EntityCreatedDateTime 
        datetimeoffset EntityUpdatedDateTime 
        uniqueidentifier EntityCreatedAuthToken 
        uniqueidentifier EntityUpdatedAuthToken 
        bit Concealed 
    }

    "CRM.Installations" }o--|| "CRM.Site_MeteringPoint" : "SiteMeteringPointId"
    "CRM.Site_MeteringPoint" }o--|| "CRM.Sites" : "SiteId"
    "CRM.Site_MeteringPoint_TimeSeries" }o--|| "CRM.Site_MeteringPoint" : "SiteMeteringPointId"
    "CRM.Installations" }o--|| "CRM.Sites" : "SiteId"
    "CRM.Site_TimeSeries" }o--|| "CRM.Sites" : "SiteId"
    "CRM.Sites" }o--|| "CRM.Customers" : "CustomerId"
    "CRM.ContractVersion_Site" }o--|| "CRM.Sites" : "SiteId"
erDiagram
    "CRM.Site_MeteringPoint" {
        uniqueidentifier Id PK
        uniqueidentifier SiteId FK
        uniqueidentifier MeteringPointId 
        uniqueidentifier Tenant 
        datetimeoffset EntityCreatedDateTime 
        datetimeoffset EntityUpdatedDateTime 
        uniqueidentifier EntityCreatedAuthToken 
        uniqueidentifier EntityUpdatedAuthToken 
        bit Concealed 
    }

    "CRM.Sites" {
        uniqueidentifier Id PK
        nvarchar Name 
        uniqueidentifier CustomerId FK
        uniqueidentifier Tenant 
        datetimeoffset EntityCreatedDateTime 
        datetimeoffset EntityUpdatedDateTime 
        uniqueidentifier EntityCreatedAuthToken 
        uniqueidentifier EntityUpdatedAuthToken 
        bit Concealed 
    }

    "CRM.Installations" }o--|| "CRM.Site_MeteringPoint" : "SiteMeteringPointId"
    "CRM.Site_MeteringPoint" }o--|| "CRM.Sites" : "SiteId"
    "CRM.Site_MeteringPoint_TimeSeries" }o--|| "CRM.Site_MeteringPoint" : "SiteMeteringPointId"
    "CRM.Installations" }o--|| "CRM.Sites" : "SiteId"
    "CRM.Site_TimeSeries" }o--|| "CRM.Sites" : "SiteId"
    "CRM.Sites" }o--|| "CRM.Customers" : "CustomerId"
    "CRM.ContractVersion_Site" }o--|| "CRM.Sites" : "SiteId"
{
    "definitions":  {
                        "CRM.Site_MeteringPoint":  {
                                                       "properties":  {
                                                                          "Concealed":  {
                                                                                            "type":  "boolean",
                                                                                            "description":  "bit"
                                                                                        },
                                                                          "EntityUpdatedAuthToken":  {
                                                                                                         "format":  "uuid",
                                                                                                         "description":  "uniqueidentifier",
                                                                                                         "type":  "string"
                                                                                                     },
                                                                          "Id":  {
                                                                                     "format":  "uuid",
                                                                                     "description":  "uniqueidentifier",
                                                                                     "type":  "string"
                                                                                 },
                                                                          "SiteId":  {
                                                                                         "type":  "string",
                                                                                         "description":  "FK to CRM.Sites"
                                                                                     },
                                                                          "MeteringPointId":  {
                                                                                                  "format":  "uuid",
                                                                                                  "description":  "uniqueidentifier",
                                                                                                  "type":  "string"
                                                                                              },
                                                                          "EntityCreatedDateTime":  {
                                                                                                        "format":  "date-time",
                                                                                                        "description":  "datetimeoffset",
                                                                                                        "type":  "string"
                                                                                                    },
                                                                          "EntityUpdatedDateTime":  {
                                                                                                        "format":  "date-time",
                                                                                                        "description":  "datetimeoffset",
                                                                                                        "type":  "string"
                                                                                                    },
                                                                          "EntityCreatedAuthToken":  {
                                                                                                         "format":  "uuid",
                                                                                                         "description":  "uniqueidentifier",
                                                                                                         "type":  "string"
                                                                                                     },
                                                                          "Tenant":  {
                                                                                         "format":  "uuid",
                                                                                         "description":  "uniqueidentifier",
                                                                                         "type":  "string"
                                                                                     }
                                                                      },
                                                       "type":  "object"
                                                   },
                        "CRM.Sites":  {
                                          "properties":  {
                                                             "Concealed":  {
                                                                               "type":  "boolean",
                                                                               "description":  "bit"
                                                                           },
                                                             "EntityUpdatedAuthToken":  {
                                                                                            "format":  "uuid",
                                                                                            "description":  "uniqueidentifier",
                                                                                            "type":  "string"
                                                                                        },
                                                             "Id":  {
                                                                        "format":  "uuid",
                                                                        "description":  "uniqueidentifier",
                                                                        "type":  "string"
                                                                    },
                                                             "CustomerId":  {
                                                                                "type":  "string",
                                                                                "description":  "FK to CRM.Customers"
                                                                            },
                                                             "EntityCreatedDateTime":  {
                                                                                           "format":  "date-time",
                                                                                           "description":  "datetimeoffset",
                                                                                           "type":  "string"
                                                                                       },
                                                             "Name":  {
                                                                          "type":  "string",
                                                                          "description":  "nvarchar"
                                                                      },
                                                             "EntityUpdatedDateTime":  {
                                                                                           "format":  "date-time",
                                                                                           "description":  "datetimeoffset",
                                                                                           "type":  "string"
                                                                                       },
                                                             "EntityCreatedAuthToken":  {
                                                                                            "format":  "uuid",
                                                                                            "description":  "uniqueidentifier",
                                                                                            "type":  "string"
                                                                                        },
                                                             "Tenant":  {
                                                                            "format":  "uuid",
                                                                            "description":  "uniqueidentifier",
                                                                            "type":  "string"
                                                                        }
                                                         },
                                          "type":  "object"
                                      }
                    },
    "title":  "CRM.Site",
    "$comment":  "Generated from Mermaid ERD with property-level descriptions",
    "$schema":  "http://json-schema.org/draft-07/schema#",
    "type":  "object"
}

Custom Enum

Aggregate Root: CustomEnum

Represents custom enumerations with components, values, and key values for flexible data classification.

erDiagram
    "CRM.CustomEnumComponentValueKeyValues" {
        uniqueidentifier Id PK
        uniqueidentifier CustomEnumComponentValueId FK
        nvarchar Key 
        nvarchar Value 
        uniqueidentifier Tenant 
        datetimeoffset EntityCreatedDateTime 
        datetimeoffset EntityUpdatedDateTime 
        uniqueidentifier EntityCreatedAuthToken 
        uniqueidentifier EntityUpdatedAuthToken 
        bit Concealed 
    }

    "CRM.CustomEnumComponentValues" {
        uniqueidentifier Id PK
        uniqueidentifier CustomEnumComponentId FK
        nvarchar Value 
        nvarchar ScriptValue 
        datetimeoffset StartDate 
        uniqueidentifier Tenant 
        datetimeoffset EntityCreatedDateTime 
        datetimeoffset EntityUpdatedDateTime 
        uniqueidentifier EntityCreatedAuthToken 
        uniqueidentifier EntityUpdatedAuthToken 
        bit Concealed 
    }

    "CRM.CustomEnumComponents" {
        uniqueidentifier Id PK
        uniqueidentifier CustomEnumId FK
        nvarchar Name 
        nvarchar ExternalReference 
        datetimeoffset StartDate 
        datetimeoffset EndDate 
        uniqueidentifier Tenant 
        datetimeoffset EntityCreatedDateTime 
        datetimeoffset EntityUpdatedDateTime 
        uniqueidentifier EntityCreatedAuthToken 
        uniqueidentifier EntityUpdatedAuthToken 
        bit Concealed 
    }

    "CRM.CustomEnums" {
        uniqueidentifier Id PK
        nvarchar Name 
        nvarchar Description 
        uniqueidentifier Tenant 
        datetimeoffset EntityCreatedDateTime 
        datetimeoffset EntityUpdatedDateTime 
        uniqueidentifier EntityCreatedAuthToken 
        uniqueidentifier EntityUpdatedAuthToken 
        bit Concealed 
    }

    "PM.CustomEnumComponentValueKeyValues" }o--|| "CRM.CustomEnumComponentValues" : "CustomEnumComponentValueId"
    "PM.CustomEnumComponentValueKeyValues" }o--|| "Pricing.CustomEnumComponentValues" : "CustomEnumComponentValueId"
    "PM.CustomEnumComponentValueKeyValues" }o--|| "ApplicationCore.CustomEnumComponentValues" : "CustomEnumComponentValueId"
    "PM.CustomEnumComponentValueKeyValues" }o--|| "PM.CustomEnumComponentValues" : "CustomEnumComponentValueId"
    "ApplicationCore.CustomEnumComponentValueKeyValues" }o--|| "CRM.CustomEnumComponentValues" : "CustomEnumComponentValueId"
    "ApplicationCore.CustomEnumComponentValueKeyValues" }o--|| "Pricing.CustomEnumComponentValues" : "CustomEnumComponentValueId"
    "ApplicationCore.CustomEnumComponentValueKeyValues" }o--|| "ApplicationCore.CustomEnumComponentValues" : "CustomEnumComponentValueId"
    "ApplicationCore.CustomEnumComponentValueKeyValues" }o--|| "PM.CustomEnumComponentValues" : "CustomEnumComponentValueId"
    "Pricing.CustomEnumComponentValueKeyValues" }o--|| "CRM.CustomEnumComponentValues" : "CustomEnumComponentValueId"
    "Pricing.CustomEnumComponentValueKeyValues" }o--|| "Pricing.CustomEnumComponentValues" : "CustomEnumComponentValueId"
    "Pricing.CustomEnumComponentValueKeyValues" }o--|| "ApplicationCore.CustomEnumComponentValues" : "CustomEnumComponentValueId"
    "Pricing.CustomEnumComponentValueKeyValues" }o--|| "PM.CustomEnumComponentValues" : "CustomEnumComponentValueId"
    "CRM.CustomEnumComponentValueKeyValues" }o--|| "CRM.CustomEnumComponentValues" : "CustomEnumComponentValueId"
    "CRM.CustomEnumComponentValueKeyValues" }o--|| "Pricing.CustomEnumComponentValues" : "CustomEnumComponentValueId"
    "CRM.CustomEnumComponentValueKeyValues" }o--|| "ApplicationCore.CustomEnumComponentValues" : "CustomEnumComponentValueId"
    "CRM.CustomEnumComponentValueKeyValues" }o--|| "PM.CustomEnumComponentValues" : "CustomEnumComponentValueId"
    "PM.CustomEnumComponentValues" }o--|| "CRM.CustomEnumComponents" : "CustomEnumComponentId"
    "PM.CustomEnumComponentValues" }o--|| "Pricing.CustomEnumComponents" : "CustomEnumComponentId"
    "PM.CustomEnumComponentValues" }o--|| "ApplicationCore.CustomEnumComponents" : "CustomEnumComponentId"
    "PM.CustomEnumComponentValues" }o--|| "PM.CustomEnumComponents" : "CustomEnumComponentId"
    "ApplicationCore.CustomEnumComponentValues" }o--|| "CRM.CustomEnumComponents" : "CustomEnumComponentId"
    "ApplicationCore.CustomEnumComponentValues" }o--|| "Pricing.CustomEnumComponents" : "CustomEnumComponentId"
    "ApplicationCore.CustomEnumComponentValues" }o--|| "ApplicationCore.CustomEnumComponents" : "CustomEnumComponentId"
    "ApplicationCore.CustomEnumComponentValues" }o--|| "PM.CustomEnumComponents" : "CustomEnumComponentId"
    "Pricing.CustomEnumComponentValues" }o--|| "CRM.CustomEnumComponents" : "CustomEnumComponentId"
    "Pricing.CustomEnumComponentValues" }o--|| "Pricing.CustomEnumComponents" : "CustomEnumComponentId"
    "Pricing.CustomEnumComponentValues" }o--|| "ApplicationCore.CustomEnumComponents" : "CustomEnumComponentId"
    "Pricing.CustomEnumComponentValues" }o--|| "PM.CustomEnumComponents" : "CustomEnumComponentId"
    "CRM.CustomEnumComponentValues" }o--|| "CRM.CustomEnumComponents" : "CustomEnumComponentId"
    "CRM.CustomEnumComponentValues" }o--|| "Pricing.CustomEnumComponents" : "CustomEnumComponentId"
    "CRM.CustomEnumComponentValues" }o--|| "ApplicationCore.CustomEnumComponents" : "CustomEnumComponentId"
    "CRM.CustomEnumComponentValues" }o--|| "PM.CustomEnumComponents" : "CustomEnumComponentId"
    "PM.CustomEnumComponents" }o--|| "CRM.CustomEnums" : "CustomEnumId"
    "PM.CustomEnumComponents" }o--|| "Pricing.CustomEnums" : "CustomEnumId"
    "PM.CustomEnumComponents" }o--|| "ApplicationCore.CustomEnums" : "CustomEnumId"
    "PM.CustomEnumComponents" }o--|| "PM.CustomEnums" : "CustomEnumId"
    "ApplicationCore.CustomEnumComponents" }o--|| "CRM.CustomEnums" : "CustomEnumId"
    "ApplicationCore.CustomEnumComponents" }o--|| "Pricing.CustomEnums" : "CustomEnumId"
    "ApplicationCore.CustomEnumComponents" }o--|| "ApplicationCore.CustomEnums" : "CustomEnumId"
    "ApplicationCore.CustomEnumComponents" }o--|| "PM.CustomEnums" : "CustomEnumId"
    "Pricing.CustomEnumComponents" }o--|| "CRM.CustomEnums" : "CustomEnumId"
    "Pricing.CustomEnumComponents" }o--|| "Pricing.CustomEnums" : "CustomEnumId"
    "Pricing.CustomEnumComponents" }o--|| "ApplicationCore.CustomEnums" : "CustomEnumId"
    "Pricing.CustomEnumComponents" }o--|| "PM.CustomEnums" : "CustomEnumId"
    "CRM.CustomEnumComponents" }o--|| "CRM.CustomEnums" : "CustomEnumId"
    "CRM.CustomEnumComponents" }o--|| "Pricing.CustomEnums" : "CustomEnumId"
    "CRM.CustomEnumComponents" }o--|| "ApplicationCore.CustomEnums" : "CustomEnumId"
    "CRM.CustomEnumComponents" }o--|| "PM.CustomEnums" : "CustomEnumId"
    "CRM.ModelContractTemplateDetails" }o--|| "CRM.CustomEnums" : "CustomEnumId"
    "CRM.ModelContractTemplateDetails" }o--|| "Pricing.CustomEnums" : "CustomEnumId"
    "CRM.ModelContractTemplateDetails" }o--|| "ApplicationCore.CustomEnums" : "CustomEnumId"
    "CRM.ModelContractTemplateDetails" }o--|| "PM.CustomEnums" : "CustomEnumId"
    "CRM.SalesBatchDetails" }o--|| "CRM.CustomEnums" : "CustomEnumId"
    "CRM.SalesBatchDetails" }o--|| "Pricing.CustomEnums" : "CustomEnumId"
    "CRM.SalesBatchDetails" }o--|| "ApplicationCore.CustomEnums" : "CustomEnumId"
    "CRM.SalesBatchDetails" }o--|| "PM.CustomEnums" : "CustomEnumId"
    "CRM.SalesBatchGeneratorDetails" }o--|| "CRM.CustomEnums" : "CustomEnumId"
    "CRM.SalesBatchGeneratorDetails" }o--|| "Pricing.CustomEnums" : "CustomEnumId"
    "CRM.SalesBatchGeneratorDetails" }o--|| "ApplicationCore.CustomEnums" : "CustomEnumId"
    "CRM.SalesBatchGeneratorDetails" }o--|| "PM.CustomEnums" : "CustomEnumId"
    "CRM.ContractTemplateDetails" }o--|| "CRM.CustomEnums" : "CustomEnumId"
    "CRM.ContractTemplateDetails" }o--|| "Pricing.CustomEnums" : "CustomEnumId"
    "CRM.ContractTemplateDetails" }o--|| "ApplicationCore.CustomEnums" : "CustomEnumId"
    "CRM.ContractTemplateDetails" }o--|| "PM.CustomEnums" : "CustomEnumId"
erDiagram
    "CRM.CustomEnumComponentValueKeyValues" {
        uniqueidentifier Id PK
        uniqueidentifier CustomEnumComponentValueId FK
        nvarchar Key 
        nvarchar Value 
        uniqueidentifier Tenant 
        datetimeoffset EntityCreatedDateTime 
        datetimeoffset EntityUpdatedDateTime 
        uniqueidentifier EntityCreatedAuthToken 
        uniqueidentifier EntityUpdatedAuthToken 
        bit Concealed 
    }

    "CRM.CustomEnumComponentValues" {
        uniqueidentifier Id PK
        uniqueidentifier CustomEnumComponentId FK
        nvarchar Value 
        nvarchar ScriptValue 
        datetimeoffset StartDate 
        uniqueidentifier Tenant 
        datetimeoffset EntityCreatedDateTime 
        datetimeoffset EntityUpdatedDateTime 
        uniqueidentifier EntityCreatedAuthToken 
        uniqueidentifier EntityUpdatedAuthToken 
        bit Concealed 
    }

    "CRM.CustomEnumComponents" {
        uniqueidentifier Id PK
        uniqueidentifier CustomEnumId FK
        nvarchar Name 
        nvarchar ExternalReference 
        datetimeoffset StartDate 
        datetimeoffset EndDate 
        uniqueidentifier Tenant 
        datetimeoffset EntityCreatedDateTime 
        datetimeoffset EntityUpdatedDateTime 
        uniqueidentifier EntityCreatedAuthToken 
        uniqueidentifier EntityUpdatedAuthToken 
        bit Concealed 
    }

    "CRM.CustomEnums" {
        uniqueidentifier Id PK
        nvarchar Name 
        nvarchar Description 
        uniqueidentifier Tenant 
        datetimeoffset EntityCreatedDateTime 
        datetimeoffset EntityUpdatedDateTime 
        uniqueidentifier EntityCreatedAuthToken 
        uniqueidentifier EntityUpdatedAuthToken 
        bit Concealed 
    }

    "PM.CustomEnumComponentValueKeyValues" }o--|| "CRM.CustomEnumComponentValues" : "CustomEnumComponentValueId"
    "PM.CustomEnumComponentValueKeyValues" }o--|| "Pricing.CustomEnumComponentValues" : "CustomEnumComponentValueId"
    "PM.CustomEnumComponentValueKeyValues" }o--|| "ApplicationCore.CustomEnumComponentValues" : "CustomEnumComponentValueId"
    "PM.CustomEnumComponentValueKeyValues" }o--|| "PM.CustomEnumComponentValues" : "CustomEnumComponentValueId"
    "ApplicationCore.CustomEnumComponentValueKeyValues" }o--|| "CRM.CustomEnumComponentValues" : "CustomEnumComponentValueId"
    "ApplicationCore.CustomEnumComponentValueKeyValues" }o--|| "Pricing.CustomEnumComponentValues" : "CustomEnumComponentValueId"
    "ApplicationCore.CustomEnumComponentValueKeyValues" }o--|| "ApplicationCore.CustomEnumComponentValues" : "CustomEnumComponentValueId"
    "ApplicationCore.CustomEnumComponentValueKeyValues" }o--|| "PM.CustomEnumComponentValues" : "CustomEnumComponentValueId"
    "Pricing.CustomEnumComponentValueKeyValues" }o--|| "CRM.CustomEnumComponentValues" : "CustomEnumComponentValueId"
    "Pricing.CustomEnumComponentValueKeyValues" }o--|| "Pricing.CustomEnumComponentValues" : "CustomEnumComponentValueId"
    "Pricing.CustomEnumComponentValueKeyValues" }o--|| "ApplicationCore.CustomEnumComponentValues" : "CustomEnumComponentValueId"
    "Pricing.CustomEnumComponentValueKeyValues" }o--|| "PM.CustomEnumComponentValues" : "CustomEnumComponentValueId"
    "CRM.CustomEnumComponentValueKeyValues" }o--|| "CRM.CustomEnumComponentValues" : "CustomEnumComponentValueId"
    "CRM.CustomEnumComponentValueKeyValues" }o--|| "Pricing.CustomEnumComponentValues" : "CustomEnumComponentValueId"
    "CRM.CustomEnumComponentValueKeyValues" }o--|| "ApplicationCore.CustomEnumComponentValues" : "CustomEnumComponentValueId"
    "CRM.CustomEnumComponentValueKeyValues" }o--|| "PM.CustomEnumComponentValues" : "CustomEnumComponentValueId"
    "PM.CustomEnumComponentValues" }o--|| "CRM.CustomEnumComponents" : "CustomEnumComponentId"
    "PM.CustomEnumComponentValues" }o--|| "Pricing.CustomEnumComponents" : "CustomEnumComponentId"
    "PM.CustomEnumComponentValues" }o--|| "ApplicationCore.CustomEnumComponents" : "CustomEnumComponentId"
    "PM.CustomEnumComponentValues" }o--|| "PM.CustomEnumComponents" : "CustomEnumComponentId"
    "ApplicationCore.CustomEnumComponentValues" }o--|| "CRM.CustomEnumComponents" : "CustomEnumComponentId"
    "ApplicationCore.CustomEnumComponentValues" }o--|| "Pricing.CustomEnumComponents" : "CustomEnumComponentId"
    "ApplicationCore.CustomEnumComponentValues" }o--|| "ApplicationCore.CustomEnumComponents" : "CustomEnumComponentId"
    "ApplicationCore.CustomEnumComponentValues" }o--|| "PM.CustomEnumComponents" : "CustomEnumComponentId"
    "Pricing.CustomEnumComponentValues" }o--|| "CRM.CustomEnumComponents" : "CustomEnumComponentId"
    "Pricing.CustomEnumComponentValues" }o--|| "Pricing.CustomEnumComponents" : "CustomEnumComponentId"
    "Pricing.CustomEnumComponentValues" }o--|| "ApplicationCore.CustomEnumComponents" : "CustomEnumComponentId"
    "Pricing.CustomEnumComponentValues" }o--|| "PM.CustomEnumComponents" : "CustomEnumComponentId"
    "CRM.CustomEnumComponentValues" }o--|| "CRM.CustomEnumComponents" : "CustomEnumComponentId"
    "CRM.CustomEnumComponentValues" }o--|| "Pricing.CustomEnumComponents" : "CustomEnumComponentId"
    "CRM.CustomEnumComponentValues" }o--|| "ApplicationCore.CustomEnumComponents" : "CustomEnumComponentId"
    "CRM.CustomEnumComponentValues" }o--|| "PM.CustomEnumComponents" : "CustomEnumComponentId"
    "PM.CustomEnumComponents" }o--|| "CRM.CustomEnums" : "CustomEnumId"
    "PM.CustomEnumComponents" }o--|| "Pricing.CustomEnums" : "CustomEnumId"
    "PM.CustomEnumComponents" }o--|| "ApplicationCore.CustomEnums" : "CustomEnumId"
    "PM.CustomEnumComponents" }o--|| "PM.CustomEnums" : "CustomEnumId"
    "ApplicationCore.CustomEnumComponents" }o--|| "CRM.CustomEnums" : "CustomEnumId"
    "ApplicationCore.CustomEnumComponents" }o--|| "Pricing.CustomEnums" : "CustomEnumId"
    "ApplicationCore.CustomEnumComponents" }o--|| "ApplicationCore.CustomEnums" : "CustomEnumId"
    "ApplicationCore.CustomEnumComponents" }o--|| "PM.CustomEnums" : "CustomEnumId"
    "Pricing.CustomEnumComponents" }o--|| "CRM.CustomEnums" : "CustomEnumId"
    "Pricing.CustomEnumComponents" }o--|| "Pricing.CustomEnums" : "CustomEnumId"
    "Pricing.CustomEnumComponents" }o--|| "ApplicationCore.CustomEnums" : "CustomEnumId"
    "Pricing.CustomEnumComponents" }o--|| "PM.CustomEnums" : "CustomEnumId"
    "CRM.CustomEnumComponents" }o--|| "CRM.CustomEnums" : "CustomEnumId"
    "CRM.CustomEnumComponents" }o--|| "Pricing.CustomEnums" : "CustomEnumId"
    "CRM.CustomEnumComponents" }o--|| "ApplicationCore.CustomEnums" : "CustomEnumId"
    "CRM.CustomEnumComponents" }o--|| "PM.CustomEnums" : "CustomEnumId"
    "CRM.ModelContractTemplateDetails" }o--|| "CRM.CustomEnums" : "CustomEnumId"
    "CRM.ModelContractTemplateDetails" }o--|| "Pricing.CustomEnums" : "CustomEnumId"
    "CRM.ModelContractTemplateDetails" }o--|| "ApplicationCore.CustomEnums" : "CustomEnumId"
    "CRM.ModelContractTemplateDetails" }o--|| "PM.CustomEnums" : "CustomEnumId"
    "CRM.SalesBatchDetails" }o--|| "CRM.CustomEnums" : "CustomEnumId"
    "CRM.SalesBatchDetails" }o--|| "Pricing.CustomEnums" : "CustomEnumId"
    "CRM.SalesBatchDetails" }o--|| "ApplicationCore.CustomEnums" : "CustomEnumId"
    "CRM.SalesBatchDetails" }o--|| "PM.CustomEnums" : "CustomEnumId"
    "CRM.SalesBatchGeneratorDetails" }o--|| "CRM.CustomEnums" : "CustomEnumId"
    "CRM.SalesBatchGeneratorDetails" }o--|| "Pricing.CustomEnums" : "CustomEnumId"
    "CRM.SalesBatchGeneratorDetails" }o--|| "ApplicationCore.CustomEnums" : "CustomEnumId"
    "CRM.SalesBatchGeneratorDetails" }o--|| "PM.CustomEnums" : "CustomEnumId"
    "CRM.ContractTemplateDetails" }o--|| "CRM.CustomEnums" : "CustomEnumId"
    "CRM.ContractTemplateDetails" }o--|| "Pricing.CustomEnums" : "CustomEnumId"
    "CRM.ContractTemplateDetails" }o--|| "ApplicationCore.CustomEnums" : "CustomEnumId"
    "CRM.ContractTemplateDetails" }o--|| "PM.CustomEnums" : "CustomEnumId"
{
    "definitions":  {
                        "CRM.CustomEnumComponents":  {
                                                         "properties":  {
                                                                            "Concealed":  {
                                                                                              "type":  "boolean",
                                                                                              "description":  "bit"
                                                                                          },
                                                                            "Id":  {
                                                                                       "format":  "uuid",
                                                                                       "description":  "uniqueidentifier",
                                                                                       "type":  "string"
                                                                                   },
                                                                            "EntityUpdatedAuthToken":  {
                                                                                                           "format":  "uuid",
                                                                                                           "description":  "uniqueidentifier",
                                                                                                           "type":  "string"
                                                                                                       },
                                                                            "Name":  {
                                                                                         "type":  "string",
                                                                                         "description":  "nvarchar"
                                                                                     },
                                                                            "EntityCreatedAuthToken":  {
                                                                                                           "format":  "uuid",
                                                                                                           "description":  "uniqueidentifier",
                                                                                                           "type":  "string"
                                                                                                       },
                                                                            "EndDate":  {
                                                                                            "format":  "date-time",
                                                                                            "description":  "datetimeoffset",
                                                                                            "type":  "string"
                                                                                        },
                                                                            "EntityUpdatedDateTime":  {
                                                                                                          "format":  "date-time",
                                                                                                          "description":  "datetimeoffset",
                                                                                                          "type":  "string"
                                                                                                      },
                                                                            "Tenant":  {
                                                                                           "format":  "uuid",
                                                                                           "description":  "uniqueidentifier",
                                                                                           "type":  "string"
                                                                                       },
                                                                            "ExternalReference":  {
                                                                                                      "type":  "string",
                                                                                                      "description":  "nvarchar"
                                                                                                  },
                                                                            "EntityCreatedDateTime":  {
                                                                                                          "format":  "date-time",
                                                                                                          "description":  "datetimeoffset",
                                                                                                          "type":  "string"
                                                                                                      },
                                                                            "StartDate":  {
                                                                                              "format":  "date-time",
                                                                                              "description":  "datetimeoffset",
                                                                                              "type":  "string"
                                                                                          },
                                                                            "CustomEnumId":  {
                                                                                                 "type":  "string",
                                                                                                 "description":  "FK to PM.CustomEnums"
                                                                                             }
                                                                        },
                                                         "type":  "object"
                                                     },
                        "CRM.CustomEnumComponentValues":  {
                                                              "properties":  {
                                                                                 "Concealed":  {
                                                                                                   "type":  "boolean",
                                                                                                   "description":  "bit"
                                                                                               },
                                                                                 "EntityUpdatedAuthToken":  {
                                                                                                                "format":  "uuid",
                                                                                                                "description":  "uniqueidentifier",
                                                                                                                "type":  "string"
                                                                                                            },
                                                                                 "Id":  {
                                                                                            "format":  "uuid",
                                                                                            "description":  "uniqueidentifier",
                                                                                            "type":  "string"
                                                                                        },
                                                                                 "CustomEnumComponentId":  {
                                                                                                               "type":  "string",
                                                                                                               "description":  "FK to PM.CustomEnumComponents"
                                                                                                           },
                                                                                 "EntityCreatedAuthToken":  {
                                                                                                                "format":  "uuid",
                                                                                                                "description":  "uniqueidentifier",
                                                                                                                "type":  "string"
                                                                                                            },
                                                                                 "ScriptValue":  {
                                                                                                     "type":  "string",
                                                                                                     "description":  "nvarchar"
                                                                                                 },
                                                                                 "Value":  {
                                                                                               "type":  "string",
                                                                                               "description":  "nvarchar"
                                                                                           },
                                                                                 "StartDate":  {
                                                                                                   "format":  "date-time",
                                                                                                   "description":  "datetimeoffset",
                                                                                                   "type":  "string"
                                                                                               },
                                                                                 "EntityUpdatedDateTime":  {
                                                                                                               "format":  "date-time",
                                                                                                               "description":  "datetimeoffset",
                                                                                                               "type":  "string"
                                                                                                           },
                                                                                 "EntityCreatedDateTime":  {
                                                                                                               "format":  "date-time",
                                                                                                               "description":  "datetimeoffset",
                                                                                                               "type":  "string"
                                                                                                           },
                                                                                 "Tenant":  {
                                                                                                "format":  "uuid",
                                                                                                "description":  "uniqueidentifier",
                                                                                                "type":  "string"
                                                                                            }
                                                                             },
                                                              "type":  "object"
                                                          },
                        "CRM.CustomEnums":  {
                                                "properties":  {
                                                                   "Concealed":  {
                                                                                     "type":  "boolean",
                                                                                     "description":  "bit"
                                                                                 },
                                                                   "EntityUpdatedAuthToken":  {
                                                                                                  "format":  "uuid",
                                                                                                  "description":  "uniqueidentifier",
                                                                                                  "type":  "string"
                                                                                              },
                                                                   "Id":  {
                                                                              "format":  "uuid",
                                                                              "description":  "uniqueidentifier",
                                                                              "type":  "string"
                                                                          },
                                                                   "Description":  {
                                                                                       "type":  "string",
                                                                                       "description":  "nvarchar"
                                                                                   },
                                                                   "EntityCreatedDateTime":  {
                                                                                                 "format":  "date-time",
                                                                                                 "description":  "datetimeoffset",
                                                                                                 "type":  "string"
                                                                                             },
                                                                   "Name":  {
                                                                                "type":  "string",
                                                                                "description":  "nvarchar"
                                                                            },
                                                                   "EntityUpdatedDateTime":  {
                                                                                                 "format":  "date-time",
                                                                                                 "description":  "datetimeoffset",
                                                                                                 "type":  "string"
                                                                                             },
                                                                   "EntityCreatedAuthToken":  {
                                                                                                  "format":  "uuid",
                                                                                                  "description":  "uniqueidentifier",
                                                                                                  "type":  "string"
                                                                                              },
                                                                   "Tenant":  {
                                                                                  "format":  "uuid",
                                                                                  "description":  "uniqueidentifier",
                                                                                  "type":  "string"
                                                                              }
                                                               },
                                                "type":  "object"
                                            },
                        "CRM.CustomEnumComponentValueKeyValues":  {
                                                                      "properties":  {
                                                                                         "Concealed":  {
                                                                                                           "type":  "boolean",
                                                                                                           "description":  "bit"
                                                                                                       },
                                                                                         "EntityUpdatedAuthToken":  {
                                                                                                                        "format":  "uuid",
                                                                                                                        "description":  "uniqueidentifier",
                                                                                                                        "type":  "string"
                                                                                                                    },
                                                                                         "Id":  {
                                                                                                    "format":  "uuid",
                                                                                                    "description":  "uniqueidentifier",
                                                                                                    "type":  "string"
                                                                                                },
                                                                                         "Key":  {
                                                                                                     "type":  "string",
                                                                                                     "description":  "nvarchar"
                                                                                                 },
                                                                                         "CustomEnumComponentValueId":  {
                                                                                                                            "type":  "string",
                                                                                                                            "description":  "FK to PM.CustomEnumComponentValues"
                                                                                                                        },
                                                                                         "EntityCreatedAuthToken":  {
                                                                                                                        "format":  "uuid",
                                                                                                                        "description":  "uniqueidentifier",
                                                                                                                        "type":  "string"
                                                                                                                    },
                                                                                         "Value":  {
                                                                                                       "type":  "string",
                                                                                                       "description":  "nvarchar"
                                                                                                   },
                                                                                         "EntityUpdatedDateTime":  {
                                                                                                                       "format":  "date-time",
                                                                                                                       "description":  "datetimeoffset",
                                                                                                                       "type":  "string"
                                                                                                                   },
                                                                                         "EntityCreatedDateTime":  {
                                                                                                                       "format":  "date-time",
                                                                                                                       "description":  "datetimeoffset",
                                                                                                                       "type":  "string"
                                                                                                                   },
                                                                                         "Tenant":  {
                                                                                                        "format":  "uuid",
                                                                                                        "description":  "uniqueidentifier",
                                                                                                        "type":  "string"
                                                                                                    }
                                                                                     },
                                                                      "type":  "object"
                                                                  }
                    },
    "title":  "CRM.CustomEnum",
    "$comment":  "Generated from Mermaid ERD with property-level descriptions",
    "$schema":  "http://json-schema.org/draft-07/schema#",
    "type":  "object"
}