Skip to content

Accounts

Account types, allocations, ownership, and creation.


list_account_types

List all valid account types with short descriptions.

Parameters: None

Returns: account_types.


get_allowed_asset_classes_for_account

Get the asset classes allowed for a specific account type.

Parameter Type Default Description
account_type string required Account type (e.g., 'taxable_brokerage', 'hsa')

Returns: account_type, allowed_asset_classes, is_cash_only, and supports_equities.


get_account_limits

Get default limits and restrictions for an account type.

Parameter Type Default Description
account_type string required Account type
birth_year int null Optional account owner's birth year, used to determine the applicable RMD start age. When omitted, a default RMD start age is returned.

Returns non-tax-related limits like FDIC insurance, RMD requirements, etc.


create_account

Create a financial account with balance, ownership, and allocation.

Parameter Type Default Description
account_type string required Account type
balance_cents int required Current account balance in cents
ownership_json object required Ownership structure as JSON. Must include: ownership_type ('individual', 'joint', or 'beneficiary'), owner_ids (list of person IDs), and optionally beneficiary_id (required for beneficiary type). Example:
allocation_json object null Optional asset allocation as JSON. Supports stocks_pct, bonds_pct, cash_pct, crypto_pct, real_estate_pct, and other_pct (all integers 0-100 that sum to 100); the non-standard fields default to 0 if omitted. Example: {"stocks_pct": 60, "bonds_pct": 30, "cash_pct": 10}. If omitted, defaults to 100% cash for cash-only account types (cash accounts, mortgage) and 100% real estate for real estate accounts; it is required for every other type.
tax_treatment string null Tax treatment for the account. Options: pre_tax, post_tax_deferred, taxable, or tax_advantaged
name string null Human-readable account name
institution string null Financial institution name
account_number_last4 string null Last 4 digits of account number
is_current_employer bool null For 401k accounts, whether this is current employer's plan
employer_match_json object null Employer matching configuration. Only valid on a current-employer 401k (account_type is traditional_401k/roth_401k and is_current_employer is true); rejected otherwise. Must include formula_type ('basic_safe_harbor', 'enhanced_safe_harbor', 'tiered', 'non_elective', or 'discretionary'). For 'tiered', add tiers, e.g. [{"match_rate": 0.5, "up_to_deferral_pct": 6.0}]; for "non_elective", set non_elective_pct. Optional: discretionary_pct, vesting_schedule, annual_match_cap_cents, is_qaca, true_up. Example: {"formula_type": "basic_safe_harbor"}.
mortgage_terms_json object null Loan terms for a 'mortgage' account (required for that type, ignored otherwise). Must include: original_principal_cents, interest_rate (annual decimal, e.g. 0.0675 for 6.75%), term_months, origination_date (ISO 8601, e.g. '2024-01-15'), and monthly_payment_cents (principal + interest only). Optionally is_fixed_rate (default true). Example:
property_details_json object null Property details for a 'real_estate' account (required for that type, ignored otherwise). Must include: property_type ('primary_residence', 'investment_property', 'vacation_home', or 'rental_property'), purchase_price_cents, and purchase_date (ISO 8601). Optional: estimated_value_cents (defaults to purchase price), appreciation_rate (annual decimal, e.g. 0.03 for 3%; defaults to 3%), building_type, city, state, zip, linked_mortgage_account_id. Example:
loan_terms_json object null Loan terms for a non-mortgage liability account β€” 'credit_card', 'student_loan', 'auto_loan', 'personal_loan', or 'other_loan' (required for those types, ignored otherwise). Must include: apr (annual decimal, e.g. 0.2499 for 24.99%) and minimum_payment_cents. Optionally term_months (set for an amortizing installment loan; omit for revolving debt like a credit card). Example:
goal_id string null Optional Goal ID to earmark this account to. The goal's funded amount then derives from this account's balance.
monthly_contribution_cents int null Optional explicit monthly contribution earmarked to this account, in cents. Set it when the honest per-account contribution is known (e.g. an IRA at its annual cap, a taxable account taking no new money) so a whole-plan projection (project_plan) honors it as a fixed monthly amount instead of deriving the account's share of the household surplus by balance; the remaining surplus is split by balance across the accounts without a pin. Non-negative; omit to let the balance-weighted split apply. Inert on liability and real-estate accounts, which a projection does not project.

Returns the created account as JSON including auto-generated ID.