Encumbrances and Collateral
Security interests, UCC filings, control agreements, collateral pools, and their impact on transfers.
Overview
An encumbrance is a claim or hold on a position that restricts transferability or affects beneficial ownership visibility. Types include traditional liens and pledges, as well as UCC Article 9 security interests with filing or control perfection. Encumbrances are recorded in the Registry and evaluated by the Rights Engine.
Encumbrance types
| Type | Description |
|---|---|
lien | A security interest securing an obligation. The lienholder has a claim on the position. |
pledge | A collateral arrangement; the position is pledged to secure a loan or other obligation. |
security_interest | A UCC Article 9 security interest in the LLC membership interest (classified as a "general intangible" under UCC § 9-102(a)(42)). |
ucc_filing | A UCC-1 financing statement perfecting the security interest by filing (UCC § 9-310). |
control_agreement | Perfection by control through DMTR as the Transfer Agent / control agent (UCC § 9-106). Control perfection has super-priority over filing perfection (UCC § 9-328). |
assignment_for_security | An assignment of the membership interest to the secured party as collateral. |
margin_call | A hold triggered by margin requirements; may restrict transfer until margin is satisfied. |
regulatory_hold | A hold imposed by regulation or authority; blocks transfer until released. |
| Property | Type | Required | Description | Example |
|---|---|---|---|---|
| encumbrance_id | string | Yes | Unique encumbrance identifier | — |
| type | enum | Yes | lien | pledge | margin_call | regulatory_hold | security_interest | ucc_filing | control_agreement | assignment_for_security | — |
| holder | string | Yes | Entity ID of the encumbrance holder | — |
| created_at | datetime | Yes | When the encumbrance was created | — |
| released_at | datetime | No | When the encumbrance was released, if applicable | — |
| secured_party_id | string | No | Participant ID of the lender / secured party | — |
| ucc_filing_number | string | No | UCC-1 filing number (if perfected by filing) | — |
| ucc_filing_jurisdiction | string | No | Jurisdiction of the UCC filing (typically DE) | — |
| ucc_filing_date | string | No | Date of the UCC filing | — |
| perfection_method | enum | No | filing | control | both | — |
| control_agreement_hash | string | No | SHA-256 hash of the signed control agreement document | — |
| coverage_ratio | number | No | Current LTV ratio for lending encumbrances | — |
| margin_trigger_ratio | number | No | LTV threshold that triggers a margin call | — |
| subordination_agreement_hash | string | No | Hash of subordination agreement (for junior liens) | — |
UCC Article 9 and DMTR as Control Agent
LLC membership interests are classified as "general intangibles" under UCC § 9-102(a)(42). Security interests in these assets can be perfected by two methods:
-
Filing — A UCC-1 financing statement filed with the Secretary of State (typically Delaware). This is the standard method but has lower priority.
-
Control — Through a control agreement where DMTR, as the contractual Transfer Agent designated in the DOIV Operating Agreement, agrees to follow the instructions of the secured party regarding the membership interests. Control perfection under UCC § 9-106 has super-priority over filing perfection under UCC § 9-328.
When a control_agreement encumbrance is active on a position, the Rights Engine requires lender_consent as a pending action before any transfer can settle. This ensures the secured party's interest is protected.
Creating encumbrances
Encumbrances are created via API or Workflow Surfaces. Creation requires validation: the position must be in an encumbrance-eligible state, and the encumbrance terms must be valid. The Registry records the encumbrance and links it to the position. A position.encumbered event is emitted.
Collateral pools
A CollateralPool groups multiple pledged positions into a lending facility. It is the schema object that enables institutional secured lending against DMTR-encoded positions.
| Property | Type | Required | Description | Example |
|---|---|---|---|---|
| pool_id | string | Yes | Unique collateral pool identifier | — |
| lender_id | string | Yes | Participant ID of the lender / secured party | — |
| borrower_id | string | Yes | Participant ID of the borrower | — |
| facility_reference | string | No | Reference to the lending facility or credit agreement | — |
| positions | string[] | Yes | Array of position entity_ids pledged into the pool | — |
| aggregate_nav | number | Yes | Sum of current marks for all positions in the pool | — |
| obligation_amount | number | Yes | Outstanding loan or obligation amount | — |
| ltv_ratio | number | Yes | Loan-to-value ratio (obligation / aggregate_nav) | — |
| advance_rate | number | Yes | Maximum LTV the facility permits | — |
| margin_call_threshold | number | Yes | LTV ratio that triggers a margin warning / call | — |
| liquidation_threshold | number | Yes | LTV ratio that triggers liquidation | — |
| status | enum | Yes | active | margin_warning | margin_call | liquidating | released | defaulted | — |
| control_agreement_id | string | No | Reference to the control agreement document | — |
| ucc_filing_references | string[] | No | UCC-1 filing numbers for all pledged positions | — |
Collateral coverage checks
The Rights Engine includes a collateral coverage check. When a position is pledged into a pool, any proposed transfer of that position is evaluated against the pool's margin thresholds. A transfer that would cause the pool's LTV to exceed the margin_call_threshold is blocked. The MarginCheckResult schema reports the current coverage state:
excess_collateral— how much NAV headroom exists above the obligationshortfall— how much additional collateral is needed if LTV is above thresholdstatus— the pool's current state (active,margin_warning,margin_call,liquidating,released,defaulted)
Pool lifecycle events
| Event | Description |
|---|---|
collateral.pool_created | A new collateral pool is created |
collateral.position_pledged | A position is added to a pool |
collateral.position_released | A position is released from a pool |
collateral.margin_call | The pool's LTV exceeds the margin call threshold |
Visibility
Encumbrances are visible to authorized parties: the position owner, the encumbrance holder (secured party), and (depending on configuration) counterparties and admins. Lenders can audit the full collateral pool including all pledged positions, their current marks, and the aggregate coverage state.
Impact on transfers
Encumbrances restrict or block transfers. A security_interest, control_agreement, or pledge requires the secured party's consent (lender_consent pending action) before transfer. A margin_call or regulatory_hold blocks all transfers until released. The Rights Engine evaluates encumbrances and collateral coverage when assessing transferability.
Releasing encumbrances
Encumbrances are released when the underlying obligation is satisfied or the hold is lifted. Release is a mutation: the released_at field is set, and the position returns to an unencumbered state. A position.encumbrance_released event is emitted. Release may require authorization from the secured party.
Related
- Lifecycle — How encumbrances affect state transitions
- Rights Engine — Evaluates encumbrances and collateral coverage during transfers
- Transferability — Transfer restrictions and rules