Skip to content

Review money moved between accounts

Transfer pair review

Review opposite-sign transactions across the accounts you choose and confirm the transfer pairs, so confirmed transfers are not counted as spending or income. Runs in your browser.

This tool processes your file and entries in this browser tab, without uploading or saving them.

UTF-8 .csv or .txt, up to 5 MB. File contents never leave this tool.

Source 1

Use one CSV per account, or map an account column in one combined CSV. Keep both sides of each transfer. Up to ten sources, ten accounts, 5 MB per source and 10,000 data rows in total.

Privacy and clearing your input

This tool does not send your file contents to a server or save them in browser storage. Use Clear or reload to clear the active input. Navigating away and Back may restore uncleared contents. Download and print actions, where offered, create copies only when you choose them. Your browser manages temporary memory and any separate print window. The PDF converter has its own upload workflow.

Only exact equal and opposite amounts qualify. Five calendar days is the starting window. Amounts use exact integers; extra decimal places are rejected rather than rounded. Changing sources, account settings, precision or the window clears all decisions.

Files read: 0 sources, 0 data records.

Format: Waiting for source fixes and explicit account, currency and sign confirmation.

Review: Not calculated. Resolve the items below.

Compare money leaving one account with money arriving in another. Confirm the pairs yourself, keep both originals, and see spending and income with and without those transfers. Free, browser-local and no signup.

Opens a blank tool; your data is not included

By AnyStatement

Published , 6 min read

Contents
  1. Start with both sides of the move
  2. A matching amount starts the review, not the conclusion
  3. 425.50 moved, not 851.00 of activity to count twice
  4. Keep the originals and the unresolved rows
  5. What blocks a result
  6. Local files, new review downloads
  7. If one account only has PDF history

Start with both sides of the move

Use bank CSV exports for two or more accounts you control. You can add one file per account or use a combined file with an account column. Map each source separately, including its posted date, description, signed amount or debit and credit columns, and an optional reference. The tool reads CSV text, not PDFs or spreadsheet workbooks.

Give each account a distinct label and explicitly choose its currency. Two accounts ending in the same four digits are not merged. Labels are case-sensitive and spaces are significant, so use the same label across files only when they really belong to the same account. A multi-currency account needs a separate label for each currency balance. If you map a currency column, every row must agree exactly with the currency you chose for that account.

The money direction is from your perspective: outgoing money is negative, incoming money is positive. A card payment normally needs an outgoing row in the paying account and an incoming row in the card account for this comparison. Card exports differ, so check a purchase and a payment against the statement before confirming the sign settings. Pending authorizations do not belong in this posted-transaction comparison.

A matching amount starts the review, not the conclusion

A proposal needs equal and opposite amounts, different account labels, the same currency, and posted dates within your selected window. The starting window is five calendar days; you can choose zero through seven. There is no amount tolerance. A transfer of 100.00 and a receipt of 99.00 do not match, even if you suspect the difference was a fee.

Exact, nonblank shared reference fields rank first. Transfer and card-payment wording, or a description naming the other account's digits, provide additional evidence. The tool also shows amount-and-date-only proposals, but those need your written evidence before they can be confirmed. A shared reference or a description can still be wrong; neither establishes account ownership or proves what happened.

If two incoming rows could match one outgoing row, both proposals stay visible. Their competing-endpoint counts make the ambiguity explicit. Nearer dates affect display order, not your decision. Nothing is paired automatically, including a unique proposal. Once you confirm a pair, both rows are reserved; undo that pair before selecting an alternative. Changes to sources, account settings, precision or the date window reset all decisions.

The matching is one-to-one. It does not split a payment, combine several receipts, trace intermediary accounts, infer exchange rates or net fees into a transfer. For a fee charged separately, the fee remains in spending while the equal transfer amounts can be paired.

425.50 moved, not 851.00 of activity to count twice

Load example supplies six fictional rows: USD -300.00 and +300.00, USD -125.50 and +125.50, another USD -50.00, and EUR +50.00 in a fourth account. The first two opposite-sign groups have shared references. The tool does not preconfirm either group; choose Confirm pair on each after inspecting it.

Before confirmation, USD spending is 475.50 and USD income is 425.50. After confirming the two pairs, the USD amount moved is 300.00 + 125.50 = 425.50, counted once. Spending without confirmed transfers is 50.00 and income without confirmed transfers is 0.00. Each pair nets to zero, so total USD net movement is still -50.00.

The EUR +50.00 cannot match the USD -50.00, even though the amounts and reference resemble each other. EUR income stays 50.00, shown separately. Both unpaired rows carry transfer wording, so they appear in the one-sided review. These example amounts were recomputed with exact decimal arithmetic.

Keep the originals and the unresolved rows

The confirmed-pairs download includes both source aliases, physical source lines, dates, descriptions, references, original cell arrays, the evidence found and your decision note. The amount moved counts one side of a pair, not the sum of its absolute debit and credit. The all-rows classification sidecar retains every supplied transaction; it is not a merged bank-import file and does not delete the incoming side.

One-sided means there is a transfer signal but no confirmed counterpart in this review. It does not establish that the other side is absent from the bank. The counterpart might be outside the date range, in a missing account, or still waiting for your decision. You can flag a transfer the wording missed in the every-row table. A manual flag changes the review list, not the totals.

Spending and income here mean negative and positive amounts in your input. The after totals exclude only both sides of confirmed pairs. All unconfirmed rows remain counted, including unresolved transfer signals. These are arithmetic views of supplied data, not tax or accounting advice, a classification of taxable deposits, or completed bookkeeping reconciliation. See the guide to spending without double-counting card payments for the distinction.

What blocks a result

Use one through ten UTF-8 CSV or text sources covering two through ten accounts, with at most 5,000,000 bytes per source and 10,000 data rows in total. Comma, semicolon, tab and pipe separators are supported. Header choices and column guesses are editable. Date order and decimal separators need your explicit choice. The precision setting supports zero through six decimal places for all amounts; extra precision is rejected, not rounded.

Malformed amounts or dates, blank records, repeated headers, subtotal-like records, inconsistent column counts and encoding replacement characters block matching and totals. Correct a working copy; the original-record preview and source-issues download help locate the problem. Times and weekday labels stripped from dates are reported, without timezone conversion or a check that the printed weekday was right. No transaction is silently dropped to make a result work.

Rows repeating the same account, currency, date, amount, description and reference are flagged and retained. The tool cannot decide whether they are repeated exports or genuine repeated payments. A highly ambiguous input that generates more than 50,000 proposals blocks the result rather than hiding alternatives; use a narrower posting window or smaller date ranges that still include both accounts.

This tool does not detect fraud, verify ownership, authenticate statements, discover missing accounts or reconcile opening and closing balances. It cannot tell whether your posted-row declaration is true. Review the statements and supporting evidence before using a pair classification in your books.

Local files, new review downloads

Your file and the values you enter are processed in this browser tab. They are not uploaded or sent to analytics. We do not save them between visits. Downloads you choose to save remain on your device.

Clear removes the active inputs and decisions. It is not a secure memory wipe, and Back navigation may restore uncleared state. Downloads are new CSV files, not edits to your originals. They contain financial details, account aliases and decision notes, so review them before sharing.

Exports prefix formula-like text with an apostrophe and retain parsed signed amounts as numbers. Original cells are preserved inside JSON arrays for traceability, not offered as a ready-to-import bank feed. Do not extract and open untrusted original cells in a spreadsheet without checking them. OWASP's CSV injection guidance, opened on 18 October 2026 with no update date shown, warns that spreadsheet save-and-reopen behavior can remove protection. No export is guaranteed safe or accepted in every destination. No live bank connection or accounting-app import was tested.

If one account only has PDF history

First check whether its bank can export the needed dates as CSV, or prepare a small working list manually. If the rows only exist in PDF statements, AnyStatement can extract transaction data with source-line links and statement arithmetic checks. That is a separate upload workflow, not part of this local comparison, and files entered here are never passed to it automatically. 3 pages a day without an account or card. The free allowance is shared per network and resets at midnight UTC. Conversion is a separate upload; this tool does not send its contents there.