Skip to content
Dark MatterDark Matter
Concepts

Identity Graph

Participant pre-clearance: KYC, AML, accreditation, jurisdictional constraints, and the pre-clearance workflow.

Overview

The Identity Graph manages participant pre-clearance for DMTR operations. It stores and evaluates KYC, AML, accreditation, and jurisdictional constraints. Before a transfer can execute, participants must satisfy identity and compliance requirements. The Identity Graph is the source of truth for participant eligibility data.

Participant model

Participants are entities (individuals or institutions) that may hold or receive positions. Each participant has a unique identifier and a profile containing identity, compliance, and constraint data. Participants are linked to positions as allocators, originators, or consent parties.

Participant

Entity in the Identity Graph representing an individual, institution, fund, GP LLC, DOIV, or trust.

FieldTypeDescription
participant_idstringUnique identifier for the participant
namestringDisplay name
entity_typeenumindividual | institutional | fund | gp_llc | doiv | trust | other
jurisdictionstringPrimary jurisdiction (ISO 3166-2)
emailstringContact email for e-signature and notifications
kyc_statusenumcleared | pending | failed | expired
kyc_providerenumpersona | alloy | verify_investor | parallel_markets | self_certified | manual
kyc_verification_idstringExternal verification ID from the KYC provider
kyc_verified_atdatetimeWhen KYC was last verified
kyc_expires_atdatetimeWhen KYC verification expires
aml_statusenumcleared | pending | failed | expired
aml_providerenumProvider used for AML/sanctions screening
aml_screening_idstringExternal screening ID from the AML provider
accreditation_statusenumverified | self_certified | pending | expired | not_applicable
accreditation_providerenumProvider that verified accreditation (e.g. verify_investor)
accreditation_expires_atdatetimeWhen accreditation verification expires
itar_clearedbooleanWhether the participant is cleared for ITAR-restricted positions
is_foreign_personbooleanForeign person determination under 22 CFR § 120.16
citizenshipstringCountry of citizenship (ISO 3166-1 alpha-2)
itar_determinationenumus_person | foreign_person | pending | unknown
itar_determination_basisstringLegal basis for the ITAR determination
relationship_provenancestringHow the participant relationship was established (pre-existing substantive)

KYC/AML status

KYC (Know Your Customer) and AML (Anti-Money Laundering) status are tracked per participant with provider-backed verification. Each status stores the provider used (persona, alloy, etc.), the external verification ID, the verification timestamp, and an expiration date. Status values include cleared, pending, failed, and expired. The Identity Graph surfaces status to the Rights Engine for eligibility evaluation — KYC/AML must be cleared and non-expired for transfer execution.

Accreditation

Accreditation status indicates whether a participant meets regulatory definitions (e.g., accredited investor under SEC Rule 501). It is tracked with the same provider-backed pattern: accreditation_status, accreditation_provider, accreditation_verification_id, accreditation_verified_at, and accreditation_expires_at. Status values include verified, self_certified, pending, expired, and not_applicable.

ITAR and CFIUS determination

For positions involving defense, space, or other ITAR-controlled technology, the Identity Graph tracks each participant's ITAR determination: us_person, foreign_person, pending, or unknown. The determination is backed by citizenship, optional dual_citizenship, and a itar_determination_basis field that records the legal rationale. The Rights Engine uses this data to enforce ITAR transfer restrictions and CFIUS-covered transaction blocks.

Jurisdictional constraints

Jurisdictional constraints limit where a participant can transact or hold positions. Sanctions, residency, and regulatory boundaries are modeled. The Identity Graph evaluates constraints against the position and transaction context.

Pre-clearance workflow

Pre-clearance runs before transfer execution. The workflow checks KYC, AML, accreditation, and jurisdictional constraints for all parties. If any check fails, the transfer is blocked. Pre-clearance results are cached for efficiency; re-validation occurs when data changes or on demand.

✓ Pre-clearance caching

Pre-clearance results are cached for efficiency; re-validation occurs when data changes or on demand.

Edit this page on GitHub

Last reviewed: March 13, 2026

Was this page helpful?