ContractVersion
A ContractVersion is a versioning layer beneath a ContractType that allows the same kind of contract to exist in multiple named variants. In practice this is used when a contract type — for example a purchase agreement — covers several slightly different forms depending on the trade relationship: a standard grain purchase contract, a special organic grain contract, or a contract with different clause sets for export markets.
By combining a ContractType with a ContractVersion, the system can automatically apply the correct document template, default clauses, and workflow configuration without requiring users to manually adjust individual fields for each variant. This is particularly valuable in environments where the same commodity is traded under multiple frameworks simultaneously — such as conventional, organic, and certified supply chains running in parallel — keeping contract creation fast and consistent while retaining the flexibility to handle each framework's specific requirements.