Skip to main content

How Auto-Categorisation Works

This page explains how Fiskl assigns a ledger account to each imported bank transaction, and why it works the way it does. Read it to understand what happens automatically, what waits for you, and how your own decisions teach the system so that less waits for you each month.

The three sources, in order​

Every uncategorised bank transaction is offered to three sources, always in this order. The first one that can place the transaction wins, and the later ones are not consulted.

  1. Your rules. A rule you wrote, or approved from a suggestion, names an account for a merchant. A matching rule is applied exactly as written, every time. Rules are free and never guess.
  2. Your history. If you have categorised the same merchant name before and marked it Finished, Fiskl repeats that decision. History is free and repeats a choice you made.
  3. The AI. Only if the company has turned on AI Categorisation, and only for transactions the first two sources could not place. The AI proposes an account with a confidence score. Fiskl writes the answer to your books only when the confidence is 80% or higher. Anything lower stays uncategorised for you to decide.

Rules and history are deterministic: the same transaction always gets the same result. The AI is the only source that guesses, and it is the only one that uses tokens. Tokens are measured so usage can be seen, but there is nothing to pay.

Matching runs before any of the three. A transaction paired with an invoice, an expense or a transfer between your own accounts is settled by that pairing and is never categorised. See Matching and Splitting Transactions.

The learning cycle​

The order above is also a cycle. Each month you finish what the automation could not settle, and each thing you finish moves that merchant up the list: from the AI, to your history, to a rule. The next import has less for the AI to do, and less for you.

A rule is the end of the cycle for a merchant. Once one exists, every future transaction from that merchant is placed by the rule, arrives already finished, and never reaches the AI. The point of the workflow on the transactions list is to get recurring merchants there as quickly as possible. See Finishing Transactions for the steps.

The 80% threshold​

The AI's confidence is shown on each transaction as a colour. Green is 80% and above, amber is 60 to 79%, and red is below 60%. Fiskl writes only green answers automatically. This threshold was measured against real books: answers between 70 and 79% were wrong roughly one time in three, so admitting them would put more errors into your accounts than it saved you work.

You can still use a lower-confidence answer. When you run Categorise on a selection of transactions, answers below 80% are shown to you as proposals, and you decide which to accept.

What Finish means​

Finish is how you tell Fiskl a transaction is right. Until you finish it, a transaction the automation categorised still belongs to the automation. After you finish it, the decision belongs to you.

This distinction matters for two reasons:

  • History only learns from finished transactions. A category the AI wrote is not repeated for the next transaction from that merchant until you finish it. This stops one AI guess from becoming the answer for every later transaction.
  • Rule suggestions are built only from finished transactions. Fiskl proposes a rule when you have finished the same merchant, the same way, at least twice. AI-categorised transactions you have not finished do not count, however confident the AI was.

Transactions a rule places need no Finish. A rule is your own instruction, so there is nothing to review.

Where the work happens​

Day to day, everything happens on the transactions list. The switches and the full record of rules live in Settings.

What you want to doWhere
Review what the automation did, finish it, and turn a merchant into a ruleAccounting > Transactions: the review strip above the list and the selection bar
Categorise a chosen set of transactions nowAccounting > Transactions, select rows, then Categorise
Turn a step on or offSettings > AI & Automations > Automations
Re-run rules and history over everything still uncategorisedSettings > AI & Automations > Automations > Retry categorisation
Describe your business and bookkeeping preferences for the AISettings > AI & Automations > AI profile
See every rule across all accounts, edit or delete one, dismiss a suggestionSettings > AI & Automations > Rules
info

Auto Categorisation covers rules and history, which are free. AI Categorisation is a separate switch because it is the only step that sends transactions to a model. Turning on the first does not turn on the second. Both are under Settings > AI & Automations > Automations; see AI & Automations Settings.

What is never guessed​

Some things are deliberately left to you:

  • Tax rates. The AI never chooses a tax rate. A rate reaches a transaction only from your own earlier categorisation of that merchant, or from a rule you wrote that names the rate.
  • Transactions in a locked period. Nothing is written to a transaction dated inside your locked accounting period. It waits until the lock moves. See Locked Period.
  • Transactions the AI is unsure about. Below 80% confidence, the transaction stays uncategorised. Fiskl does not revisit it on its own; see Categorising a Selection and Retry categorisation under Settings > AI & Automations > Automations.

Common Issues​

The same merchant keeps coming back uncategorised

Fiskl looks at each uncategorised transaction once. If nothing could place it, it is left for you and not retried on its own. To settle the merchant for good, open Accounting > Transactions, select its transactions, set the account, and use Finish and create rule. The rule places every future transaction from that merchant. To catch the ones already waiting, select Retry under Settings > AI & Automations > Automations, or select the transactions and use Categorise.

The AI categorised a transaction but it has no tax

This is expected. The AI never picks a tax rate. Add the rate on the transaction and finish it. From then on, history carries that rate to later transactions from the same merchant. Alternatively, add a rule that names the rate.

A transaction was categorised to an account that makes no sense for my business

Correct the account on the transaction and finish it. If it happens repeatedly for one merchant, use Finish and create rule so the AI is never asked about it again. A description on the ledger account under Chart of Accounts also helps the AI choose between similar accounts, and so does a fuller AI profile.