Skip to content
Dark MatterDark Matter
Concepts

Transferability

Transfer restrictions, consent chain mechanics, blackout periods, regulatory restrictions, and evaluating transferability.

Overview

Transferability is the degree to which a position can be transferred. It is governed by restrictions encoded in the Position Object and evaluated by the Rights Engine. A transfer proceeds only when all restrictions are satisfied.

Use the Rights Engine's evaluate_transfer endpoint for pre-flight checks before initiating any transfer. This avoids failed transfers and provides clear blocking reasons for your UX.

Transfer sequence showing the flow between Seller, Dark Matter, Rights Engine, Identity Graph, and Buyer during a secondary market transfer

Transfer restriction types

PropertyTypeRequiredDescriptionExample
lockuptime-basedNoTransfer prohibited until a date or event. The position cannot be transferred until the lockup expires. Common for fund LP interests (1-3 year lockups).—
rofrparty-basedNoRight of First Refusal. Designated parties must be offered the position at the proposed price before a third party can purchase. Typically a 30-day window.—
consent_requiredapprovalNoGP, LPAC, or other parties must explicitly approve the transfer. The consent chain defines the order and timeout.—
blackouttime-windowNoPeriodic or event-driven windows when transfers are blocked. Common around quarter-end NAV calculations or pending distributions.—
regulatorycomplianceNoJurisdictional limits, accreditation requirements, and investor eligibility rules. Evaluated against the Identity Graph.—
itar_restrictionnational-securityNoITAR foreign-person block. Transfers to Foreign Persons (22 CFR § 120.16) are blocked unless DDTC authorization is obtained. Applies to positions in companies with ITAR-controlled technology. The Rights Engine verifies ITAR eligibility via the Identity Graph's `is_us_person` and `itar_verified` fields.—
cfius_foreign_person_blocknational-securityNoCFIUS covered transaction restriction. Transfers to Foreign Persons under the Defense Production Act (DPA Section 721; 31 CFR Part 800) require CFIUS review or a no-filing determination. The Rights Engine blocks transfers to foreign persons when the position is flagged `cfius_covered: true`.—
opinion_of_counsellegal-reviewNoCounsel review required before transfer. The Rights Engine returns `counsel_review` status, generating a pending action that must be resolved by outside counsel before the transfer can proceed. Used for complex regulatory edge cases (e.g., PTP safe harbor blow-through, novel jurisdictional questions).—
reg_d_506bsecurities-lawNoRegulation D Rule 506(b) restriction. No general solicitation permitted — the buyer must have a pre-existing substantive relationship with the issuer or its authorized agent. The Rights Engine checks `hasPreExistingRelationship` and `platformAccessRestricted` in the evaluation context.—
reg_d_506csecurities-lawNoRegulation D Rule 506(c) restriction. General solicitation is permitted, but the issuer must take reasonable steps to verify accredited investor status. The Rights Engine verifies `accreditation_status: verified` on the buyer participant record.—
company_transfer_restriction_bypassissuer-overrideNoCompany-level transfer restriction that can be waived by the issuer (Managing Member or GP). When present, the underlying company's own transfer restrictions apply but may be bypassed with issuer consent. The Rights Engine checks for this restriction type and generates a consent pending action if the restriction is active.—

Transfer feasibility simulator

Test how the Rights Engine evaluates a real transfer scenario. This position has an active lockup, ROFR, and pending GP consent — a common pattern for fund LP secondaries.

Transfer Feasibility

Evaluate transfer eligibility step by step

The consent chain defines who must approve a transfer and in what order. The Rights Engine traverses the chain, checking each party's response.

Consent types:

  • Explicit — The party signs or records approval
  • Implicit waiver — The party's timeout expires without objection (if the agreement permits)
  • Not required — The party is informational only

Chain patterns:

  • Sequential — Each party must consent before the next is asked
  • Parallel — Any subset of parties can consent concurrently

Gotcha: Consent timeouts are enforced strictly. If a GP has a 15-day timeout and does not respond, the behavior depends on the governing agreement: some treat silence as consent (implicit waiver), others treat it as rejection. Dark Matter does not default either way — the consent_chain entry specifies the policy.

Blackout periods

Blackout periods are windows when transfers are prohibited:

  • Calendar-based — Quarter-end (e.g., last 5 business days of each quarter)
  • Event-based — Pending NAV calculation, pending distribution, audit in progress
  • Regulatory — Quiet periods, regulatory holds

The Position Object or linked documents define blackout rules. The Rights Engine evaluates the current date and pending events against blackout logic.

Regulatory restrictions

Regulatory restrictions include:

  • Jurisdictional limits — Some positions cannot be sold to persons in certain jurisdictions
  • Accreditation requirements — Buyer must be an accredited or qualified purchaser
  • Investor eligibility — Maximum investor counts, tax-exempt entity rules

The Identity Graph supplies participant data; the Rights Engine applies regulatory rules. Transfers that violate regulatory restrictions are blocked with a specific reason code.

Evaluating transferability programmatically

curl -X POST https://api.dmtr.ai/v1/transfers/evaluate \
  -H "Authorization: Bearer $DMTR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "position_id": "meg-2026-089",
    "counterparty_id": "part-allocator-456",
    "proposed_units": 50
  }'

The response includes allowed: boolean, and if blocked, a reasons array with each restriction that is not satisfied. Use this for pre-flight checks in your UI or automated workflows.

Edit this page on GitHub

Last reviewed: March 13, 2026

Was this page helpful?