Octavia Guides

Knowledge Base

Browse step-by-step guides for every part of Octavia, with clear navigation and search to help you find what you need fast.

Bank Reconciliation

Bank reconciliation lets you upload a CSV export from your bank and match incoming transfers to the invoices they paid. Octavia recognises the columns, proposes matches, and asks you to confirm — nothing is recorded unti

What Bank Reconciliation Is

If families pay you by bank transfer, you would normally open each invoice and record the payment yourself. Bank reconciliation does that work in bulk: you export a statement from your bank as a CSV, upload it, and Octavia lines the incoming transfers up against your unpaid invoices so you can confirm them in one pass.

It is built specifically for reconciling invoice payments. It is not a general accounting import — it only handles CSV files (not PDF or other bank formats), and it is for matching money that pays invoices, not for importing every type of business income.

Finding Bank Reconciliation

Go to Money → Reconciliation in the sidebar. The workspace has three tabs:

TabWhat it's for
Import a new CSVUpload a bank statement and set up the column mapping
Review importsWork through proposed matches and confirm payments
All imported transactionsA running audit view of every bank row you've imported

If you leave a CSV part-way through setting it up, the first tab reads Continue new CSV draft when you come back, and your work is restored so you can pick up where you left off.

Step 1: Upload Your Bank CSV

On the Import a new CSV tab, choose your CSV file. Octavia parses it straight away and tries to recognise the likely date, amount, description, and reference columns for you. A summary panel — What Octavia recognised — tells you what it found and whether it still needs help with anything.

Most of the time the columns are detected correctly and you can move on. You only need to step in if something looks wrong.

Step 2: Check the Column Mapping

If detection is uncertain, the visual mapping section lets you tell Octavia which column is which. It supports both common statement layouts:

  • A single signed amount column (positive for money in, negative for money out), or
  • Separate debit and credit columns.

Advanced options let you set the date format and the rule Octavia uses to decide which transactions are incoming money. Debits (money going out) are hidden by default in the later review, since they don't pay invoices — you can show them again if you need to.

Step 3: Save an Import Profile (Optional)

Once you have a mapping that works for your bank, you can save it as a reusable import profile so you don't have to set it up again next time. Profiles are saved for your studio; you can select a saved profile, update it, or delete one you no longer need.

Step 4: Preview the Rows

Before anything is imported, Octavia shows a normalized preview of the rows it will bring in, along with how many are valid. If some rows have dates or amounts it can't read, it tells you so you can fix the mapping first. Credits and debits are distinguishable in the preview so you can see what will and won't be treated as incoming money.

Step 5: Review the Proposed Matches

When you import, Octavia runs a first-pass match against your unpaid invoices and sorts each row into a review state. It deliberately leans towards asking you to review rather than confirming things automatically.

StateWhat it means
MatchedOctavia is confident this row pays a specific invoice
Needs reviewThere's a likely invoice, but it wants you to check before confirming
UnmatchedNo confident invoice was found — you can find one manually
IgnoredYou've set this row aside
Matched manuallyYou chose the invoice yourself
Already importedThis exact bank row was confirmed in an earlier import (see Duplicate protection below)

Octavia looks at signals such as the amount, and any invoice number, family name, or reference that appears in the bank transaction text. Matching is rule-based, not a guess — which is why it hands borderline cases to you rather than acting on them.

Step 6: Confirm, Reassign, or Set Each Row Aside

Each row in the review table shows the bank transaction on one side, the matched invoice on the other, and an action for you to take. For each row you can:

  • Confirm — record the payment against the shown invoice.
  • Choose invoice — browse your unpaid invoices and pick the right one yourself (useful for Needs review and Unmatched rows).
  • View invoice — open the invoice detail to check it before confirming.
  • Ignore or Skip — set the row aside without recording anything.
  • Add a note for your own reference.

If you assigned an invoice manually and change your mind, you can clear the manual invoice and start again.

What Happens When You Confirm

Confirming a row records a real payment. Octavia:

  • Creates a bank-transfer payment against the invoice for the confirmed amount.
  • Stores the bank reference so you can see where the payment came from.
  • Updates the invoice's balance and status, exactly as a manually recorded payment would.

Confirmed rows show a Payment recorded marker in the review table. Nothing about the underlying invoice works differently — a reconciled payment is just a normal payment that happened to come from your bank statement.

Partial Payments

If a bank transfer is smaller than the invoice it pays, Octavia asks you to confirm a partial payment. It records what came in now and leaves the rest still owing. You can reconcile further transfers against the same invoice later, as separate rows, until it's fully paid.

If another row you've already selected has claimed the remaining balance on an invoice, Octavia warns you so two rows don't try to pay more than the invoice is worth.

Overpayments

If a transfer is larger than the invoice balance, Octavia offers an overpayment path: it pays the invoice in full and creates a stored account credit for the remainder, held against the student or family. You approve this before it happens. See Account Credits for how that stored value is then used.

When One Payment Covers Several Invoices

A family will sometimes send a single transfer to cover more than one invoice at once — for example, several siblings' invoices, or a few overdue ones. A single bank row can't be split across multiple invoices directly, so handle it like this:

  1. In reconciliation, confirm the bank row against the largest of the invoices it's meant to cover.
  2. Because the transfer is bigger than that invoice, take the overpayment path so Octavia pays that invoice in full and creates an account credit for the remainder.
  3. Then open each of the other invoices and apply a payment from that account credit until they're covered.

Creating an Account Credit Directly from a Transaction

Sometimes an incoming transfer isn't paying a specific invoice at all — it might be an advance, or money you want to hold on account. From the All imported transactions tab you can turn such a row directly into a stored account credit, choosing which student or family it belongs to. This records the credit and marks the transaction as processed, without creating an invoice payment.

Duplicate Protection

Octavia guards against recording the same bank transfer twice. Each imported row carries a fingerprint, and if a row you're about to confirm was already confirmed in an earlier import, it's flagged as Already imported and won't offer the normal confirm action. Re-uploading the same statement won't double-record payments you've already reconciled.

The All Imported Transactions Tab

This tab is your audit view across every import. Rows are deduplicated, and you can filter by status and search. Expanding a transaction shows what it's linked to — the invoice and payment it created, or the account credit it produced — so you can trace any imported row back to its outcome.

Deleting an Import

You can delete an import while you're still setting it up or reviewing it, as long as it hasn't recorded any payments yet. Once an import has confirmed payments against invoices, it can't be deleted — those are real payment records, and deleting the import would remove the trail behind them.

Who Can Use Bank Reconciliation

Because reconciliation records billing payments against invoices, it's an admin-level workflow, in line with the rest of the Money section.

Current Limitations


Related articles: