Skip to navigation

The Balance Sheet object

An extracted balance sheet.

The retrieve endpoint returns this object on its own. The list endpoint returns one per document, wrapped as { "borrower_id": …, "statements": [ { "extracted_document_id", "document_category", "report_data" } ] }.

balance_sheet carries the statement’s rows as a labeled tree in the document’s own grouping, sections the same content flattened by side, and periods the statement’s columns with their as_of dates. cpa_engagement states the engagement level the statement was prepared under (0 none, 1 compiled or prepared, 2 reviewed, 3 audited), with cpa_engagement_label as its display string.

The documents behind this object carry document_category balance_sheet, balance_sheet_platform, balance_sheet_single, balance_sheet_dual, comparative_balance_sheet, balance_sheet_multi, monthly_balance_sheet, quarterly_balance_sheet or trend_balance_sheet. Money keys are JSON strings with exactly two decimals ("9200000.00", "-1250.50"). Date keys are as printed on the document unless a key’s Type column states a format.

Fields

KeyTypePresent whenDescription
document_typealways balance_sheetAlwaysWhich family of document this is.
entitystring, nullableWhen the document states itThe reporting entity’s name as printed.
entity_sourcestringWhen the document states itWhat names the entity when the statement’s own page does not: the page image (page_image), the filing’s cover page (filing_cover), or the opening pages of the financial statement packet the statement arrived in (packet_text); absent when the statement’s own page names it.
entity_source_sheetstringOn a spreadsheet upload whose own sheet does not name the company, when the workbook names exactly one company; absent otherwise.The sheet of the uploaded workbook that names the company, when this statement’s own sheet does not and the workbook names exactly one company; absent otherwise.
periodsarray of objectsAlwaysThe statement’s columns, one entry per period, newest first.
period_countintegerAlwaysNumber of period columns.
billing_yearsintegerAlwaysYears of data billed: the distinct years among columns that print a non-zero figure; 0 when no column prints one (such a document is not billed).
as_of_yearinteger, nullableWhen the document states itThe year of the latest period, when the document states one.
reporting_unitstring, one of ones, thousands, millions, billionsOn a profit and loss, balance sheet or cash flow statement; absent on an older extraction.The unit the figures are printed in; on the wire the figures are already whole dollars.
scale_multiplierintegerOn a profit and loss, balance sheet or cash flow statement; absent on an older extraction.Scale of the printed figures: 1 for whole dollars, 1000 when the statement is stated in thousands, 1000000 when it is stated in millions, 1000000000 when it is stated in billions.
unit_exceptionsarray of stringOn a profit and loss, balance sheet or cash flow statement; absent on an older extraction.The carve-outs the statement’s unit declaration lists, such as per share amounts, whose lines and columns keep their printed figures; empty when it lists none.
unit_sourcestring, one of printed, noneOn a profit and loss, balance sheet or cash flow statement; absent on an older extraction.Where the statement states its unit: printed when the statement header, a column header or a heading line prints it; none when nothing is printed and the figures are whole dollars as printed.
balance_sheetarray of BalanceSheetRowAlwaysThe printed lines as a tree: section headings, their lines, and subtotals.
receivable_allowancesarray of objectsOn a balance sheet whose receivables caption states its allowance; absent otherwise.The allowance each receivables line states in its own caption, when a caption states one.
totalsobjectWhen the document states itThe headline totals per period, the totals the balance check used, and whether each of those is printed.
total_assetsstring (money), nullableAlwaysTotal assets for the latest period.
total_liabilitiesstring (money), nullableAlwaysTotal liabilities for the latest period.
total_mezzanine_equitystring (money), nullableWhen the document states itMezzanine equity for the latest period: the lines the statement prints between its liabilities and its equity, such as a redeemable noncontrolling interest or redeemable preferred stock, which are in neither total liabilities nor total equity. Null when the latest period prints none.
total_equitystring (money), nullableAlwaysTotal equity for the latest period.
total_liabilities_and_equitystring (money), nullableAlwaysTotal liabilities and equity for the latest period.
sectionsarray of objectsAlwaysThe printed lines grouped by section, with subtotals marked.
statusstring, one of RECONCILED, FLAGGEDAlwaysRECONCILED when total assets equal total liabilities and equity in every period; FLAGGED otherwise.
signalsarray of objectsWhen the document states itNotes about the statement’s reporting period, when any.
period_sourcestringWhen the document states itWhich part of the document dates the periods when the column headers state no date: the date the statement was printed on (print_stamp), a year a column prints alone (year_only, the period being that year’s end), the page image (page_image), the file’s name (filename) or the file’s own creation date (file_metadata); absent when the column headers date the periods.
canonicalobjectWhen the document states itThe printed lines mapped onto standard line names.
cpa_engagementintegerWhen the document states itThe accountant’s level of assurance: 0 unaudited, 1 compiled, 2 reviewed, 3 audited.
cpa_engagement_labelstringWhen the document states itThe assurance level in words.
presentationstring, one of formal, free_formOn a profit and loss, balance sheet or cash flow statement (a spreadsheet upload reads free_form); absent on an older extraction.How the statement is presented: formal when it is presented as issued financial statements (a CPA engagement stated, a reference to the notes to the financial statements, a per-share block, the supplemental cash flow disclosures, the preparation legend that no assurance is provided, a plural statement title such as balance sheets or statements of income, or a statement of changes in equity or plural statement titles in the packet it arrived in); free_form when it is a report out of the books (accounting software or a spreadsheet).
packetobjectWhen the document states itWhere the statement sat in the financial statement packet it arrived in, when it arrived in one.
summaryobjectOn the single-document read, when at least one summary row matches a printed line; not on the list or the untyped reads.The statement’s headline figures by section, on the single-document read.

periods[]

One period column.

KeyTypePresent whenDescription
labelstring, nullableAlwaysThe column header as printed; null when the column prints none.
as_ofstring (as printed), nullableAlwaysThe period’s as-of date, when the header states one.
inferredbooleanAlwaysTrue when the document prints no header for the period.

receivable_allowances[]

The allowance a receivables line states in its own caption.

KeyTypePresent whenDescription
labelstringAlwaysThe receivables line’s label as printed.
pathstringAlwaysThe receivables line’s address in the tree.
allowance_labelstringAlwaysThe allowance in words, for example Less allowance for credit losses.
valuesarray of string (money) or nullAlwaysThe allowance per period; null where the caption states none for the period.

totals

The headline totals per period, the totals the balance check used, and whether each of those is printed.

KeyTypePresent whenDescription
TOTAL_ASSETSarray of string (money) or null, nullableWhen the document states itTotal assets per period as printed; null when the statement prints no such line.
TOTAL_LIABILITIESarray of string (money) or null, nullableWhen the document states itTotal liabilities per period as printed; null when the statement prints no such line.
TOTAL_MEZZANINE_EQUITYarray of string (money) or null, nullableWhen the document states itMezzanine equity per period as printed: the one line the statement prints between its liabilities and its equity, or the total it prints over several such lines; null when it prints several lines and no total over them.
TOTAL_EQUITYarray of string (money) or null, nullableWhen the document states itTotal equity per period as printed; null when the statement prints no such line.
TOTAL_LIABILITIES_AND_EQUITYarray of string (money) or null, nullableWhen the document states itTotal liabilities and equity per period as printed; null when the statement prints no such line.
effectiveobjectWhen the document states itThe totals the balance check used.
srcobjectWhen the document states itWhether each total the balance check used is printed.

totals.effective

The totals the balance check used.

KeyTypePresent whenDescription
TOTAL_ASSETSarray of string (money) or null, nullableWhen the document states itTotal assets per period used by the balance check: the printed total when the statement prints one, else the total its own figures give; null when neither exists.
TOTAL_LIABILITIESarray of string (money) or null, nullableWhen the document states itTotal liabilities per period used by the balance check: the printed total when the statement prints one, else the total its own figures give; null when neither exists.
TOTAL_MEZZANINE_EQUITYarray of string (money) or null, nullableWhen the document states itMezzanine equity per period used by the balance check: the printed figure when the statement prints one, else the total of the mezzanine lines it prints; null in a period that prints none.
TOTAL_EQUITYarray of string (money) or null, nullableWhen the document states itTotal equity per period used by the balance check: the printed total when the statement prints one, else the total its own figures give; null when neither exists.
TOTAL_LIABILITIES_AND_EQUITYarray of string (money) or null, nullableWhen the document states itTotal liabilities and equity per period used by the balance check: the printed total when the statement prints one, else the total its own figures give; null when neither exists.

totals.src

Whether each total the balance check used is printed.

KeyTypePresent whenDescription
TOTAL_ASSETSstring, nullableWhen the document states itprinted when the statement prints a total assets line, derived otherwise; null when the balance check had no such total.
TOTAL_LIABILITIESstring, nullableWhen the document states itprinted when the statement prints a total liabilities line, derived otherwise; null when the balance check had no such total.
TOTAL_MEZZANINE_EQUITYstring, nullableWhen the document states itprinted when the statement prints its mezzanine equity as one line or as a total over several lines, derived when it prints several lines and no total over them.
TOTAL_EQUITYstring, nullableWhen the document states itprinted when the statement prints a total equity line, derived otherwise; null when the balance check had no such total.
TOTAL_LIABILITIES_AND_EQUITYstring, nullableWhen the document states itprinted when the statement prints a total liabilities and equity line, derived otherwise; null when the balance check had no such total.

sections[]

One section of the statement.

KeyTypePresent whenDescription
namestringAlwaysThe section heading as printed.
sidestring, one of assets, liabilities, equityAlwaysOne of assets, liabilities or equity.
itemsarray of objectsAlwaysThe section’s lines in print order.

sections[].items[]

One line of a section.

KeyTypePresent whenDescription
labelstringAlwaysThe line’s name.
valuestring (money), nullableAlwaysThe line’s figure for the latest period.
is_subtotalbooleanAlwaysTrue when the line is a printed subtotal.

signals[]

A note about the statement’s reporting period.

KeyTypePresent whenDescription
severitystring, one of info, warnAlwaysHow much weight the note carries: info or warn.
codestring, one of coverage_unreadable, no_reporting_period, year_from_file_metadata, year_from_filename, year_from_page_image, year_matches_print_stampAlwaysThe note’s identifier.
detailstringAlwaysThe note in words.

canonical

The printed lines mapped onto standard line names.

KeyTypePresent whenDescription
schema_versionstring, nullableAlwaysVersion of the standard line vocabulary the names come from.
statementstringAlwaysWhich statement vocabulary applies: balance_sheet, income_statement or cash_flow.
rowsarray of objectsAlwaysOne entry per printed line, in print order.
blocksarray of objectsAlwaysOne entry per printed subtotal and the lines that foot into it.
gatesobjectAlwaysSummary verdicts over the whole statement.
entity_signalstring, nullableAlwaysA note about the entity the statement belongs to, when the line names carry one.

canonical.rows[]

One printed line and the standard line name it corresponds to.

KeyTypePresent whenDescription
keystringAlwaysAddress of the printed line within the statement.
raw_labelstring, nullableAlwaysThe line’s label as printed.
concept_idstring, nullableAlwaysThe standard line name the printed label corresponds to, or null when it corresponds to none.
methodstring, one of exact, fuzzy, keyword, structural, reconciledAlwaysHow closely the printed label matches the standard name: exact, fuzzy, structural, or reconciled when it matches none.
blockstring, nullableAlwaysThe subtotal block the line belongs to, when it belongs to one.
parent_concept_idstring, nullableAlwaysThe standard name of the subtotal the line foots into, when it foots into one.

canonical.blocks[]

A printed subtotal and whether its lines foot into it.

KeyTypePresent whenDescription
idstringAlwaysAddress of the subtotal’s printed line.
parent_concept_idstring, nullableAlwaysThe standard name of the subtotal, when it corresponds to one.
footingstringAlwaysWhether the lines above the subtotal add up to it: pass, fail or not_applicable.

canonical.gates

Summary verdicts over the whole statement.

KeyTypePresent whenDescription
identitystringAlwaysWhether total assets equal total liabilities plus equity on every column: pass, fail or not_applicable.
classified_footingstringAlwaysWhether the current and noncurrent subtotals foot: pass, fail or not_applicable.
blocks_failedintegerAlwaysNumber of printed subtotals whose lines do not add up to them.

packet

Where the statement sat in the financial statement packet it arrived in, when it arrived in one.

KeyTypePresent whenDescription
section_indexintegerAlwaysPosition of the statement among the packet’s statements, counting from zero.
pagesarray of integerAlwaysFirst and last page of the statement within the packet, counting from one.
letter_datestring (YYYY-MM-DD), nullableAlwaysDate of the accountant’s letter that accompanied the packet, when the letter printed one.
letter_pageinteger, nullableAlwaysPage of the packet the accountant’s letter is on, when the packet carries one.
page_listarray of integerOn a statement whose pages in the packet are not one unbroken run; absent otherwise.Every page of the packet the statement is printed on, counting from one, when they are not one unbroken run; absent otherwise.

summary

The statement’s headline figures by section, on the single-document read.

KeyTypePresent whenDescription
titlestringAlwaysThe period the rows cover, as a heading.
sectionsarray of objectsAlwaysThe row blocks, in display order.

summary.sections[]

A block of headline rows under one heading.

KeyTypePresent whenDescription
keystringAlwaysThe block’s identifier, for example assets, liabilities or pl.
headingstring, nullableAlwaysThe block’s heading, or null when the block has none.
rowsarray of objectsAlwaysThe rows of the block, in display order.

summary.sections[].rows[]

One headline figure and the printed line it names.

KeyTypePresent whenDescription
keystringAlwaysThe row’s identifier, for example revenue, cash or total_assets.
labelstringAlwaysThe row’s wording as displayed.
valuestring (money), nullableAlwaysThe figure in dollars, or null when the printed line carries no figure.
aggregatedbooleanWhen the document states itTrue when the figure combines more than one printed line rather than reading a single printed cell.
emphasisbooleanWhen the document states itTrue on a section total or a bottom line.
depthintegerWhen the document states itIndentation of the row beneath the row above it, counting from zero.
pinnedbooleanWhen the document states itTrue on a row that stays in view when its section is collapsed.

Shared objects

Object types that several keys above carry. The Type column names them.

BalanceSheetRow

One printed line, with the lines nested under it when it heads a section.

KeyTypePresent whenDescription
labelstringAlwaysThe line’s name: its printed label without the figures and detail the label states, which are in caption, footnote and components.
valuesarray of string (money) or null, nullableAlwaysThe line’s figure per period; null where the column is blank, and null as a whole for a heading with no figures.
pathstringAlwaysThe line’s address in the tree.
childrenarray of BalanceSheetRowAlwaysThe lines nested under this one.
captionstringOn a line whose printed label says more than its name; absent otherwise.The line’s label exactly as printed, present when it states more than the name.
footnotestringOn a line whose printed label states detail beyond its name; absent otherwise.What the printed label states beyond the line’s name, such as a par value or share counts, as printed.
componentsarray of objectsOn a line whose printed label states an amount it is net of; absent otherwise.Present when the printed label states an amount the line is net of: the line before that deduction, then the deduction.

BalanceSheetRow.components[]

One figure a net line’s label states.

KeyTypePresent whenDescription
rolestring, one of gross, deductionAlwaysgross for the line before the deduction (the line’s figure and the deduction added together), deduction for the amount the label states.
labelstringAlwaysThe figure’s name.
valuesarray of string (money) or nullAlwaysThe figure per period; null where the label states none for the period.