CM Schema
Easily manage software contracts and entitlements with Licenseware’s standardized data schema. Track agreements, license metrics, renewal dates, and product details in one centralized platform.
The Licenseware Contract and Entitlement App is designed to help organizations manage software agreements, entitlements, and associated metadata in a structured and efficient manner. The solution provides a centralized system of record for contractual and licensing information, supporting compliance, optimization, and renewal readiness across software portfolios.
At the core of the application is a flexible schema that captures key data points related to both contracts and entitlements. This standard structure enables integrations, reporting, and automation, aligning with best practices in software asset management and procurement governance.
📄 Contract Schema
The contract object contains all key attributes associated with a software agreement, such as vendor details, commercial terms, dates, renewal information, and licensing parameters. Below is the schema however custom fields can be added and replicated:
Required Fields
Field Name | Description |
---|---|
agreement_number | Unique identifier/code for the contract. |
agreement_name | Descriptive name of the contract. |
agreement_type | Type of agreement (e.g., license, service, subscription). |
legal_entity | The organization or entity entering the contract. |
vendor_name | The vendor providing the product or service. |
created_at | Timestamp of when the contract was added to the system. |
updated_at | Timestamp of the last update to the contract. |
Optional Fields
Field Name | Description |
---|---|
business_owner | Person responsible for managing the contract. |
po_number | Purchase order number associated with the contract. |
invoice_number | Invoice reference for contract billing. |
total_value | Total value of the contract. |
currency | Currency used in the contract. |
period | Duration of the contract. |
period_metric | Time unit for the duration (e.g., year, month). |
purchase_date | Date the contract was executed. |
start_date | Effective start date of the contract. |
end_date | End or expiration date of the contract. |
renewal_date | Suggested or scheduled renewal date. |
renewal_reminder | Reminder date to initiate renewal actions. |
auto_renewal | Indicates whether the contract renews automatically. |
termination_notice_period | Duration of required notice to terminate the contract. |
termination_notice_period_metric | Unit of time for termination notice (e.g., days, months). |
license_type | Specifies if the license is perpetual, subscription-based, or annual. |
license_count | Number of licenses covered under the contract. |
usage_limit | Usage restrictions or limitations. |
sla_terms | Service Level Agreement terms (e.g., uptime guarantees). |
reseller_name | Name of the reseller (if applicable). |
reseller_type | Type of reseller (e.g., distributor). |
status | Current status of the contract (e.g., active, inactive). |
notes | Free-text field for internal comments. |
description | Detailed explanation of the contract scope. |
extra_fields | List of custom fields defined per organization (e.g., key-value pairs). |
🎫 Entitlement Schema
Each entitlement record is linked to a contract and includes specific licensing details, metrics, and product associations. This structure supports entitlement tracking, usage mapping, and lifecycle visibility. Below is the schema however custom fields can be added and replicated:
Required Fields
Field Name | Description |
---|---|
entitlement_id | Unique identifier for the entitlement (system-generated). |
entitlement_name | Descriptive name of the entitlement. |
type | Entitlement type (e.g., license, support, product, maintenance). |
quantity | Number of units or users entitled. |
created_at | Timestamp when the entitlement was added. |
updated_at | Timestamp of the last change to the entitlement. |
Optional Fields
Field Name | Description |
---|---|
license_metric | Metric used to measure the license (e.g., per user, per device). |
license_key | Activation key or license code. |
sku | Stock Keeping Unit code. |
price | Price per unit or entitlement. |
currency | Currency for pricing. |
description | Additional details describing the entitlement. |
website | Link to vendor or product site. |
product_publisher | Name of the company that developed the product. |
product_name | Name of the software or service product. |
product_edition | Specific edition of the product (e.g., E3, Enterprise). |
product_version | Version or release year of the product. |
product_category | Broad classification (e.g., productivity software). |
product_subcategory | More detailed classification (e.g., office tools). |
end_of_life_date | Date when the product is no longer available. |
end_of_support_date | End date for standard vendor support. |
end_of_extended_support_date | Date when extended support ends. |
notes | Internal comments or context for the entitlement. |
extra_fields | Custom fields defined as key-value pairs (e.g., department, cost center). |
This schema underpins the Licenseware app's ability to deliver real-time insights, ensure audit readiness, and support lifecycle automation for software contracts and entitlements. It is extensible to accommodate organization-specific requirements through the extra_fields component, enabling custom data capture where needed.