workflows

Transaction categorization

Why categorizing imported bank transactions powers every other insight.

Every transaction imported from a bank feed lands in Harmoneya uncategorized. Picking a category — Revenue, Expense, Tax, Transfer — is what makes it count toward your insights.

Why the categories matter

The dashboard, runway, profit margin, expenses-by-category, and tax estimation widgets all read only categorized transactions. Uncategorized ones sit in limbo: they show up in the transactions list, but they’re invisible to every aggregate view.

This is by design — guessing categories without your confirmation would corrupt your books. We suggest categories where we can (via the AI categorization preview in chat, or via past patterns on similar merchants), but the actual write is always your call.

How to categorize quickly

The Transactions list is built around batch categorization:

  • Click any row to open the edit sheet.
  • Set a category, link an invoice (if it’s a payment), and save — all in one sheet.
  • Sort by status: uncategorized rows surface to the top of each page.
  • Use the chat: ask “categorize this month’s transactions” and confirm the previewed batch.

What each category means

  • Revenue — money in, from clients or other income sources. Counts toward MRR, ARR, runway’s monthly-revenue side, and profit margin’s revenue side.
  • Expense — money out. Counts toward burn rate, profit margin’s expense side, and the expenses-by-category breakdown. Sub-categorize via tags (Marketing, Tooling, Travel…) so the breakdown actually breaks down.
  • Tax — payments to a tax authority. Excluded from expense-side margins (those would understate profitability); show up separately in the tax estimation YTD totals.
  • Transfer — moves between accounts you own. Excluded from everything. Useful when bank feeds surface internal transfers as “transactions” that aren’t really economic activity.

A keep-up cadence that scales

If you process invoices through a few clients each month, weekly categorization is plenty. If you process many — or your bank feed is noisy — a 15-minute daily pass keeps everything aligned without dread accumulating into a multi-hour catch-up session.