Skip to content
The ledger

Every transaction, from everywhere, in one ledger.

Manual entries, bank imports, CSV uploads, and AI-extracted documents all land in the same place: categorized automatically, routed to the right property, and searchable in seconds.

app.keystoneiq.app/finances
Search property, vendor...2,580 of 2,590 entries (10 upcoming hidden)
Property / CompanyVendorCategoryTypeAmount
Oct 19, 2026−$1,975
2814 Ocotillo Ridge RdBeacon Ridge InsuranceInsurance Accrual - October 2026InsuranceOperating−$130.00
2814 Ocotillo Ridge RdCounty Assessor's OfficeProperty Tax, Oct 2026Property TaxOperating−$325.00
594 Larimer SquareCounty Assessor's OfficeProperty Tax, Oct 2026Property TaxOperating−$600.00
+3 more on Oct 19
standard categories, the same list everywhere
29
transaction types, inferred from category
5
ways a transaction can land here
4
attach a receipt to any transaction
20 MB

Categorized the moment it lands

Pick one category and the transaction type follows automatically; anything the system isn't sure about lands as Uncategorized instead of holding anything back.

  • One category sets the type and the tax line together
  • Anything unclear posts as Uncategorized, never blocked
  • Recategorize or move it to a different property anytime
app.keystoneiq.app/finances
Cedar Creek Supply1847 Briarwood Court · Aug 1, 2026Repairs & Maintenance−$298.40
Type follows the categorySet automatically
RentIncome
Repairs & MaintenanceExpense
Roof ReplacementCapital Expenditure
Mortgage InterestDebt Service
Owner TransferTransfer

Every property, routed automatically

The property name is the routing key for every transaction, so a five-property portfolio and a fifty-property one both work the same way: one ledger, filterable to any single property.

  • Property is set once, on the entry or the source document
  • Filter to one property, or see the whole portfolio at once
  • Overhead and personal spending stay out of your portfolio totals

Manual, bank, CSV, or AI-extracted: one ledger

Type an entry by hand, connect a bank (Pro), upload a spreadsheet, or read a document with AI. Every row lands in the same table.

  • Manual entry, on every plan
  • Import a CSV or spreadsheet, on every plan
  • Bank-imported transactions post automatically once they clear (Pro)
  • AI-extracted from an invoice, statement, or a photo of a receipt

Bring your spreadsheet with you

Already tracking a property in a spreadsheet or bank export? Upload the file, tell us which column is which, and every row lands in your ledger in minutes.

  • Column names don't matter. We read them.
  • Categories matched once per value, not per row
  • Suspected duplicates flagged, never silently dropped
app.keystoneiq.app/data-processing/import-csv
✓ 4 rows found","-separatedDates look like YYYY-MM-DD
We matched your columnsCheck these look right. Change anything we got wrong.✓ All columns matched. Check below if anything's wrong.
Date requiredTransaction Date
Description requiredPayee
Amount requiredTotal
Category optionalClass
Notes optionalReference

Search, filter, and export in seconds

Search by property, vendor, or description, filter to a date range, and export exactly what you're looking at to CSV whenever you need it.

  • Search across property, vendor, and description at once
  • Filter by month, year to date, or a custom range
  • Export any filtered view to CSV

What you get

Manual entry

one category picks the type automatically

CSV / spreadsheet import

column mapping, on every plan

AI document extraction

invoices, statements, receipt photos

Uncategorized review

nothing blocked, nothing hidden

Property & entity routing

set once, filterable anytime

Search, filter & CSV export

property, vendor, description, date

Bank importPro

posts the moment a transaction clears

Receipts on any transactionPro

proof filed next to the number

Frequently asked questions

Is entering transactions manually included on the Starter plan?

Yes. Manual entry, editing, categorization, search, filtering, and CSV export are all included on every plan. Bank import and attaching a receipt to a transaction are Pro features.

What does it mean when a transaction is marked Uncategorized?

It's already counted, not held back. When the category isn't obvious, the transaction posts as Uncategorized instead of waiting in a queue, and that list is the review step: open it, pick a category, done. Nothing about your NOI or reports waits on that choice.

Can I attach a receipt to a transaction I already entered?

Yes, on Pro. Open the transaction and attach a PDF or photo up to 20 MB; it's stored the same way as the Document Vault, just linked to that exact entry. A Pro-to-Starter downgrade keeps read access to what's already attached.

Can I import my existing spreadsheet or bank export?

Yes, on every plan. Upload a CSV, tell us which column is the date, vendor, and amount (column names don't matter, we read them for you), and match any categories you use to ours once, not per row. Suspected duplicates against what's already in your ledger are flagged, never silently dropped.

How is the property assigned to a transaction?

The property name is the routing key. Set it once on a manual entry or a bank-connection destination, or let a processed document's own address determine it; every read of the ledger can then filter to one property or show the whole portfolio.

Can I get my data back out, not just look at it here?

Yes. Any filtered view of the ledger, whichever properties, categories, or date range you've selected, exports to CSV. It's the same underlying data your reports and tax package are built from.

Stop keeping two versions of your books.

One ledger for everything you type, import, or upload. Get started free to put your whole portfolio's transactions in one place.

Start free