Features

What you get with Hitt Books

Real double-entry accounting with a full A/P workflow: purchase orders, bills, vendor credits, and 1099s, plus Plaid bank sync (in sandbox beta) and a tamper-evident audit trail. Without the QuickBooks tax.

Invoicing & Receivables

18 features

Bill customers without the spreadsheet sprawl.

Estimates & quotes

Send a customer a priced estimate with the same line items, tax, and totals as an invoice, track it through draft → sent → accepted → declined → expired, then turn the accepted version into an invoice in one click. An estimate is a sales document only: it never touches your P&L, A/R aging, or payments until you convert it, and the conversion links the estimate to the invoice it created.

Line-item invoices

Invoices with line items, currency, due dates, and notes. Totals are calculated for you.

Products & Services catalog

Save the products and services you sell once, with a name, SKU, default description, price, and tax rate. Pick a saved item on any invoice or estimate line and it fills itself in, still editable per line. The Sales by Item report groups revenue by the real item, so "Consulting", "consulting ", and "Consulting - hourly" stop splitting into three rows. Deactivate an item to retire it without breaking a single historical invoice.

Customer payment terms

Assign each customer their standard terms (Due on receipt, or Net 7 / 15 / 30 / 45 / 60 / 90) and every new invoice dates itself: due date = issue date + term, with an org-wide default falling back to Net 30. The date is still yours to override on any invoice. Fewer blank due dates means A/R aging, overdue flags, and payment reminders fire on time.

Vendor payment terms

The same idea on the paying side. Give each vendor their standard terms and a new bill dates itself: due date = bill date + term, falling back to Net 30 for a vendor with no term set. Converting a purchase order picks the term up too, and a due date you type on a bill always wins. Correct due dates are what make A/P aging by vendor reliable.

Automatic invoice numbering

Set a prefix once and every invoice gets the next number in sequence, no duplicates, no gaps. The next number is allocated atomically per organization, so two teammates drafting at the same time never collide. You can still type an explicit number whenever you need to.

Invoice lifecycle

Move invoices through draft, sent, paid, overdue, and void. Status tracked throughout.

One-click payment reminders

Send a payment reminder in one click on any sent or overdue invoice. The email leads with the balance still due, the original due date, days past due, and a pay link when you have one. Each send is timestamped on the invoice so you can see when you last nudged.

Customer statements

Email every customer a statement of their account, one at a time or the whole list at month end. Pick a customer and a date range, or send to everyone who still owes you. The statement shows opening balance, every invoice, every payment, credits applied, available credit, and the closing balance, delivered to the customer's inbox. The batch run shows a dry-run preview of who will be emailed and who is skipped (no balance, no email) before you commit. Sends are manual and operator-triggered, and statements are still printable when you need paper.

Late fees on overdue invoices

Charge disclosed late fees on overdue invoices. Set a per-org policy once: percent-of-balance or flat, with a grace period, a minimum balance, and monthly-or-once frequency (a common, defensible policy is 1.5% monthly with 5-day grace). Apply the fee in one click on any overdue invoice. Each fee is recorded to its own ledger and bumps the invoice's balance due, so amount due becomes total + late fees − payments, and the accrued fee flows through your A/R aging, overdue reminders, and customer statements. Recording only; Books never auto-charges a customer.

Payments ledger

Record card, ACH, check, or cash payments with real dates and references. Track partial payments installment by installment, and get a cash-basis P&L dated to the day the money landed.

Get paid online (Stripe)

Connect your own Stripe account and generate a hosted payment page for any invoice's remaining balance. The customer pays online, the payment records itself against the invoice through the payments ledger, and when the payout lands in your bank, one click matches it to the Plaid deposit and marks it reconciled, so Stripe income is never double-booked. (Bank matching runs on Plaid, which is in sandbox beta today.)

Email invoices

Send an invoice to your customer by email straight from Hitt Books: a clean HTML invoice with line items and totals, including the Stripe pay link when you've generated one. Sending flips a draft to sent, and the status change lands in the audit log.

Shipping labels

Print shipping labels without a third-party shipping account or API key. The built-in shipping engine rates your parcel across service levels (zones plus dimensional weight), then produces a printable label with a scannable barcode and an internal tracking number.

Credit notes

Issue a credit memo and apply it to any open invoice, reducing what a customer owes without deleting history or touching cash. The invoice balance drops (and flips to paid once cash plus credits cover it), unapplied credit becomes available customer credit, and your A/R aging and statements stay honest. Every issue, apply, and void is hash-chained in the audit log; voiding restores the invoice balances it touched.

Print view

A clean, print-ready invoice view you can print or save as PDF from your browser.

Unlimited invoicing

No per-invoice fees and no caps. Invoice as much as you bill.

Recurring invoices

Define a schedule once: template invoice, frequency (weekly, monthly, quarterly, yearly), and start date. Generate each invoice on demand when it's due; the schedule tracks the next run date and creates a fresh draft you can review before sending.

Expenses, Bills & Customers

11 features

What you spent, what you owe, and who it belongs to.

Expense tracking

Log every expense with vendor, amount, date, and category, and attach the actual receipt file to it.

Receipt capture & document attachments

Attach the real receipt, vendor bill, signed W-9, or supporting schedule to the record it belongs to: expenses, bills, invoices, journal entries, vendors, and purchase orders. Upload a PDF or a phone photo (PNG, JPEG, HEIC, WebP, up to 10 MB each). Files are checked by their actual contents, not their names, and stored privately in your workspace. Viewing mints a fresh, short-lived signed link each time, so there is no permanent public URL to leak. Every upload and delete lands in the audit log, and documents on a hard-locked period can be added but never removed. IRS record retention covers documents, not only ledgers.

Purchase orders

Authorize a vendor spend up front, then turn the PO into a bill in one click. Build a purchase order with the same line items, tax, and totals as a bill, track it through draft → sent → received → closed, then convert the received version into a vendor bill with no re-keying. A purchase order is a pre-bill document only: it never touches your ledger, P&L, A/P aging, or vendor spend until you convert it, and the conversion links the PO to the bill it created.

Vendor bills (Accounts Payable)

Record a vendor bill with a due date, category, and amount; it starts open with its full balance outstanding. Pay it in full or in part (card, ACH, check, or cash) and the bill flips open → partial → paid as the balance falls, so you always know who you owe and when it's due. Backdated payments into a hard-locked period are blocked, and every bill and payment lands in the audit log.

Vendor management & 1099 tracking

Keep vendor W-9 details on file (legal name, TIN/EIN, address, and default expense category) and flag which vendors are 1099-eligible. Link bills and expenses to a vendor record so every dollar rolls up to the right payee, then generate a year-end 1099-NEC summary. Tax IDs are masked everywhere except the vendor's own detail form and are never written to logs.

Vendor credits (A/P credit memos)

Record what a supplier credits back (returned goods, a damaged-goods adjustment, an overbilling, or a post-payment rebate) and apply it to open bills. Payables and A/P aging drop automatically, and you never pay twice for goods you returned. Credits are non-cash: they lower what you owe without touching cash or inflating 1099 and vendor-spend totals. Apply part now and keep the rest as available vendor credit; the bill flips open → partial → paid as credits cover it. Every issue, apply, and void is logged, voiding restores the bill balances it touched, and backdating into a closed period is blocked.

Recurring bills

Set rent, SaaS, and payroll bills to repeat. Pick a template bill, a frequency (weekly, monthly, quarterly, yearly), and a start date, then generate each due bill on demand: vendor, category, currency, amount, and notes copy over, and the net-N due date carries forward automatically.

Built-in categories

Fourteen expense categories out of the box, including Bad Debt, so reporting stays clean. The same set categorizes your vendor bills.

Bad-debt write-off

Mark an uncollectible invoice as bad debt in one click. It drops off your A/R aging report and books the loss as a bad-debt expense on your P&L, so receivables show money you can still expect to collect. Fully reversible.

Customer records

Create and manage customers with contact and address detail.

Multiple organizations

Run separate books for multiple entities and switch between them.

Bank Sync & Reconciliation

6 features

Connect your bank and turn statements into books.

Bank LINKING is in beta. Hitt Books is currently connected to Plaid's sandbox bank network for safe end-to-end testing — real bank credentials won't work yet, only Plaid's sandbox test credentials. Production bank linking ships once we flip our Plaid account live. In the meantime CSV statement import is fully live and feeds the same review queue, bank rules and reconciliation report, so you can reconcile real transactions today. The same in-app notice appears on the banking dashboard.

Import a CSV statement

Every bank exports one. Create a manual account, upload the statement, map your columns once, and your transactions flow into the same review queue, bank rules and reconciliation report as a live bank feed. We show you a real row in plain language before anything is written (“AWS $412.00 will be recorded as money OUT”), because a silently inverted sign is the one mistake worth stopping. Duplicate rows are detected and skipped, so re-importing an overlapping statement is safe. No Plaid connection required — this is the path that works today.

Bank connections

Securely link banks through Plaid: multiple institutions and accounts per workspace, tokens encrypted at rest. In beta today on Plaid's sandbox network; real-bank linking arrives at production launch.

Automatic sync

New and changed transactions arrive automatically via Plaid webhooks, plus on-demand “Sync now”. Running on Plaid's sandbox network today (beta).

Match or convert

Reconcile to an existing expense or invoice with amount/date suggestions, or convert to a categorized expense in one step.

Bank rules

Teach Hitt Books to auto-categorize recurring transactions, or ignore internal transfers, the moment they sync. A rule matches a merchant or description (contains / equals / starts with) and either stamps an expense category and default vendor, or flags the transaction ignored. Rules run automatically at sync and on demand against the current queue, take precedence over the generic Plaid guess, and are ordered by priority so the first match wins. Create one from any transaction in the feed: “always categorize AWS as Software.” Rules only touch unreviewed items, so a decision you already made is never overwritten, and every rule change and bulk apply is logged.

Review queue

Unreviewed, reconciled, and ignored states in a searchable, paginated feed, with a dashboard nudge when items await review.

Reporting & Controls

27 features

Books that hold up when someone looks closely.

Job costing & project profitability

Tag any invoice, bill or expense to a job or contract, then see what each one actually earned and cost. The Profit & Loss by Project report gives you revenue, cost, gross margin and margin % per job on a cash or accrual basis for any date range, plus an actual-vs-estimate variance when you set a budget. Click a project total and you get the exact transactions behind it. Tagging is optional — an untagged transaction behaves exactly as it always has. Direct costs only: allocated indirect pools are not included.

Comparative Profit & Loss

Cash and accrual P&L generated straight from your invoices and expenses. Set this period next to the prior period or the same period last year, with dollar and % variance on every line.

Budget vs. Actual

Set an annual budget by expense category and a revenue target, then read your real numbers next to plan, with dollar and % variance on every line, computed from the same P&L engine on your cash or accrual basis.

Cash Flow Statement

Real cash in versus cash out, month by month, dated to when the money moved, with a running cumulative balance and breakdowns by payment method and expense category.

Cash Runway & Burn Rate

How many months of cash you have left. Books computes gross and net burn from your reconciled cash activity and divides into your cash on hand, so runway stays current as transactions post. No spreadsheet to rebuild each month.

13-Week Cash Flow Forecast

Your projected bank balance week by week for the next quarter. Starting from today's cash on hand, each week adds open invoices due, subtracts open bills and recurring items, and carries the balance forward; the first week you'd run dry is flagged in red. Built live from your invoices, bills, and bank balances, and it updates as customers pay and bills come due.

Live stats

Revenue, expenses, net, and cash on hand from your recorded books, on the dashboard.

CAC & unit economics

If you also run Hitt CRM, Books joins the cost side it owns (marketing-category spend) with the customer side the CRM owns (deals won, contacts acquired, open pipeline) into one customer-acquisition-cost view: CAC per customer for any date range, read-only across products.

Accounting periods

Open and close periods to keep finalized months stable.

Tamper-evident audit log

Every change is hash-chained; one click cryptographically verifies the entire history is unaltered.

Inventory & cost of goods sold

Turn on stock tracking for any product and Books keeps its quantity on hand and weighted-average unit cost from a real, append-only movement ledger. Receiving on a purchase order debits Inventory; selling it posts Dr Cost of Goods Sold / Cr Inventory at that average alongside the revenue entry. So Inventory finally appears on your balance sheet, the Inventory Valuation report ties to it to the cent, and gross margin is computed from posted COGS instead of a number you typed in. Low-stock flags at your reorder point, negative stock shown rather than hidden, voided invoices reversed rather than deleted, and adjustments refused inside a locked period.

P&L ratio calculator

Model gross margin, operating margin, expense ratio and break-even revenue from any revenue / COGS / operating-expense figures. If you track inventory, your real COGS is already posted and the P&L computes gross profit from it — this is for the what-ifs.

Income by Customer

Which customers drive your revenue, ranked by dollars and % of total, on a cash or accrual basis for any date range.

Sales by Item / Service

Revenue grouped by invoice line item, ranked by dollars, with quantity, average price, and % of total, on a cash or accrual basis for any date range.

Sales Tax Liability & Remittances

How much sales tax you've collected by state and period, and a place to record what you filed and paid. Collected, remitted, and net still owed sit side by side, and the remittance draws your Sales Tax Payable back down across the Trial Balance, Balance Sheet, and General Ledger instead of letting it grow forever.

Vendor Spend & 1099 Summary

Total paid to every vendor for the year, counting both direct expenses and paid vendor bills (Accounts Payable), split per vendor, with flags for who crosses the $600 1099-NEC threshold. Bills count by payment date, so a contractor you paid through A/P never falls off the report and an unpaid bill never inflates it.

Year-end 1099-NEC report

A filing-ready 1099 summary built from your vendor master: pick a tax year and it totals every payment to each 1099-eligible vendor (expenses + paid bills, by payment date), flags who crosses the $600 threshold, warns when a contractor over the threshold has no W-9 on file, and exports a clean CSV for your accountant. Vendors with no payments that year drop off, and tax IDs export masked.

A/R Aging by Customer

Who owes you, and how late. Every customer with an open balance, broken out across current / 1–30 / 31–60 / 61–90 / 90+ buckets, ranked by total owed, so you can work the 90+ bucket first.

A/P Aging by Vendor

The payables mirror: every vendor with an open bill balance, broken out across the same buckets by due date, ranked by total owed. Partial bills show their open balance; paid bills drop off.

Balance Sheet

A point-in-time snapshot of what you own and owe as of any date. Liabilities include Accounts Payable from your open vendor bills (the same rule as A/P Aging and the Trial Balance, so the three agree line for line), less any unapplied vendor credits, plus loans payable and accrued liabilities from your posted journal entries. Assets pick up prepaid expenses the same way. The current ratio divides by that real liability total, so a below-1.0 warning means something.

Trial Balance

One report that proves your books add up: debits equal credits, at any date. Every account (Cash, A/R, A/P, Sales Tax Payable, Revenue, Expenses by category, and Retained Earnings) laid out in a two-column Debit / Credit ledger that must net to zero, on a cash or accrual basis. Posted journal entries are in it too: depreciation, accruals, prepaid amortization, fixed assets, loans, and owner equity each get their own line instead of vanishing into Retained Earnings. Cash, A/R, A/P, and Sales Tax Payable tie out exactly to your Balance Sheet, so the numbers agree across every statement. A green "Balanced" badge and a printable page for your accountant.

General Ledger

Drill from any account total straight to the transactions behind it. Every account (Revenue, Accounts Receivable, Accounts Payable, Sales Tax Payable, Cash, and Expenses by category) lists its individual invoices, payments, expenses, and bills with a running balance and a per-account subtotal, on a cash or accrual basis for any date range. Every line of a posted journal entry shows up as its own row under its account, labelled with the entry memo, so a month’s depreciation or a payroll accrual is as traceable as an invoice. Subtotals tie out exactly to your Trial Balance: "Software $4,210" is one click from the rows that make it up. Export one row per transaction to CSV for your accountant.

Manual journal entries

Real double-entry adjusting and opening-balance journals: book depreciation, accruals, prepaid amortization, payroll accruals, and owner equity (capital contributions and draws) so your Balance Sheet reflects the whole business. Pick from a built-in account list, add two or more lines, and a live balance indicator turns green only when debits equal credits; the entry can't post until it balances. Adjusting, opening-balance, reclass, and general types. Backdating into a closed period is blocked, and every post and void is hash-chained in the audit log.

Recurring journal entries

Define your month-end prepaid amortization, rent and payroll accruals, and standing reclasses once, instead of re-typing the same debits and credits every close. Point a schedule at an existing entry, pick weekly/monthly/quarterly/yearly and an interval, and Hitt Books tracks the next run date. "Generate due entries" clones every schedule that has come due into a fresh balanced draft dated today, with the same accounts and amounts. Deliberately a draft, never an auto-post: you review and post each one yourself, so the debits-equal-credits check and the closed-period lock apply exactly as they do to a hand-typed entry. Pause, resume, or end a schedule any time; the template entry cannot be deleted while a schedule still points at it.

Fixed assets & depreciation

Record an asset once (cost, salvage value, useful life) and Books computes the whole straight-line schedule, posting each month's depreciation as a real, balanced journal entry: debit Depreciation Expense, credit Accumulated Depreciation, dated the period end. The per-asset schedule shows every period's charge, the running accumulated total, and remaining net book value, marking which periods are already posted and linking to the entry. The final period absorbs any rounding, so the asset lands on exactly its salvage value. Your Balance Sheet shows fixed assets at cost, accumulated depreciation, and net book value, and monthly P&L stops omitting a real non-cash expense. Tell Books how you paid (cash, a loan, or your own money) and it books the acquisition entry too; disposing of the asset posts the derecognition entry that takes it back off. Posting is idempotent, and a hard-locked period is skipped and reported, never quietly posted into.

Bank Reconciliation Report

Enter your statement's ending date and balance and tie cash to the penny: cleared balance, outstanding items, and a difference that must be $0.00, with a transposition-error hint when it isn't. A printable reconciliation you can keep for audit. An unexplained difference is surfaced for you to investigate, never papered over with a plug entry.

Export any report to CSV

Download Vendor Spend, A/R Aging, Income by Customer, Sales by Item, Sales Tax, and Budget vs. Actual as a clean CSV, respecting the date range and filters on screen. Opens cleanly in Excel and Google Sheets.

Access, Trust & Pricing

6 features

The way software should be sold.

Team roles

Owner, admin, accountant, employee, and viewer, scoped per organization.

Email team invites

Invite a teammate by email with a role attached; they don't need an existing account. The invite link signs them up and drops them into your organization with the right permissions.

API keys

Mint server-to-server API keys for integrations and scripts. Each key is bound to one organization, carries its own role, and is stored hashed. The same org-owner entitlement and role checks apply to key calls as to signed-in users.

Org-isolated data

Every record is isolated to its organization, enforced server-side.

Honest flat pricing

Published per-month tiers. No enterprise sales call.

Cancel any time

Month to month, no lock-in. Cancel from your billing settings.

Customer Statement Export

Available now

One-click monthly customer statements: pick a customer and date range, get a printable view with opening balance, every invoice and payment in the period, and closing balance. Generate yours in the statement view. Included on Pro and Business.

Invoice Aging Report

Available now

A real A/R aging report. Open invoices are bucketed into current, 1–30, 31–60, 61–90, and 90+ days past due, with totals per bucket, the single worst overdue customer, and a green / yellow / red collection posture. View it at /dashboard/invoice-aging. When you need to know who is in the 90+ bucket, the A/R Aging Summary by Customer report breaks the same numbers out one row per customer, ranked by total owed, sortable by oldest bucket, and it ties to the penny against the org-wide total. Included on Pro and Business.

Stop running the business out of a spreadsheet.

Start a free Books account. Add a customer, send an invoice, and see it land in the ledger.