mirror of
https://github.com/actualbudget/actual.git
synced 2026-03-09 11:42:54 -05:00
[Bug]: New transaction merging with unrelated older transactions on CSV import #1058
Closed
opened 2026-02-28 19:30:21 -06:00 by GiteaMirror
·
7 comments
No Branch/Tag Specified
master
claude/fix-simplefin-ssrf-T31gX
claude/release-notes-validation-X7rvR
matiss/7155
claude/fix-simplefin-batch-sync-O8LcD
ai/custom-theme-dual-prefs
matiss/fix-6804
add-claude-github-actions-1772738270730
claude/analyze-internal-errors-4k6O2
react-query-rules
react-query-useSchedules
matiss/separate-lint-format
dependabot/npm_and_yarn/ajv-6.14.0
cursor/sync-performance-notification-9899
react-query-prefs
matiss/chunked-sync-and-progress-ux
v26.2.1
copilot/sub-pr-6880
fix-react-query-clear-on-close-budget
copilot/sub-pr-6140
feat/auto-note
feat/scoped-bank-sync
cursor/desktop-transactions-react-table-1d0c
fix-exhaustive-deps-App
copilot/fix-find-replace-bug
release/v26.2.0-pre
matiss/browser-tests
mobile-fix-drag-and-drop-across-groups
budget-table-v2
PayeeAutocomplete2
pglite
bugfix/plugins/fix-plugins-sw
feat/plugins/plugins-core-package
prerelease
matiss/unicode-minus-fix
cursor/fix-actual-github-issue-6206-gemini-3-pro-preview-9c37
TransactionFormPage
cursor/implement-mortgage-and-loan-account-type-78ca
tests-update-fill-with-pressSequentially
mobile/link-modal
deps/25.11
cursor/fix-update-vrt-apply-ci-job-dispatch-b324
sync-server-plugins
cursor/propose-patch-for-github-issue-5680-2a18
fix/compiler-preserve-inner-dollar-escapes
cursor/analyze-actual-budget-issue-and-propose-fix-5b70
coderabbitai/docstrings/0c070e5
cursor/add-wip-prefix-and-comment-to-prs-d78d
jfdoming/08-21-auto-focus-on-navigate-in-all-browsers
show-totals-on-mobile-budget-banners
allow-child-transactions-make-transfer
mobile-calculator-keyboard
payee-geolocation
enhance/restore_scroll_position
dm-fix-second-click-on-mobile-new-transaction-2
scrollToLocationBudget
alert-autofix-38
tsconfig-composite
mobile-fix-uncategorized-transactions-on-tracking-budgets
server-budget-handlers
fix-sql-injection-in-cleanup-template
non-chrome-draggable-workaround
mobile-budget-page-swipe-navigation
ts-db-all
stable
dark-theme-with-brand-colors
fix-mobile-delete-group
ts-db-select
UnderKoen/reconcile-context-menu
master-before-server-merge
v25.2.1
ts-runQuery
rename-redux-hooks
UnderKoen/3557-persist-state-in-history
remove-redux-CLOSE_BUDGET
fix-exhaustive-deps-errors-FinancesApp
redux-toolkit-createSlice-backup
accounts-function-component
ts-useSplitsExpanded
loot-core-server-package
useTransactios-in-TransactionEdit
react-aria-input
move-redux-to-desktop-client
QueryState-type
fix-themes-applied-late
mobile-vrts
revert-3295-spendingCardFix
react-aria-button-4
split-payee-on-mobile
twk3/pin-apis-crdt
notes-tag-autocomplete
ts-LoadBackup
dnd-kit
package-upgrades
v26.3.0
v26.2.1
v26.2.0
v26.1.0
v25.12.0
v25.11.0
v25.10.0
v25.9.0
v25.8.0
v25.7.1
v25.7.0
v25.6.1
v25.6.0
v25.5.0
v25.4.0
v25.3.1
v25.3.0
v25.2.1
v25.2.0
v25.1.0
v24.12.0
v24.11.0
v24.10.1
v24.10.0
v24.9.0
v24.8.0
v24.7.0
v24.6.0
v24.5.0
v24.4.0
v24.3.0
v24.2.0
v24.1.0
v23.12.0
v23.11.0
v23.10.0
v23.9.0
v23.8.1
v23.8.0
v23.7.2
v23.7.1
v23.7.0
v23.6.0
v23.5.0
v23.4.2
v23.4.1
v23.4.0
v23.3.2
v23.3.0
v23.2.9
v23.2.5
v23.1.12
v22.12.9
Labels
Clear labels
AI generated
API
bank sync
budgeting
bug
can’t replicate
dependencies
docker
documentation
electron
experimental feature
feature
feedback
goal templates
good first issue
help wanted
importers
maintenance
needs info
needs testing
needs triage
needs votes
openid
payees
pull-request
regression
reports
responsive
rules
schedules
server
✨ merged
split transactions
tech debt
theme
transaction import
transaction reconciliation
transactions
translations
upstream
user interface
✅ approved
wontfix
Mirrored from GitHub Pull Request
No Label
bug
Milestone
No items
No Milestone
Projects
Clear projects
No project
No Assignees
Notifications
Due Date
No due date set.
Dependencies
No dependencies set.
Reference: github-starred/actual#1058
Reference in New Issue
Block a user
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Originally created by @dugite-code on GitHub (Apr 26, 2024).
Verified issue does not already exist?
What happened?
When importing a CSV file some of the transactions are being incorrectly merged with existing transactions.
This appears to happen if:
I would have expected having differing transaction dates and payee information would be enough to prevent the merging. These two data points appear not to be taken into account?
There appears to be no way to disable this functionality or to approve/disapprove merging transactions.
Where are you hosting Actual?
Docker
What browsers are you seeing the problem on?
Firefox, Chrome, Microsoft Edge
Operating System
Windows 11
@youngcw commented on GitHub (Apr 26, 2024):
Have you tried using the edge build? I believe the ability to disable matching was added recently. You can try the edge build using demo.actualbudget.org
@dugite-code commented on GitHub (Apr 26, 2024):
Ah no I hadn't, I can confirm that solves the main issue. Thanks for that.
@dugite-code commented on GitHub (Apr 26, 2024):
Actually now there is the issue that existing older transactions are added on import.
e.g. I get the last Months transactions from my bank even though I might have imported the csv file slightly more recently.
So really the Date and Payees really need to be considered during import to fix my issue.
@MatissJanis commented on GitHub (Apr 27, 2024):
👋 Where's the reproduction steps?
@dugite-code commented on GitHub (Apr 28, 2024):
There aren't many reproduction steps, Just upload a CSV file where:
Note: CSV File Dates are in DD/MM/YYYY format and the Payee information is labeled Description
ExampleBudget.zip
init.csv - Initial transaction
example.csv -New unrelated transaction that gets reconciled with the initial transaction.
As mentioned disabling the reconciliation as in the latest edge release isn't really a fix as it shouldn't be unexpected you might encounter a transaction within a week of each other between import actions that has matching amounts.
Examples:
@MatissJanis commented on GitHub (Apr 28, 2024):
Thanks, that's very helpful.
As @youngcw already mentioned: the latest edge version has the ability to disable the transaction dedupe logic. If that still doesn't work for you - my other alternative is to import larger time ranges (i.e. a month instead of a week).
If that still doesn't satisfy you: my only remaining recommendation is to create a feature request with a description of how we could solve this problem better. Then we can discuss it and see where we can go from there.
Transaction dates and payees are intentionally not taken into account as they have proven to be unreliable. Especially for credit-card transactions.
But since this is not a bug, but rather an intended functionality (at least for now) - I'll close the bug report.
Hope you understand.
@dugite-code commented on GitHub (Apr 29, 2024):
Unfortunately as mentioned I already do this, this issue affects the tail end of the import making it difficult to identify the issue when the balances are thrown out of wack.
Well that is unfortunate, my bank never adjusts these so it's not something I was even aware of.
One of the main reasons I noticed was a mortgage payment got merged with something else, so clearly not ideal for data integrity.
Fair enough, I do have an idea, I'll give it some thought so I can put something understandable together as a request.