Skip to content

Data Model: Profile

Purpose: The Profile entity represents a single, distinct investment account on the platform. It acts as the primary container for a specific legal entity—which can be an Individual, Trust, Entity, Solo401k, and SDIRA—and holds all associated compliance information, ownership structures, and legal documentation.

Fields/Attributes

This table describes the fields in the main Profile model. It holds the information common to all account types.

NameTypeDescriptionValidation Rules
Core Identification & Type
idUnique IdentifierThe primary system ID for the profile.• Required • System-generated, Read-only
user_idForeign KeyA reference to the master User login account that owns this profile.• Required
profile_typeChoiceThe legal structure of the profile. This choice dictates which fields and rules apply.• Required • Must be one of: INDIVIDUAL, ENTITY, TRUST, SOLO401K, SDIRA
Primary Person Information
first_nameTextThe legal first name of the primary individual (the investor, trustee, or business controller).• Required
last_nameTextThe legal last name of the primary individual.• Required
date_of_birthDateThe individual's date of birth.• Required
phone_numberPhoneThe primary contact phone number.• Required
ssnEncrypted TextThe individual's 9-digit Social Security Number.• Required for US individuals
citizenshipChoiceThe citizenship or residency status of the individual.• Required
address_1TextThe primary residential street address.• Required
cityTextThe city of residence.• Required
stateChoiceThe two-letter state code (e.g., CA, NY).• Required
zipcodeTextThe postal or ZIP code.• Required
countryChoiceThe two-letter country code.• Required • Defaults to 'US'
Compliance & Metadata
kyc_statusChoiceThe KYC verification status for the primary individual on this profile.• Required • System-managed
accreditation_statusChoiceThe accreditation status for this profile.• Required • System-managed
Compliance Status
kyc_statusChoiceThe current KYC verification status.• Required • System-managed • Must be one of: NOT_STARTED, PENDING, VERIFIED, REJECTED
kyc_atTimestampThe timestamp when the kyc_status was set to VERIFIED.• Read-only
accreditation_statusChoiceThe current investor accreditation status.• Required • System-managed • Must be one of: NOT_STARTED, PENDING, VERIFIED, REJECTED, EXPIRED
accreditation_atTimestampThe timestamp when the accreditation_status was set to VERIFIED.• Read-only
Integration IDs
kyc_provider_idTextThe unique verification ID from the KYC provider (e.g., Plaid).• System-set
escrow_account_idTextThe unique Account ID from the accreditation provider (e.g., North Capital).• System-set
escrow_party_idTextThe unique Party ID from the accreditation provider.• System-set
wallet_idTextThe unique ID for the associated wallet from the payment provider (e.g., Dwolla).• System-set • Not applicable if profile_type is SDIRA
Metadata
created_atTimestampThe date and time the profile record was created.• Read-only • System-set on creation
updated_atTimestampThe date and time the profile was last modified.• Read-only • System-managed
Entity-Specific Fields
entity_nameTextThe legal name of the business entity.• Required if profile_type is ENTITY
entity_typeChoiceThe legal structure of the business entity.• Required if profile_type is ENTITY • Must be one of: LLC, CORPORATION, LIMITED_PARTNERSHIP, GENERAL_PARTNERSHIP
entity_titleTextThe user's title within the entity (e.g., Managing Partner, CEO).• Required if profile_type is ENTITY
entity_einTextThe Employer Identification Number for the entity.• Required if profile_type is ENTITY
is_entity_purpose_builtBooleanFlag indicating if the entity was created solely for investing.• Required if profile_type is ENTITY
is_entity_tax_exemptBooleanFlag indicating if the entity has tax-exempt status.• Required if profile_type is ENTITY
doc_url_operating_agreementURLThe URL to the stored Operating Agreement document.• Required if entity_type is LLC
doc_url_partnership_agreementURLThe URL to the stored Partnership Agreement document.• Required if entity_type is LIMITED_PARTNERSHIP or GENERAL_PARTNERSHIP
doc_url_bylawsURLThe URL to the stored corporate Bylaws document.• Required if entity_type is CORPORATION
Trust-Specific Fields
trust_nameTextThe legal name of the trust.• Required if profile_type is TRUST
trust_typeChoiceThe type of trust.• Required if profile_type is TRUST • Must be one of: REVOCABLE, IRREVOCABLE
trust_titleTextThe user's title within the trust (e.g., Trustee).• Required if profile_type is TRUST
trust_has_einBooleanFlag indicating if the trust has an EIN.• Required if profile_type is TRUST
trust_einTextThe Employer Identification Number for the trust.• Required if trust_has_ein is True
doc_url_trust_agreementURLThe URL to the stored Trust Agreement document.• Required if profile_type is TRUST
Solo401k-Specific Fields
solo401k_nameTextThe name of the Solo 401(k) plan.• Required if profile_type is SOLO401K
solo401k_einTextThe EIN for the Solo 401(k) plan.• Required if profile_type is SOLO401K
doc_url_solo401k_agreementURLThe URL to the stored Solo 401(k) Plan Agreement.• Required if profile_type is SOLO401K
SDIRA-Specific Fields
sdira_custodian_choiceChoiceThe selected SDIRA custodian.• Required if profile_type is SDIRA • Must be one of: ALTO, OTHER
sdira_custodian_nameTextThe name of the SDIRA custodian, if "Other" is chosen.• Required if sdira_custodian_choice is OTHER
sdira_custodian_websiteURLThe website of the SDIRA custodian, if "Other" is chosen.• Required if sdira_custodian_choice is OTHER
Offer Access
mifid_ii_categoryChoiceThe investor's classification under MiFID II rules, for EU investors, determined via questionnaire.• Required for EU regulation • Must be one of: RETAIL_CLIENT, PROFESSIONAL_CLIENT
gdpr_consentBooleanThe investor's GDPR consent.• Required for EU regulation
prominent_risk_acknowledgeBooleanThe investor's prominant risk akknowledge.• Required for EU regulation (for RETAIL_CLIENT only)
sophistication_statusChoiceThe investor's status as a "sophisticated" investor, determined via questionnaire.• System-set • Must be one of: PENDING_VERIFICATION, ACCREDITED_SELF_CERTIFIED, SOPHISTICATED_NON_ACCREDITED, UNQUALIFIED. Required for Reg D 506b investments
annual_incomeCurrencyThe investor's self-reported annual income, used for investment limit calculations.• Required for Reg A+ and Reg CF investments
net_worthCurrencyThe investor's self-reported net worth, used for investment limit calculations.• Required for Reg A+ and Reg CF investments
reg_cf_prior_investments_12mCurrencyThe investor's self-attested total amount invested in all Reg CF offerings over the prior 12 months.• Required for Reg CF investments

Key Relationships

  • User: A User can have multiple Profiles (a one-to-many relationship).

  • Investments: A Profile can make many Investments (a one-to-many relationship).

  • Wallet: Each Profile (except SDIRA, if applicable) has one Wallet and one EVM Wallet (a one-to-one relationship).

Auditing & Event History

Every significant action or change made to an Profile is recorded as an immutable entry in a system-wide EventLog. This creates a complete and tamper-proof audit trail for compliance and operational tracking.