Overview
The Trust Accounting API exposes a data model centered on plans, brokerage accounts, uploaded documents, and the statements and transactions parsed from those documents. This page introduces the core entities used in the OpenAPI specification and how they relate to the end goal of producing trust report spreadsheets.Key entities
Document
Represents an uploaded file (often a scanned brokerage statement).- Example fields (see the
Documentschema in the API Reference):_id, metadata about the upload, and links to TPA statements. - Typical operations:
- Upload new documents via
POST /document/upload. - Retrieve document details and presigned URLs via
GET /document/get.
- Upload new documents via
TpaPlan
Represents a plan configured in the TPA system (for example, a specific retirement or trust plan).- Example fields (from the
TpaPlanschema):_id,planName,planType,internalPlanId,pensionProId,endMm,endDd,active,directory,notes,lastModified, andstatus. - Typical operations:
- Create plans with
POST /tpa/plan/create. - Fetch or list plans with
GET /tpa/plan/getandGET /tpa/plan/list.
- Create plans with
TpaAccount
Represents an individual brokerage account associated with a plan.- Example fields (from the
TpaAccountschema):_id,planId,accountType,pensionProId,internalPlanId,provider,number,payee,active,notes,lastModified,type,status. - Usage:
- Create accounts with
POST /tpa/account/create. - Fetch or list accounts with
GET /tpa/account/getandGET /tpa/account/list. - Combined with statements and transactions, these accounts form the basis of your trust reports.
- Create accounts with
TpaStatement
Represents a parsed brokerage statement attached to a plan and account.- Example fields (from the
TpaStatementschema):_id,plan,account,planId,accountNumber,document,pageCount,planYear,periodStart,periodEnd,months,beginningBalance,endingBalance,reconciles,tx,diff,errors,confidence. - Usage:
- Attach statements to documents with
POST /tpa/statement/attach. - List statements with
GET /tpa/statement/list. - Confirm (lock) a statement with
POST /tpa/statement/confirmwhen you are ready to rely on the results.
- Attach statements to documents with
- Reporting:
- Fields such as
beginningBalance,endingBalance, andtx(TransactionSummary) are key inputs into your trust report spreadsheets.
- Fields such as
TpaTransaction
Represents a single parsed line item from a brokerage statement.- Example fields (from the
TpaTransactionschema):_id,plan,account,planId,accountNumber,statement,row,planYear,page,date,description,amount,txType,txSubType,confidence,history. - Usage:
- Retrieve transactions for a statement with
GET /tpa/transaction/list. - Create or adjust transactions with
POST /tpa/transaction/create(for example, to fix parsing errors or add missing activity).
- Retrieve transactions for a statement with
TransactionSummary and TransactionDiff
Attached toTpaStatement as tx and diff:
- TransactionSummary summarizes totals like
deposits,withdrawals,income,fees,transfers,purchases, and more. - TransactionDiff (see the API Reference) highlights differences between expected and parsed activity.
Relationships
At a high level, the relationships between entities can be visualized like this:- A TpaPlan can have multiple TpaAccount records.
- Each TpaAccount can have many TpaStatement records over time.
- Each TpaStatement has many TpaTransaction records.
- Summaries and diffs on the statement, plus the detailed transactions, feed into your trust reports.
Identifiers and references
Common identifiers you will work with:planId– identifies aTpaPlan.accountIdoraccountNumber– identifyTpaAccountrecords.statementId– identifies aTpaStatement.- Transaction identifiers and row references – identify
TpaTransactionrecords and their source rows.
- Store these IDs in your own database for linking and troubleshooting.
- Use
externalReferencefields to tie Trust Accounting data to external systems.
How this maps to the API
Across the Trust Accounting API:- Document endpoints work with uploaded files and link to TPA statements.
- TPA plan and account endpoints manage
TpaPlanandTpaAccountrecords and their IDs. - TPA statement endpoints (
/tpa/statement/*) manageTpaStatementobjects and their summaries. - TPA transaction endpoints (
/tpa/transaction/*) exposeTpaTransactiondata for each statement.