Form 1120 · line by line
Years across the columns, as in the extractor's own report. Empty cells mean the line was not found on the return.
Projection
Shaded columns are projected. Type over any projected cell to override it — overrides stay in this browser.
No indicator selected.
Use the Indicators selector above to choose what to display.
This company has no data in this domain yet.
Import Form 1120 Returns
Each PDF is one tax year. The year comes from the return itself (“For calendar year XXXX”), with the filename as a fallback — so upload order does not matter.
…or import a whole folder
One subfolder per company, that company’s returns inside — the folder name is the company. The PDFs are read where they are and left untouched.
Result by file
Run log
Import from QuickBooks Desktop
Pulls the monthly Balance Sheet and P&L straight from
QuickBooks over its SDK (via qb-reports' qbfin)
and maps them onto monthly indicators.
Each company file is opened headless, so a QuickBooks you have open must be closed. Leftover background QuickBooks processes from an earlier run are cleared automatically.
Imported indicators
Run log
Import from QuickBooks Online
Not available yet.
qb-reports' qbfin.qbo module already parses QBO's
Report API into the same shape as the Desktop connector, so this page
would plug into the same import pipeline as QB Desktop — the missing
piece is the OAuth connection itself (authorizing an Intuit app,
storing and refreshing a per-company token, and a UI for that flow).
Ask to have this built out once you can confirm which Intuit app credentials and OAuth redirect this should use.
Import from the Excel Data Room
Reads the Balance Sheet and P&L tabs straight out of CuboStart’s own historic-financials archive — one exported workbook per company per month. Files are read where they sit and never copied or moved. A period a live QuickBooks connection already covers is left alone; this backfills the gaps QuickBooks does not.
Result by company
Run log
Push to a Remote Deployment
Reads this database and sends it to a Docker or AWS deployment's
Sync API — the same one-way write path a remote target's own
importers never get, since none run there. Nothing here runs on
a schedule; every push is started by hand, right here or from
scripts/local_sync_push.py.