Base Resources
Accounts
An account represents a financial account, for example, a user’s checking or savings account. A member may have more than one account associated with it. For instance, a user may have both a checking and savings account associated with one Chase login and would therefore have two accounts associated with that member.
Account Fields
| Field | Data Type | Definition |
|---|---|---|
account_number | String | The account number associated with the account. This will typically be a masked or partial account number. |
apr | Double | The annual percentage rate associated with the account. |
apy | Double | The annual percentage yield associated with the account. |
available_balance | Double | The balance that is available for use in asset accounts like checking and savings. PENDING transactions are typically taken into account with the available balance, but this may not always be the case.available_balance will usually be a positive value for all account types, determined in the same way as the balance field. |
available_credit | Double | The amount of credit available for use in liability accounts like credit cards and lines of credit. PENDING transactions are typically taken into account with available credit, but this may not always be the case.available_credit will usually be a positive value for all account types, determined in the same way as the balance field. |
balance | Double | The current balance of the account. PENDING transactions are typically not taken into account with the current balance, but this may not always be the case. This is the value used for the account balance displayed in MX UIs.The balance will usually be a positive value for all account types. Asset-type accounts ( CHECKING, SAVINGS, INVESTMENT) may have a negative balance if they are in overdraft. Debt-type accounts (CREDIT_CARD, LOAN, LINE_OF_CREDIT, MORTGAGE) may have a negative balance if they are overpaid. |
cash_advance_apr | Double | APR values for cash advances. Value is a percentage (e.g. 2.99% is passed as 2.99). |
cash_balance | Double | The cash balance of the account. |
cash_surrender_value | Double | The sum of money paid to the policyholder or annuity holder in the event the policy is voluntarily terminated before it matures, or the insured event occurs. |
created_at | Long | The date and time at which the account was created. |
credit_limit | Double | The credit limit associated with the account. |
day_payment_is_due | Long | The day of the month the payment is due. For example, the 14th is passed as 14. |
death_benefit | Double | The amount paid to the beneficiary of the account upon death of the account owner. |
guid | String | The unique identifier for the account. Defined by MX. |
has_monthly_transfer_limit | Boolean | This account limits the number of transfers each month. This is associated with government regulation D. |
holdings_value | Double | The sum of all long holdings within this account, not including any that are shorted and not including cash. |
id | String | The unique partner-defined identifier for the account |
institution_code | String | A more human-friendly identifier for the institution that this account is associated with. Defined by MX. |
institution_guid | String | The unique identifier for the institution that this account is associated with. Defined by MX. |
insured_name | String | The name of the insured individual. |
interest_rate | Double | The interest rate associated with the account. |
is_closed | Boolean | This indicates whether an account has been closed. |
is_hidden | Boolean | This indicates whether the account is hidden. Defaults to false. |
is_internal | Boolean | This indicates whether the account belongs to a client's default institution. |
is_personal | Boolean | This indicates whether the account is personal. |
last_payment_at | Long | The date and time of the most recent payment on the account. |
last_payment_on | String | The date of the account's most recent payment. |
last_payment | Double | The amount of the most recent payment made on the account. |
loan_amount | Double | The amount of the loan associated with the account. |
matures_at | Long | The date and time at which the account matures, given as a Unix timestamp. |
matures_on | String | The date on which the account will mature. |
member_guid | String | The unique identifier for the member associated with the account. Defined by MX. |
member_id | String | The unique, partner-defined, identifier for the member associated with this account. |
member_is_managed_by_user | Boolean | This indicates whether the associated member is managed by the user or the MX partner. |
metadata | String | Additional information a partner can store on the account. |
minimum_balance | Double | The minimum balance associated with the account. |
minimum_payment | Double | The minimum payment required for an account. This can apply to any debt account. |
monthly_transfer_count | Long | The number of limited transfers that have occurred during the current month. Typically users will incur a fee for going over six transfers from a limited transfer account in a given month. This is associated with government regulation D. |
name | String | The human-readable name for the account. |
nickname | String | An alternate name for the account. |
original_balance | Double | The original balance associated with the account. This will always be positive. |
pay_out_amount | Double | The amount paid out to the insured individual or beneficiary under the conditions of the insurance policy. |
payment_due_at | Long | The date and time at which the next payment is due on the account. Represented as a Unix Epoch datetime (e.g. 1479166089). |
payment_due_on | String | The date on which the next payment is due on the account. |
payoff_balance | Double | The payoff balance for a debt account. This will normally be a positive number. |
pending_balance | Double | The available balance after accounting for pending transactions. |
premium_amount | Double | The insurance policy’s premium amount. |
property_type | String | The property type of the account, if applicable. |
revision | Long | The revision number of the account record. |
started_at | Long | The date and time at which a debt account was started. |
started_on | String | The date on which a debt account was started. |
statement_balance | Double | The balance at the end of the account's last statement period. |
statement_on | String | The closing date — i.e., the statement compilation date — of the account's last billing cycle. |
sub_type | String | The account's subtype, e.g., PLAN_401_K, MONEY_MARKET, or HOME_EQUITY. |
total_account_value | Double | The sum of the long and short positions, the sweep account and/or cash balance, and any margin debt associated with a particular account. This amount includes the market value of all positions held in the account and is reduced by any debit balance and the amount of short options positions that are "in the money". This may sum to a negative value, and it does not represent an account balance. |
type | String | The general or parent type of the account. |
updated_at | Long | The date and time at which the account was most recently updated. |
user_guid | String | The unique identifier for the user the account is associated with. Defined by MX. |
user_id | String | The unique, partner-defined, identifier for the user associated with this account. |
Account Types and Subtypes
Parent Types:
ANY(not provided by data partner or invalid number provided)CHECKINGSAVINGSLOANCREDIT_CARDINVESTMENTLINE_OF_CREDITMORTGAGEPROPERTYCASHINSURANCEPREPAIDCHECKING_LINE_OF_CREDIT
Subtypes
| Subtype | Parent Type |
|---|---|
MONEY_MARKET | SAVINGS |
CERTIFICATE_OF_DEPOSIT | SAVINGS |
AUTO | LOAN |
STUDENT | LOAN |
SMALL_BUSINESS | LOAN |
PERSONAL | LOAN |
PERSONAL_WITH_COLLATERAL | LOAN |
HOME_EQUITY | LOAN |
PLAN_401_K | INVESTMENT |
PLAN_403_B | INVESTMENT |
PLAN_529 | INVESTMENT |
IRA | INVESTMENT |
ROLLOVER_IRA | INVESTMENT |
ROTH_IRA | INVESTMENT |
TAXABLE | INVESTMENT |
NON_TAXABLE | INVESTMENT |
BROKERAGE | INVESTMENT |
TRUST | INVESTMENT |
UNIFORM_GIFTS_TO_MINORS_ACT | INVESTMENT |
PLAN_457 | INVESTMENT |
PENSION | INVESTMENT |
EMPLOYEE_STOCK_OWNERSHIP_PLAN | INVESTMENT |
SIMPLIFIED_EMPLOYEE_PENSION | INVESTMENT |
SIMPLE_IRA | INVESTMENT |
BOAT | LOAN |
POWERSPORTS | LOAN |
RV | LOAN |
HELOC | LOAN |
PLAN_ROTH_401_K | INVESTMENT |
FIXED_ANNUITY | INVESTMENT |
VARIABLE_ANNUITY | INVESTMENT |
VEHICLE_INSURANCE | INSURANCE |
DISABILITY | INSURANCE |
HEALTH | INSURANCE |
LONG_TERM_CARE | INSURANCE |
PROPERTY_AND_CASUALTY | INSURANCE |
UNIVERSAL_LIFE | INSURANCE |
TERM_LIFE | INSURANCE |
WHOLE_LIFE | INSURANCE |
ACCIDENTAL_DEATH_AND_DISMEMBERMENT | INSURANCE |
VARIABLE_UNIVERSAL_LIFE | INSURANCE |
HSA | INVESTMENT |
TAX_FREE_SAVINGS_ACCOUNT | INVESTMENT |
INDIVIDUAL | INVESTMENT |
REGISTERED_RETIREMENT_INCOME_FUND | INVESTMENT |
CASH_MANAGEMENT_ACCOUNT | INVESTMENT |
EMPLOYEE_STOCK_PURCHASE_PLAN | INVESTMENT |
REGISTERED_EDUCATION_SAVINGS_PLAN | INVESTMENT |
PROFIT_SHARING_PLAN | INVESTMENT |
UNIFORM_TRANSFER_TO_MINORS_ACT | INVESTMENT |
PLAN_401_A | INVESTMENT |
SARSEP_IRA | INVESTMENT |
FIXED_ANNUITY_TRADITIONAL_IRA | INVESTMENT |
VARIABLE_ANNUITY_TRADITIONAL_IRA | INVESTMENT |
SEPP_IRA | INVESTMENT |
INHERITED_TRADITIONAL_IRA | INVESTMENT |
FIXED_ANNUITY_ROTH_IRA | INVESTMENT |
VARIABLE_ANNUITY_ROTH_IRA | INVESTMENT |
INHERITED_ROTH_IRA | INVESTMENT |
COVERDELL | INVESTMENT |
ADVISORY_ACCOUNT | INVESTMENT |
BROKERAGE_MARGIN | INVESTMENT |
CHARITABLE_GIFT_ACCOUNT | INVESTMENT |
CHURCH_ACCOUNT | INVESTMENT |
CONSERVATORSHIP | INVESTMENT |
CUSTODIAL | INVESTMENT |
DEFINED_BENEFIT_PLAN | INVESTMENT |
DEFINED_CONTRIBUTION_PLAN | INVESTMENT |
EDUCATIONAL | INVESTMENT |
ESTATE | INVESTMENT |
EXECUTOR | INVESTMENT |
GROUP_RETIREMENT_SAVINGS_PLAN | INVESTMENT |
GUARANTEED_INVESTMENT_CERTIFICATE | INVESTMENT |
HRA | INVESTMENT |
INDEXED_ANNUITY | INVESTMENT |
INVESTMENT_CLUB | INVESTMENT |
IRREVOCABLE_TRUST | INVESTMENT |
JOINT_TENANTS_BY_ENTIRITY | INVESTMENT |
JOINT_TENANTS_COMMUNITY_PROPERTY | INVESTMENT |
JOINT_TENANTS_IN_COMMON | INVESTMENT |
JOINT_TENANTS_WITH_RIGHTS_OF_SURVIVORSHIP | INVESTMENT |
KEOUGH_PLAN | INVESTMENT |
LIFE_INCOME_FUND | INVESTMENT |
LIVING_TRUST | INVESTMENT |
LOCKED_IN_RETIREMENT_ACCOUNT | INVESTMENT |
LOCKED_IN_RETIREMENT_INVESTMENT_FUND | INVESTMENT |
LOCKED_IN_RETIREMENT_SAVINGS_ACCOUNT | INVESTMENT |
MONEY_PURCHASE_PLAN | INVESTMENT |
PARTNERSHIP | INVESTMENT |
PLAN_409_A | INVESTMENT |
PLAN_ROTH_403_B | INVESTMENT |
REGISTERED_DISABILITY_SAVINGS_PLAN | INVESTMENT |
REGISTERED_LOCKED_IN_SAVINGS_PLAN | INVESTMENT |
REGISTERED_PENSION_PLAN | INVESTMENT |
REGISTERED_RETIREMENT_SAVINGS_PLAN | INVESTMENT |
REVOCABLE_TRUST | INVESTMENT |
ROTH_CONVERSION | INVESTMENT |
SOLE_PROPRIETORSHIP | INVESTMENT |
SPOUSAL_IRA | INVESTMENT |
SPOUSAL_ROTH_IRA | INVESTMENT |
TESTAMENTARY_TRUST | INVESTMENT |
THRIFT_SAVINGS_PLAN | INVESTMENT |
INHERITED_ANNUITY | INVESTMENT |
CORPORATE_ACCOUNT | INVESTMENT |
LIMITED_LIABILITY_ACCOUNT | INVESTMENT |
Account Property Types
| Property type |
|---|
REAL_ESTATE |
VEHICLE |
ART |
JEWELRY |
FURNITURE |
APPLIANCES |
COMPUTER |
ELECTRONICS |
SPORTS_EQUIPMENT |
MISCELLANEOUS |
Beats
Beats are deprecated. Use Insights instead.
Beats Fields
| Field | Data Type | Definition |
|---|---|---|
account_guids | Array | An array of account GUIDs that are relevant to the information delivered in the beat. |
account_ids | Array | An array of partner-defined identifiers for accounts that are relevant to the information delivered in the beat. |
active_at | Long | The date and time the beat became active. |
created_at | Long | The date and time this beat was created. |
description | String | The human-readable information being delivered to the end user. |
digest | String | A unique identifier derived from inputs to the beat which ensures beats are not duplicated. |
displayed _at | Long | The date and time at which the beat was displayed to the end user. |
guid | String | The unique identifier for the beat. Defined by MX. |
has_been_displayed | Boolean | This indicates whether the beat has been displayed to the end user. |
html_description | String | The beat's description, delivered as HTML. |
html_title | String | The beat's title, delivered as HTML. |
is_deleted | Boolean | This indicates whether the beat has been deleted. |
is_dismissed | Boolean | This indicates whether the beat has been dismissed. |
is_relevant | Boolean | This indicates whether a beat still contains information that is relevant, meaningful, or useable to the end user. For example, an OverdraftWarning will have is_relevant set to false if a large deposit is made into the associated account after the beat was created. Any beat which has already been displayed to or dismissed by the end user will be set to false. There are numerous examples and conditions. |
primary_account_guid | String | The unique identifier for the account most relevant to the information delivered in the beat. |
primary_account_id | String | The unique partner-defined identifier for the account most relevant to the information delivered in the beat. |
primary_transaction_guid | String | The unique identifier for the transaction most relevant to the information delivered in the beat. |
primary_transaction_id | String | The unique partner-defined identifier for the transaction most relevant to the information delivered in the beat. |
template | String | A short label for the type of beat being delivered, e.g., SubscriptionPriceIncrease or MonthlyCategoryTotal. |
title | String | The title for the specific beat, e.g., Price Increase or Paycheck Deposit. |
transaction_guids | Array | An array of transaction GUIDs that are relevant to the information delivered in the beat. |
transaction_ids | Array | An array of partner-defined transaction identifiers that are relevant to the information delivered in the beat. |
updated_at | Long | The date and time this beat was most recently updated. |
user_guid | String | The unique identifier for the user to which the beat belongs. Defined by MX. |
user_id | String | The unique partner-defined identifier for the user to which the beat belongs. |
Beat Feedback
Beats are deprecated. Use insights instead.
| Field | Data Type | Definition |
|---|---|---|
beat_guid | String | The unique identifier for the beat associated with this feedback. Defined by MX. |
comments | String | The feedback provided by the end user. |
created_at | Long | The date and time associated with this beat feedback. |
guid | String | The unique identifier for the beat feedback. Defined by MX. |
rating | Long | The rating provided by the end user. 1 is the lowest rating, 5 is the highest. 0 means no rating was provided. |
template | String | A short label for the type of beat being delivered, e.g., NotifySalaryDeposit or SumSpendingCategory. |
updated_at | Long | The date and time at which the beat feedback was last updated. |
user_guid | String | The unique identifier for the user associated with the beat feedback. Defined by MX. |
user_id | String | The partner-defined identifier for the user associated with the beat feedback. |
Budgets
Budgets represent an end users monthly budget for a given category. Budgets are offered as part of the following MX products and solutions:
- Mobile Banking
- Personal Finance Management
- Nexus API
Budget Fields
| Field | Data Type | Definition |
|---|---|---|
amount | Long | The monthly amount allotted to this budget. |
category_guid | String | The unique identifier for the category associated with this budget. Defined by MX. |
created_at | Long | The date and time the budget was created. |
guid | String | The unique identifier for the budget. Defined by MX. |
is_exceeded | Boolean | This indicates that the budget has been exceeded. |
is_off_track | Boolean | This indicates that the projected total monthly spending in the associated category exceeds 105% of the budgeted amount. |
metadata | String | Additional information a partner can store on the budget. |
name | String | The name of the budget. This is the same as the name of the spending category that the budget is associated with. |
parent_guid | String | The unique identifier for the parent budget. Defined by MX. |
projected_spending | Double | The projected amount of spending for the budget. |
revision | Long | The revision number of the budget record. |
transaction_total | Double | The cumulative amount of all transactions associated with this budget. |
updated_at | Long | The date and time this budget was most recently updated. |
user_guid | String | The unique identifier for the user the budget is associated with. Defined by MX. |
user_id | String | The unique, partner-defined identifier for the user the budget is associated with. |
Categories
Daily reporting files for categories reflect changes in custom transaction categories created by end users with the following MX products and solutions:
- Mobile Banking
- Personal Finance Management
- Nexus API
- Platform API
Category Fields
| Field | Data Type | Definition |
|---|---|---|
created_at | Long | The date and time the category was created. This field will always be null when is_default is true. |
guid | String | The unique identifier of the category. Defined by MX. |
is_default | Boolean | This indicates whether the category is an MX-created default category. This will always be false for custom categories. |
is_income | Boolean | This indicates whether the category represents income. This will always be false for custom categories. |
metadata | String | Addition information a partner can store on the category. |
name | String | The name of the category. |
parent_guid | String | The unique identifier for the parent category. Defined by MX. |
revision | Long | The revision number of the category record. |
updated_at | Long | The date and time the category was last updated. This field will always be null when is_default is true. |
user_guid | String | The unique identifier of the user this category is associated with. Defined by MX. |
user_id | String | The unique, partner-defined identifier of the user this category is associated with. |
Devices
Devices represent devices using the Mobile Banking app.
Device Fields
| Field | Data Type | Definition |
|---|---|---|
guid | String | The unique identifier of the device. Defined by MX. |
make | String | The name of the device's manufacturer. |
model | String | The model of the device. |
os_name | String | The name of the operating system that the device is running. |
os_version | String | The operating system version that the device is running. |
updated_at | Long | The date and time the device record was last updated. |
user_guid | String | The unique identifier for the user the device is associated with. Defined by MX. |
user_id | String | The unique, partner-defined identifier for the user the device is associated with. |
Goals
Goals represent savings or payment goals created with the following MX products and solutions:
- Personal Finance Management
- Nexus
Goal Fields
| Field | Data Type | Definition |
|---|---|---|
account_guid | String | The unique identifier for the account the goal is associated with. Defined by MX. |
amount | Double | The amount of the goal. |
completed_at | Long | The date and time the goal was completed. |
completed_on | String | The date the goal was completed. |
created_at | Long | The date and time the goal was created. |
created_by | String | The source that created the goal. Can be SYSTEM, USER, or null. |
created_on | String | The date the goal was created. |
current_amount | Double | The current amount that has been committed to the goal. |
goal_type | String | The type of the goal (SAVE_AMOUNT or PAYOFF). |
guid | String | The unique identifier for the goal. Defined by MX. |
has_been_spent | Boolean | This indicates that the goal has been spent. |
is_complete | Boolean | This indicates that the goal has been completed. |
meta_type | String | The meta type of the goal. |
metadata | String | Additional information a partner can store on the goal. |
name | String | The name of the goal. |
position | Long | The priority position of the goal in relation to multiple goals. |
projected_to_complete_at | Long | The date and time the goal is projected to be completed. |
revision | Long | The revision number of the goal record. |
updated_at | Long | The date and time this goal was last updated. |
user_guid | String | The unique identifier for the user the goal is associated with. Defined by MX. |
user_id | String | The unique, partner-defined identifier for the user the goal is associated with. |
Goal Meta Types
AUTOMOBILECOLLEGEELECTRONICEMERGENCY_FUNDHOUSEOTHERRECREATIONAL_VEHICLERETIREMENTSETUP_BUDGETSSTART_MONEY_MANAGEMENTVACATION
Holdings
Holdings represent a stock, bond, or other type of investment, as found in the following MX products and solutions:
- Atrium API
- MDX Real Time
- Nexus API
- Platform API
Holding Fields
As of January 1, 2025, CUSIP is no longer supported. Please refer to the most-up-to-date investment documentation.
| Field | Data Type | Definition |
|---|---|---|
account_guid | String | The unique identifier for the account associated with the holding. Defined by MX. |
bond_coupon_rate | Double | The coupon rate for a bond. |
bond_maturity_date | Long | The date and time a bond matures. |
classification | String | An alias for the field equity_classification. |
cost_basis | Double | The cost basis is the original value of an asset adjusted for stock splits, dividends, and capital distributions. |
created_at | Long | The date and time the holding was created. |
daily_change | Double | The change from the previous day in the price of the holding. |
deleted_at | Long | The date and time the holding was deleted. |
description | String | The description of the holding after being cleansed by MX into a human-readable format. |
equity_classification | String | The equity classification of the holding. |
fixed_income_classification | String | A graphical representation of the investment style of the fixed income funds within a holding (like bonds) according to the Morningstar Style Box. |
guid | String | The unique identifier for the holding. Defined by MX. |
holding_type | String | The type of holding, e.g., mutual fund, bond, etc. |
id | String | The unique identifier for the holding. Defined by the data provider. |
is_deleted | Boolean | This indicates that the holding has been deleted. |
isin | String | The International Securities Identification Number (ISIN) in ISO 6166 format. |
market_value | Double | The market value of the holding. |
member_is_managed_by_user | Boolean | This indicates that the member associated with the holding is managed by the user. |
metadata | String | Additional information a partner can store on the holding. |
purchase_price | Double | The purchase price of the holding. |
revision | Long | The revision number of the holding record. |
sector | String | The area of the economy the holding is invested in. |
sedol | String | The Stock Exchange Daily Official List (SEDOL) classification code, represented as a seven-character code (e.g. B03MM40). |
shares | Double | The number of shares owned for the holding. |
symbol | String | The ticker symbol, i.e. the abbreviation used to uniquely identify publicly traded stocks, bonds, mutual funds, and ETFs. |
updated_at | Long | The date and time the holding was last updated. |
user_guid | String | The unique identifier for the user the holding is associated with. Defined by MX. |
user_id | String | The unique identifier for the user the holding is associated with. Defined by the partner. |
Equity Classifications
UNKNOWNLARGE_VALUELARGE_CORELARGE_GROWTHMID_VALUEMID_COREMID_GROWTHSMALL_VALUESMALL_CORESMALL_GROWTH
Fixed Income Classifications
UNKNOWN_FIXED_INCOME_CLASSIFICATIONHIGH_LIMITEDHIGH_MODERATEHIGH_EXTENSIVEMEDIUM_LIMITEDMEDIUM_MODERATEMEDIUM_EXTENSIVELOW_LIMITEDLOW_MODERATELOW_EXTENSIVE
Sectors
UNKNOWN_SECTORBASIC_MATERIALSCONSUMER_CYCLICALFINANCIAL_SERVICESREAL_ESTATECONSUMER_DEFENSIVEHEALTHCAREUTILITIESCOMMUNICATION_SERVICESENERGYINDUSTRIALSTECHNOLOGY
Holding Types
UNKNOWN_TYPEEQUITYEXCHANGE_TRADED_FUNDMONEY_MARKETMUTUAL_FUNDHEDGE_FUNDANNUITYUNIT_INVESTMENT_TRUSTCASHFIXED_INCOMEOPTIONS
Insights
Insights are cards that are personalized for a user and appear on the UI. This relates to our Financial Insights product.
| Field | Data Type | Definition |
|---|---|---|
active_at | Long | The date and time the insight is active. |
client_guid | String | The unique identifier for the client associated with the insight. Defined by MX. |
created_at | Long | The date and time the insight was created. |
description | String | The human-readable information being delivered to the end user. |
guid | String | The unique identifier for the insight. Defined by MX. |
has_associated_accounts | Boolean | This indicates whether there are accounts associated with the insight. |
has_associated_categories | Boolean | This indicates whether there are categories associated with the insight. |
has_associated_merchants | Boolean | This indicates whether there are merchants associated with the insight. |
has_associated_scheduled_payments | Boolean | This indicates whether there are scheduled payments associated with the insight. |
has_associated_transactions | Boolean | This indicates whether there are transactions associated with the insight. |
has_been_displayed | Boolean | This indicates whether the insight has been shown to the end user. |
is_dismissed | Boolean | This indicates whether the insight has been dismissed by the end user. |
micro_call_to_action | String | Returns a micro CTA if the insight template supports micro copy. |
micro_description | String | A shortened version of the insight's description that displays to the end user in the Micro Widget. |
micro_title | String | A shortened version of the insight's title that displays to the end user in the Micro Widget. For example, Price Increase or Paycheck Deposit. |
template | String | A short label for the type of insight being delivered, for example, SubscriptionPriceIncrease or MonthlyCategoryTotal. See Insights Library for more info. |
title | String | The title for the specific insight, for example, Price Increase or Paycheck Deposit. |
updated_at | Long | The date and time the insight was last updated. |
user_guid | String | The unique identifier for the user to which the insight belongs. Defined by MX. |
user_id | String | The unique partner-defined identifier for the user associated with the insight. |
Members
A member represents the relationship between a user and an institution. A user may have multiple members, one each for their bank, their mortgage broker, their credit card provider, etc. Aggregation, verification, and many other processes are centered around a member. Daily change files reflect member changes resulting from background aggregation as well as from the following MX products or solutions:
- Atrium API
- Batch API
- Mobile Banking
- MDX Real Time
- Personal Finance Management, including the Connect and Connections widgets
- Nexus API
- Platform API
- SSO API
Member Fields
| Field | Data Type | Definition |
|---|---|---|
connection_status_id | Long | This indicates the state of a member's aggregation. This field will reflect the value as of the time that the daily files were generated, which is around midnight UTC. |
connection_status_message | String | A message that can be displayed to the user to help them navigate the connection and aggregation process. |
connection_status | String | This indicates the state of a member's aggregation. This field will reflect the value as of the time that the daily files were generated, which is around midnight UTC. |
created_at | Long | The date and time the member was created. |
guid | String | The unique identifier for the member. Defined by MX. |
id | String | The partner-defined unique identifier for the member. |
institution_code | String | A more human-friendly identifier for the institution that this member is associated with. Defined by MX. |
institution_guid | String | The unique identifier for the institution associated with the member. Defined by MX. |
institution_id | String | An alternate unique identifier for the member's institution. Defined by MX. |
is_managed_by_user | Boolean | This indicates that the member is managed by the user. |
is_manual | Boolean | This indicates that the member was created manually. |
is_user_created (deprecated) | Boolean | If the member was created by the user, this field will be true. Otherwise, this field will be false. The field is_user_created has been deprecated. Partners should use the field is_managed_by_user instead. Both fields are included for backward compatibility. |
metadata | String | Additional information a partner can store on the member. |
name | String | The name of the member. |
revision | Integer | The revision number of this member record. |
successfully_aggregated_at | Integer | The date and time this member was last successfully aggregated. |
updated_at | Integer | The date and time this member was last updated. |
use_cases | Array | The use case associated with the member. Valid values are PFM and/or MONEY_MOVEMENT. For more info, see Member Use Cases. |
user_guid | String | The unique identifier for the user associated with the member. Defined by MX. |
user_id | String | The unique partner-defined identifier for the user associated with the member. |
Member Connection Statuses
The connection_status indicates the state of a member's aggregation, meaning the state of a user connecting to a particular institution.
The connection_status field indicates the current state of an aggregation, meaning the state of a user connecting to a particular institution. For instance:
CREATEDmeans the member has just been created.CHALLENGEDmeans the process has run into multifactor authentication.FAILEDmeans the process was unsuccessful.
The connection statuses CREATED, UPDATED, DELAYED, and RESUMED represent transient states for different points in the process and don't require a specific action or end-user input. They may, however, require you to keep making read requests on the member until an actionable status or an end state appears.
The connection statuses PREVENTED, DENIED, IMPEDED, IMPAIRED, REJECTED, EXPIRED, LOCKED, IMPORTED, DISABLED, DISCONTINUED, and CLOSED represent end states that require you to start a new connection, and possibly end-user input, for future success.
Here are all the member statuses you might encounter, what they mean, and what to do about them.
| Integer Value | Status | Definition | Next Steps | End-User Message |
|---|---|---|---|---|
| null | null | The member exists but does not have credentials. A member that does not aggregate (e.g., a manual member) will always have this status. | None. | None. |
| 0 | CREATED | The member is new and has not yet been aggregated. | Aggregate the member once the end user logs in; poll for a status update. | Connecting to [...] ... |
| 1 | PREVENTED | The end user's entered credentials have failed to connect three times in a row. MX has locked the account to avoid locking the end user out of their account on the financial institution's website. The end user must reenter their username and password to continue updating their data. | Display end-user message; after end user has updated their credentials, aggregate again. | The last 3 attempts to connect have failed. Please re-enter your credentials to continue importing data. |
| 2 | DENIED | The credentials provided for the member were invalid. | Display end-user message; after end user has updated their credentials, aggregate again. | The credentials entered do not match your credentials at this institution. Please re-enter your credentials to continue importing data. |
| 3 | CHALLENGED | The connection is waiting for the end user to complete a multifactor authentication (MFA) challenge. This is not an error and will change to an EXPIRED status if the end user fails to complete MFA. | Display end-user message; follow MFA pathway; after the user answers MFA, poll for a status update. | To authenticate your connection to [...], please answer the following challenge(s). |
| 4 | REJECTED | An MFA challenge was answered incorrectly. | Display end-user message; another challenge may follow or aggregation may need to be restarted. | The answer or answers provided were incorrect. Please try again. |
| 5 | LOCKED | The financial institution is preventing authentication. The end user must go to the FI's website or contact the financial institution. | Display end-user message. | Your account is locked. Please log in to the appropriate website for [...] and follow the steps to resolve the issue. |
| 6 | CONNECTED | The member was successfully authenticated and data is now aggregating. | Display the account as having been connected. | Connected to [...] ... |
| 7 | IMPEDED | The end user’s attention is required at their online banking institution, e.g., there is a marketing message that must be viewed, terms and conditions that must be accepted, etc. | Display end-user message. | Your attention is needed at this institution's website. Please log in to the appropriate website for [...] and follow the steps to resolve the issue. |
| 8 | RECONNECTED | The member has been migrated to a new data source and aggregation is likely to trigger one-time password MFA. MX will not perform background aggregation in order to avoid unnecessarily disruptive texts, emails, etc. The member must be re-aggregated in the foreground with the end user present. | Aggregate the member once the end user logs in; poll for a status update. | Reconnecting to [...] ... |
| 9 | DEGRADED | Aggregation has failed at least three times within a short period of time. This could be due to website maintenance or other factors that are preventing account aggregation. | Display end-user message. | We are upgrading this connection. Please try again later. |
| 10 | DISCONNECTED | Aggregation has failed at least three times and has not succeeded for at least two weeks. | Display end-user message. | It looks like your data from [...] cannot be imported. We are working to resolve the issue. |
| 11 | DISCONTINUED | The connection to this financial institution is no longer available. | Display end-user message. | Connections to this institution are no longer supported. You may create a manual account and use manual transactions to track data for this account. |
| 12 | CLOSED | The end user, MX, the client, or a partner has marked the member as closed. | Display end-user message. | This connection has been closed. You may track this account manually. If reopened, you may connect the institution again. |
| 13 | DELAYED | Aggregating the member has taken longer than expected and it has not yet been connected. This can be due to reasons outside of MX's control, such as internet bandwidth, problems at the financial institution's website, and other factors. | Display end-user message; poll for a status update. | Importing your data from [...] may take a while. Please check back later. |
| 14 | FAILED | Aggregation failed without being connected. Most aggregation issues are temporary and self-resolve after 24 hours. | Display end-user message; try aggregating again later. | There was a problem validating your credentials with [...]. Please try again later. |
| 15 | UPDATED | The member has been updated — i.e., credentials have been updated — but it has not yet been connected. | Aggregate the member once the end user logs in; poll for a status update. | Connecting to [...] ... |
| 16 | DISABLED | Aggregation has been momentarily paused, but the member is still connected. | Display end-user message. | Importing data from this institution has been disabled. Please contact us if you believe it has been disabled in error. |
| 17 | IMPORTED | MX does not have credentials and will not try to aggregate the member until the end user provides credentials. | Display end-user message; re-aggregate after the end user updates credentials. | You must re-authenticate before your data can be imported. Please enter your credentials for [...]. |
| 18 | RESUMED | The answer to an MFA challenge was received, but it is not yet clear whether it was correct. | Poll for a status update. | Connecting to [...] ... |
| 19 | EXPIRED | The MFA answer was not provided within the time allotted by the financial institution. | Display end-user message; re-aggregate the member if the end user initiates it. | The answer or answers were not provided in time. Please try again. |
| 20 | IMPAIRED | The member is missing some or all credentials needed in order to connect. | Display end-user message; re-aggregate after the end user updates credentials. | You must re-authenticate before your data can be imported. Please enter your credentials for [...]. |
| 21 | PENDING | The member is using OAuth to authenticate credentials and still needs to go through the financial institution's OAuth process. A PENDING status will appear only on members less than one hour old with is_oauth: true. Members that stay PENDING longer than one hour will be deleted by MX. | Redirect the end user to the oauth_window_uri provided in the create member response, or request one through the generate OAuth window URI endpoint. | None. |
Notification Profiles
Notification profiles are related to our PFM widgets.
Notification Profile Fields
| Field | Data Type | Definition |
|---|---|---|
created_at | Long | The date and time at which the notification profile was created. |
email_channel | Boolean | This indicates whether email notifications are enabled for the user. |
entity_guid | String | The unique identifier for the object associated with this notification, e.g., BGT-1234 or TRN-2345. |
guid | String | The unique identifier for the notification profile. Defined by MX. |
is_enabled | Boolean | This indicates whether notifications are enabled for the user. |
last_recorded_at | Long | The date and time a notification of a given type was last triggered. |
notification_type | String | The type of notification, e.g., BUDGET_EXCEEDED or OFFER. |
push_channel | Boolean | This indicates whether push notifications are enabled for the user. |
scheduled_for | Long | For recurring notification types such as DEBT_PAYMENT_REMINDER, this is the date and time the next notification is scheduled to be delivered. |
sms_channel | Boolean | This indicates whether SMS notifications are enabled for the user. |
threshold | Long | This is the monetary threshold that will trigger a notification for certain notification types, such as BUDGET_EXCEEDED. |
updated_at | Long | The time at which the notification profile was last updated. |
user_guid | String | The unique identifier for the user associated with the notification profile. Defined by MX. |
user_id | String | The partner-defined unique identifier for the user associated with the notification profile. |
Notification Types
| Type Integer | Type String |
|---|---|
| 1 | BUDGET_EXCEEDED |
| 2 | BUDGET_OFF_TARGET |
| 3 | DEBT_PAYMENT_REMINDER |
| 4 (deprecated) | GUIDE_ME_STEP_COMPLETE |
| 5 (deprecated) | GUIDE_ME_OFF_TARGET |
| 6 | ACCOUNT_BALANCE_LOW |
| 7 | ACCOUNT_DEPOSIT_LARGE |
| 8 | TRANSACTION_EXPENSE_LARGE |
| 9 | TRANSACTION_FEE_CHARGE |
| 10 (deprecated) | SYSTEM_NOTIFICATION |
| 11 | API_NOTIFICATION |
| 12 | USER_SUMMARY |
| 13 | OFFER |
| 14 | PASSWORD_RESET_TOKEN |
| 15 | PASSWORD_CHANGED |
| 16 | EMAIL_VERIFICATION |
| 17 | EMAIL_VERIFIED |
| 18 | WELCOME_NEW_USER |
| 19 | DEVICE_CREATED |
| 20 | DEVICE_DELETED |
| 21 | SMS_VERIFICATION |
| 22 | ACCOUNT_NEARING_ZERO |
| 23 | TRANSACTION_IS_INTERNATIONAL |
| 24 | INVALID_CONTACT_INFORMATION |
| 25 | GOAL_PROGRESS |
| 26 | CREATE_GOAL |
| 27 | FORGOT_USERNAME_REMINDER |
| 28 | SMS_WELCOME_MESSAGE |
| 29 | DUPLICATE_PAYMENT |
Taggings
Taggings represent the association of a tag to a transaction. In other words, with a tagging, a transaction can be assigned a specific tag, either the default business tag, or any other user-created tag. Daily files represent changes resulting from the following MX products and solutions:
- Personal Finance Management
- Nexus API
- Platform API
Tagging Fields
| Field | Data Type | Definition |
|---|---|---|
guid | String | The unique identifier for the tagging. Defined by MX. |
member_is_managed_by_user | Boolean | This indicates that the member the associated with the tagging is managed by the user. |
revision | Long | The revision number of the tagging record. |
transaction_guid | String | The unique identifier for the transaction associated with the tag. Defined by MX. |
transaction_id | String | The partner-defined unique identifier for the transaction associated with the tag. Defined by the data provider. |
tag_guid | String | The unique identifier for the tag. Defined by MX. |
tag_name | String | The name of the tag. |
updated_at | Long | The date and time the tag was last updated. |
user_guid | String | The unique identifier for the user the tag is associated with. Defined by MX. |
user_id | String | The partner-defined unique identifier for the user associated with the tag. |
Tags
Tags allow partners and end users to create a custom label for particular transactions. Daily files represent changes resulting from the following MX products and solutions:
- Personal Finance Management
- Nexus API
- Platform API
Tag Fields
| Field | Data Type | Definition |
|---|---|---|
guid | String | The unique identifier for the tag. Defined by MX. |
name | String | The name of them tag. |
revision | Long | The revision number of the tag record. |
updated_at | Long | The date and time the tag was last updated. |
user_guid | String | The unique identifier for the user the tag is associated with. Defined by MX. |
user_id | String | The unique partner-defined identifier for the user associated with the tag. |
Transactions
A transaction represents any instance in which money moves into or out of an account, such as a purchase at a business, a payroll deposit, a transfer from one account to another, an ATM withdrawal, etc. Each transaction belongs to only one account. Daily files represent changes resulting from background aggregation as well as the following MX products and solutions:
- Atrium API
- Batch API
- Mobile Banking
- MDX Real Time
- Personal Finance Management, including the Connect and Connections widgets
- Nexus API
- Platform API
- SSO API
Transaction Fields
| Field | Data Type | Definition |
|---|---|---|
account_guid | String | The unique identifier for the account associated with this transaction. Defined by MX. |
account_id | String | The unique partner-defined identifier for the account associated with the transaction. |
amount | Double | The monetary amount of the transaction. |
category_guid | String | The unique identifier for the category assigned to the transaction. |
category | String | The category of the transaction. |
check_number (deprecated) | Long | The check number for the transaction. This field will be null if the value is not an Integer, or if its value is too large to fit in a long object type. This filed has been deprecated; partners should use check_number_String instead. |
check_number_string | String | The check number for the transaction. |
created_at | Long | The date and time the transaction was created. |
date | Long | The date on which the transaction took place. This is the field used when searching for transactions by date. This field is generally the same as transacted_at, but uses posted_at as a fallback. |
description | String | A human-readable version of the feed_description field described below, e.g., "Sam's Club," "Johnny's Tavern." This is provided by the MX Platform. |
feed_description | String | The original description of the transaction as provided by our data feed. See description above for more information. |
feed_localized_description | String | The original description of the transaction as provided by our data feed, given in a local language. See description above for more information. |
feed_localized_memo | String | Additional descriptive information about the transaction as provided by our data feed, given in a local language. |
feed_transaction_type | String | The type of the transaction, as provided by our data feed. See type for more information. |
guid | String | The unique identifier for the transaction. Defined by MX. |
has_been_split | Boolean | This indicates whether the transaction has been split. |
has_been_viewed | Boolean | This indicates whether the transaction has been viewed. |
id | String | The unique partner-defined identifier for the transaction. |
is_bill_pay | Boolean | This indicates whether the transaction represents a bill pay. |
is_direct_deposit | Boolean | This indicates whether the transaction represents a direct deposit. |
is_expense | Boolean | This indicates whether the transaction represents an expense. |
is_fee | Boolean | This indicates whether the transaction represents a fee. |
is_flagged | Boolean | This indicates whether the transaction has been flagged. |
is_hidden | Boolean | This indicates whether the transaction is hidden. |
is_income | Boolean | This indicates whether the transaction represents income. |
is_international | Boolean | If the transaction is international, as defined by the data provider, this field will be true. If the data provider determines it is not international then it will be false. It will be null if the data provider does not provide this information. |
is_overdraft_fee | Boolean | This indicates whether the transaction represents an overdraft fee. |
is_payroll_advance | Boolean | This indicates whether the transaction represents a payroll advance. |
is_personal | Boolean | This indicates whether the transaction has been marked as personal by the user. |
is_recurring | Boolean | This field should be ignored. If this information is required, please reach out to MX to discuss an alternative. |
is_subscription | Boolean | This indicates whether the transaction represents a payment for a subscription service such as Netflix or Audible. |
latitude | Double | The latitude of the location where the transaction occurred. The number is a signed decimal (e.g. Rio de Janeiro's latitude is -22.9027800 and Tokyo's latitude is 35.689488). |
localized_description | String | A human-readable description of the transaction, provided in a local language. |
localized_memo | String | Additional descriptive information about the transaction, provided in a local language. |
longitude | Double | The longitude of the location where the transaction occurred. The number is a signed decimal (e.g. Rio de Janeiro's longitude is -43.2075000 and Tokyo's longitude is 139.691706). |
member_is_managed_by_user | Boolean | This indicates whether the associated member is managed by the user or the MX partner. |
memo | String | This field contains additional descriptive information about the transaction. |
merchant_category_code | Long | The ISO 18245 category code for the transaction. |
merchant_guid | String | The unique identifier for the merchant associated with the transaction. Defined by MX. |
merchant_location_guid | String | The unique identifier for the merchant location associated with the transaction. Defined by MX. |
metadata | String | Additional information a partner can store on the transaction. |
parent_guid | String | The unique identifier for the parent transaction associated with a split transaction. Defined by MX. |
posted_at | Long | The date and time the transaction was posted to the account. |
posted_on | String | The date the transaction was posted to the account. |
revision | Long | The revision number of the transaction record. |
status | String | The status of the transaction. This will be either POSTED or PENDING. |
top_level_category_guid | String | The unique identifier for the parent category assigned to this transaction's category. Defined by MX. |
transacted_at | Long | The date and time the transaction took place. |
transacted_on | String | The date the transaction took place. |
type | String | The type of transaction. This will be either CREDIT or DEBIT. |
updated_at | Long | The date and time the transaction was last updated. |
user_guid | String | The unique identifier for the user associated with the transaction. Defined by MX. |
user_id | String | The unique partner-defined identifier for the user associated with the transaction. |
Users
A user represents an end-user accessing the MX Platform API via your application, be it a mobile app, web app, desktop app, etc.
Daily files represent changes resulting the following MX solutions:
- Atrium API
- Batch API
- MDX Real Time
- Platform API
| Field | Data Type | Definition |
|---|---|---|
birthdate | String | The birthdate of end user. |
birthday | String | An alias for the birthdate field. |
created_at | Long | The date and time the user was created. |
email | String | The end user's email address. |
email_is_verified | Boolean | This indicates whether the end user has verified their email. |
first_name | String | The first name of the end user. |
gender | String | The gender of the end user. Returns either MALE, FEMALE or null. |
guid | String | The unique identifier for the user. Defined by MX. |
id | String | A unique, partner-defined, enforced identifier for the user. |
is_disabled | Boolean | This indicates whether the user has been disabled through the API. |
last_name | String | The last name of the end user. |
logged_in_at | Long | The date and time the end user last logged in. |
metadata | String | Additional information a partner can store on the user. |
phone | String | The phone number of the end user. |
phone_is_verified | Boolean | this indicates whether the end user has verified their phone number. |
postal_code | String | An alias for the zip_code field. |
revision | Long | The revision number of the user record. |
updated_at | Long | The date and time the user was last updated. |
zip_code | String | The postal code of the user. Postal codes from the following countries are supported: Canada, Indonesia, Japan, Malaysia, Philippines, South Korea, Thailand, United States, Vietnam. |