AI Forensic Accounting for Lawyers: Can It Trace Transfers?

Coding Liquids tutorial cover featuring Sagnik Bhattacharya for AI Forensic Accounting for Lawyers: Can It Trace Transfers?
Coding Liquids tutorial cover featuring Sagnik Bhattacharya for AI Forensic Accounting for Lawyers: Can It Trace Transfers?

AI can help trace transfers across bank statements if the statements are turned into a clean spreadsheet first: it can flag round sums, repeated amounts and matching in-and-out pairs for you to check. It cannot be trusted to add up, match or conclude by itself. Verify every flag in Excel, and use an instructed expert for evidence.

That is the whole decision for a lawyer commissioning forensic work: AI is a way to arrive at the instruction with better questions, not a replacement for the person who signs the report. What follows is a test you can run on synthetic data in an afternoon, so you learn where the tool fails before real statements go near it.

Follow me on Instagram@sagnikteaches

What you are testing and what you are not

The question a family or commercial litigator usually has at the first stage is narrow. Did money leave an account in a pattern that needs explaining? Where did it go next? How much? The expert's later questions (was it a gift, a loan, a business expense, did the party disclose it) are for the expert and the court.

Connect on LinkedInSagnik Bhattacharya

So the test below checks three tasks only: spotting suspicious patterns, following a transfer from one account into the next, and reconciling totals. Everything else in forensic work, such as valuing a business, tracing through shell entities, reviewing tax filings or giving an opinion, is outside it.

Subscribe on YouTube@sagnikteaches

None of this is legal advice or a statement of what any court will accept. Rules on expert evidence and on handling client data differ by jurisdiction and by your professional body, so check them before you use anything from this on a live file.

The Complete Excel Course with AI Integration thumbnail

The Complete Excel Course with AI Integration

From formulas and pivot tables to Power Query, DAX, VBA and AI with Copilot, ChatGPT and Claude — hands-on from the first lesson.

By Sagnik Bhattacharya and Virginia Thorn, Primetime Emmy Award winner

Buy now

Build a synthetic file first

Do not start on a real matter. Build two accounts of invented transactions with a few planted patterns, and see whether the tool finds them. Here is the setup I would use for a divorce-style test. Account A is a joint household account. Account B is a sole account ending 4471. Over three months, money leaves A for B in a pattern, and B passes the money on the next day or so to a single payee, labelled "Payee Q".

DateAccountDescriptionAmount
05 MarATransfer to 4471-5,000.00
05 MarBIn from joint5,000.00
06 MarBTo Payee Q-5,000.00
15 MarATransfer to 4471-2,450.00
16 MarBTo Payee Q-2,450.00
04 AprATransfer to 4471-5,000.00
15 AprATransfer to 4471-2,450.00
06 MayATransfer to 4471-9,900.00
15 MayATransfer to 4471-2,450.00

The full file I would use also holds the ordinary lines that surround these: salary of 3,850.00 on the 1st or 2nd of each month, a mortgage payment of 1,420.00 on the 3rd, groceries, cash withdrawals and a card payment to an art gallery of 1,980.50 that is a decoy, because it is large but neither round nor repeated. Fifteen lines for Account A and twelve for B is enough. The planted facts: six transfers from A to B totalling 27,250.00; three of them are exactly 2,450.00 on the 15th of each month (7,350.00 in all); two are exactly 5,000.00 (10,000.00 in all); one is 9,900.00, just under a round 10,000; and B sends all of it onwards to Payee Q within one or two days, so B's balance change from these flows is zero.

You now have an answer key. A tool that finds all four patterns without inventing a fifth has passed this round, and the key lets you score it.

Step one: turn statements into rows you can trust

Most failures happen before any AI is involved, in the conversion from PDF or image to a table. Statements arrive as PDFs with running balances, page headers and footers, and dates in different formats. Whether you type them, export them from online banking as CSV or ask a tool to extract them, apply the same rule: one row per transaction, one amount column with money out as a negative number, a real date, the account name, and the description exactly as printed.

If an AI tool reads the PDF, check the extraction before anything else. Add up the rows for each statement and compare them to the opening balance plus movements equals closing balance printed on the statement. If one statement fails to reconcile, you have a missing row, a duplicated row or a sign error. Do that in Excel with two cells: =SUM(C2:C31) for the movement (amounts in column C, as in step three) and a comparison with closing minus opening. Do not proceed until it ties exactly.

A realistic extraction mistake

In a typical run, a long statement table is split across two pages and the extraction drops the row at the page break, or reads "2,450.00" in a faded scan as "2,150.00". Both errors reconcile badly: the totals will be out by exactly the missing row, or by 300.00. That is why the opening-plus-movements check is the first step, not the last.

Step two: ask for flags, not conclusions

With a clean table, a prompt can ask the AI to look for patterns. The wording matters. Ask it to list candidates with row references and to avoid explaining motives. A model asked "has money been hidden?" will often produce a confident story. A model asked "list rows matching these rules" produces something you can check.

I will paste a table of bank transactions (Date, Account, Description, Amount; money out is negative). Do NOT conclude anything about intent or wrongdoing.
1. List every transaction whose amount is a round multiple of 50 or 100 and is 1,000 or more in size.
2. List amounts that appear three or more times, with the dates.
3. List any amount between 9,000 and 9,999.99 in size.
4. For each transfer out of Account A to 4471, find a matching inflow to Account B within 3 days with the same amount. Show both rows.
Give row numbers from my table for every item. If you are unsure, say "not sure" instead of guessing. Do not add or recompute any figures.

A sample answer, again illustrative, might read:

1. Round amounts: rows 3 and 9 (5,000.00); rows 5, 12 and 21 (2,450.00)... 2. Repeated amounts: 2,450.00 appears on 15 Mar, 15 Apr and 15 May. 3. Between 9,000 and 9,999.99: row 17, 9,900.00 on 06 May. 4. Matches: all six transfers have a matching inflow to B within 3 days... Total moved: 27,500.00.

Look at the last number. The true total is 27,250.00. The model summed wrongly by 250.00, and it did so while being told not to recompute. This is the commonest behaviour to watch for: a good pattern list wrapped in an arithmetic error. You would never have noticed without the answer key and the Excel check.

Step three: verify each flag with formulas

Put the table in Excel with real dates, in the column order A date, B description, C amount, D account (a different order from the display table above). Then mark each of the patterns yourself in helper columns from E onwards. These formulas are plain and checkable, which is the point.

CheckFormula in row 2 (copy down)What it shows
Round amount=IF(AND(C2<0,ABS(C2)>=1000,MOD(ROUND(ABS(C2),2),50)=0),"Round","")Outgoings of 1,000 or more that are multiples of 50
Repeated amount=IF(COUNTIFS($C$2:$C$40,C2,$B$2:$B$40,B2)>=3,"Repeat","")Same amount and description three or more times
Just under a figure=IF(AND(ABS(C2)>=9500,ABS(C2)<10000),"Near 10k","")Between 9,500 and 9,999.99 in size
Matching inflow=COUNTIFS($C$2:$C$40,-C2,$D$2:$D$40,"B",$A$2:$A$40,">="&A2,$A$2:$A$40,"<="&A2+3)Number of same-sized credits in Account B in the next 3 days

Give each check its own column, with the round-amount flag in E, the repeat flag in F and so on, and adjust the ranges to your table. Then count the flags with =COUNTIF(E2:E40,"Round"). On the synthetic file the round-amount flag marks all six transfers out of A, because 9,900.00 is also a multiple of 50, and it marks the six onward payments from B to Payee Q as well, since they are outgoings of the same sizes. So totalling the flagged amounts with a plain =SUMIFS(C2:C40,E2:E40,"Round") returns -54,500.00; add the account, =SUMIFS(C2:C40,E2:E40,"Round",D2:D40,"A"), to get the -27,250.00 that left the joint account. That is why the near-10,000 flag sits in its own column: the 9,900.00 line carries two flags, and the other five carry one or two (the three 2,450.00 lines are also repeats). Reading the formulas rather than trusting the answer is how you discover such things.

The reconciliation sum is the last: =SUMIFS(C2:C40,B2:B40,"Transfer to 4471") should return -27,250.00, and =SUMIFS(C2:C40,B2:B40,"To Payee Q") should return -27,250.00 on B, which is the "all of it passed on" finding. Now compare to what the AI said. Whatever the tool printed, the spreadsheet wins.

Score the tool against the answer key

Item in the keyFound?Notes to record
Three 2,450.00 repeatsYes / NoWere dates right?
Two 5,000.00 round sumsYes / NoAny missed?
9,900.00 near-limitYes / NoAny invented?
Pass-through to Payee QYes / NoDid it need a second prompt?
Decoy 1,980.50 gallery paymentNot flagged / flaggedA false positive is a cost
Total moved 27,250.00Right / wrongSize of the error

Run this three times with the same prompt. Models give different answers on repeated runs, and if the flags change between runs, the tool is not stable enough for you to rely on, however good one answer looked.

Step four: follow the money into the second account

Tracing is where AI is most tempting and least safe. Matching a 5,000.00 debit in A to a 5,000.00 credit in B is easy when both statements are in front of you. It is much harder when the credit arrives three days later, in two parts, with a fee taken, or through an account you have no statements for.

Two extra tests are worth running on the synthetic data. First, alter the file so that one transfer lands in B as 4,990.00 (a 10.00 charge), and see whether the exact-match formula and the AI both miss it. The formula will, and you can fix it with a tolerance: change -C2 to a range test with ">="&-C2-25 and "<="&-C2. Second, split one transfer in the file into two credits of 2,500.00. A model might say "no match found" or might quietly pair them. Your answer key tells you which.

The real limit is not the technology. Funds that move to an account the other side controls but you have no statements for do not appear in your table at all, and no tool will see them. That is a disclosure and expert question, so write it down as a gap. A line like "B passes 27,250.00 to Payee Q; identity and account of Payee Q unknown" is a finding. An AI guess about who Payee Q is would not be.

What the first-pass work looks like in a divorce file

Say a two-lawyer family practice has a client who suspects the other spouse has been moving money out of the household account. The synthetic test above shows what the firm can reasonably do before instructing an expert: assemble twelve months of statements into a single table, run the four checks, produce a one-page list of flagged rows with amounts and dates, and compute the totals by pattern. The practice would then tell the client what the list shows and what it does not show, and use it to write the instruction.

A scoping note you could send an expert

Matter: [reference]. Instruction: trace the transfers listed in the attached schedule.
Schedule: 6 transfers from the joint account to account ending 4471, 05 Mar to 15 May, 27,250.00 in total. Patterns found by our first-pass checks (spreadsheet attached, formulas visible): three equal payments of 2,450.00 on the 15th; two of 5,000.00; one of 9,900.00.
Not established: the destination of onward payments to "Payee Q"; whether any sums are gifts, loans or business payments.
Please advise: scope, likely time and cost, and what additional records you would need.
These notes are a preliminary aid prepared by us and are not intended as expert evidence.

A note like this makes the expert's first call shorter. It also keeps your own work labelled for what it is, which matters if anyone later asks how the instruction came about.

A second illustration: partner drawings in a business dispute

The same method works outside divorce. Say a mortgage-broking business is in dispute between two partners, and one suspects the other has been drawing money from the company account. The statements show 41 payments to the partner's personal account over a year. The first-pass checks sort them: 12 are exactly 1,800.00 on the last working day of the month (a repeat, and probably a salary or drawings arrangement that the other partner may well have agreed to); 5 are round sums of 2,000.00 to 6,000.00 in odd months; 24 are varied amounts under 600.00 that look like expense repayments. Totals by group: 21,600.00, 19,000.00 and, say, 9,840.00. The point is not the labels, which are guesses until someone checks the paperwork. It is that the lawyer arrives at the expert with three piles and their totals, and a question for each pile, rather than with 41 undifferentiated lines.

The same example shows why repeats are not suspicious in themselves. A monthly payment of exactly the same amount is a normal pattern for rent, wages and loan repayments. A flag is a reason to look, and a lawyer who treats flags as findings will put an unsupported allegation in a letter.

When the first pass says stop and hire

A short test will tell you when the matter has outgrown the spreadsheet. Instruct an expert when any of these is true:

  • The sums are large relative to the assets in dispute, or the other side has a business whose finances need reading.
  • Money passes through three or more accounts, or through accounts you have no statements for.
  • The flags mix personal spending and business payments, so the question becomes how to classify them.
  • You expect the findings to be challenged, which means you need an independent person who can be cross-examined on method.
  • The statements are scanned and poorly legible, so extraction errors would make your own totals suspect.

If none applies and the amounts are modest, your own checked spreadsheet and a good letter may be proportionate. Whether it is proportionate is a professional judgement for you and your client, not something a tool can answer.

Handling client data during the test and afterwards

Keep real statements out of the test. The synthetic file is the point of the exercise: you can paste it into any tool, share it with colleagues and publish the scorecard internally with no confidentiality cost. Once the test shows a tool is useful, apply your usual controls to live files: client consent where your rules require it, a tool with data settings your firm has reviewed (retention, training use, location of processing), removal of account numbers and names where possible, and a record of which tool saw which document.

The same caution covers the outputs. Save the prompt, the model's answer, your spreadsheet and the date together, so you can show what you did. If you want a structured way to compare candidates before choosing, a short trial scorecard for accuracy, privacy and cost covers the same ground for any AI app. For the question of which kind of chatbot to use, see general models against legal-specific ones.

Four mistakes to expect on real statements

  1. Sign flips. Some banks print debits as positive numbers in a separate column. If you combine columns carelessly, withdrawals and deposits swap, and every pattern reverses. Check one known payment.
  2. Date formats. 03/04 can be 3 April or 4 March. If the table mixes them, "within three days" matching fails silently. Convert to real Excel dates and check the sort order.
  3. Similar descriptions. "TRANSFER 4471" and "Transfer to 4471" are two groups to a formula and one to a human. Clean descriptions before counting repeats.
  4. Confident narratives. A model that has been given statements and asked "what happened?" will tell a story. Keep to rule-based questions and put any narrative in your own words, labelled as a hypothesis.

A one-page procedure to keep with the test results

  1. Build the synthetic file and answer key once; keep both in a shared folder.
  2. Run the prompt three times; score each run on the table above; keep the three outputs.
  3. Decide the tool's role: for example, "first-pass flags on tidy spreadsheets only, every flag checked in Excel".
  4. For live matters: extract, reconcile exactly, run the formulas, then (optionally) the prompt, then compare.
  5. Write the schedule of flags, the gaps (accounts you do not have) and the questions for the expert.
  6. Label everything as preliminary and not expert evidence; the expert does their own work.

If you want the wider picture of where small firms start with AI before something like this, see what to automate first in a small law firm. A tool that cannot beat your Excel check on a synthetic file has not earned a place on a live one.

Questions lawyers ask before using AI on bank statements

Can AI findings be used as evidence?

Treat them as working notes, not evidence. A court or tribunal expects an independent expert, who is responsible for their own method and opinion. AI can help you decide where to look and what to ask the expert, but a spreadsheet you checked yourself is a lead, not a report.

Is it safe to upload client bank statements to a chatbot?

Only after you have checked your professional-conduct rules, your client's consent, the tool's data-retention and training settings, and whether the statements can be redacted first. For the test below use synthetic statements. For real matters, prefer a tool your firm has approved.

What does this test cost to run?

Mostly your time: roughly a couple of hours to build a synthetic file and run the checks once, plus a chatbot subscription you may already have. Figures for real matters depend on statement volume and the tool, so run the test first and time it.

Does AI replace a forensic accountant?

No. It can speed up a first pass over a tidy spreadsheet and help you write a sharper instruction. Tracing, tax, valuation, tracking funds through other people's accounts and giving an opinion remain expert work.

Further reads

Sources: Microsoft Excel function documentation (COUNTIFS, SUMIFS, MOD, ABS); statements, names and figures in this tutorial are synthetic and illustrative.

Want a safe AI routine for financial documents?

On a 1:1 call we can map which document checks in your firm suit AI, which need an expert, and how to keep client data inside tools you have approved.

Book a 1:1 call with me