Concepts
A book is a container for one deal one or more documents that get parsed together. Books have aparse_status that progresses through:
Documents can be bank statements, credit reports, tax forms, or loan applications. The book API returns different output shapes depending on which document types were parsed.
Submit a book
book_id immediately.
One or more PDF files. Pathway auto-classifies each file as bank statement, credit report, tax form, or loan application.
Name for the book.
Optional description.
If provided, Pathway will POST to this URL when parsing completes. If omitted, poll
GET /books/:id.webhook_url when done)
Get a book
Book object parse status, name, timestamps, and book_meta.
book_meta keys
For computed analytics, use
/analytics and /tax-analytics rather than reading raw book_meta.
Bank statement analytics
BookAnalytics computed metrics across all bank statements in the book. Applies your org’s exclusion config (excluded documents, excluded accounts, excluded positions, revenue exclusion tags) before computing.
This is the primary endpoint for underwriting data.
statements[] per-document breakdown
All documents appear in this array, including excluded ones. Excluded documents will still show their statement_period and document_name, but their metrics are zeroed. Filter by excluded_document_ids from book_meta if you want to exclude them.
Each statement has document_id, document_name, statement_start_date, statement_end_date, statement_period, and an accounts[] array. Each account has:
loan_summary[] loan type rollup
average_statement_metrics average row across all statements
An AccountStatementMetrics object representing the per-statement average. Same fields as the per-account table above. Used for the Average row in CSV exports.
positions[] detected debt positions
Each position is a group of transactions the parser identified as belonging to the same loan or MCA.
merged_accounts transaction-level data
Keyed by account number. Each account has a transactions[] array. Each transaction:
Transaction tags
Tags classify what a transaction represents. Revenue computation excludes all tags in
revenue_exclusion_tags.
Tag-based aggregate fields on
BookAnalytics:
The
nsf_overdraft tag is a single tag applied to transactions. The aggregate splits into nsf_total and overdraft_total at the metrics level.Bank statement detailed view
/analytics:
- Organized by account first, then statements under each account (vs
/analyticswhich groups by document first) - Does not apply org-level exclusions — all documents and accounts are included
- Includes
daily_balances(a full{"YYYY-MM-DD": balance}map for every day in the period) andfunders[](per-lender activity within that statement)
SimpleAccount fields
SimpleStatement fields
SimpleFunder fields (inside funders[])
Each entry represents one detected loan or MCA position and its activity within this specific statement month.
Credit report data
book_meta from GET /books/:id. Access it at book["book_meta"]["parser_v2_credit_report"].
CRMeta shape (inside book_meta.parser_v2_credit_report):
current, delinquent, charged_off, collection, bankruptcy, foreclosure, repossession, settled, closed, unknown
Account type values: revolving, installment, mortgage, charge, other
Collateral type values: unsecured, real_estate, vehicle, cash_deposit, education
Tax form analytics
TaxCashFlowAnalysis Fannie Mae 1084-style qualifying income computation from parsed 1040, Schedule C, 1065, and 1120S forms.
TaxCashFlowAnalysis fields
TaxYearAnalysis per year
Export as CSV
/analytics).
month_as_row one row per statement period per account (default).month_as_col metrics as rows, months as columns (pivoted). Uses the combined account (account_id=0) per statement.Export as Excel
.xlsx file using your org’s configured spreadsheet template.
mca bank statements. vlad credit reports. tax tax forms.