mirror of
https://github.com/actualbudget/actual.git
synced 2026-07-14 06:03:54 -05:00
Closed
opened 2026-04-10 17:59:54 -05:00 by GiteaMirror
·
24 comments
No Branch/Tag Specified
master
claude/vrt-skill-actual-82z29h
tabedzki/feat/replacing-month-picker-with-day-picker
enforce-append-only-migrations-ci
delay-initial-sync-until-loaded
jfdoming/mobile-app-build
cross-version-sync-compat
claude/error-codes-worker-boundary-26i5uu
jfdoming/api-tokens-part-1
jfdoming/api-tokens-part-2
jfdoming/api-tokens-part-3
jfdoming/mobile-app-updates
api-browser-custom-data-dir
claude/budget-version-migration-compat-151jlr
claude/worker-error-serialization-9iqtl7
claude/react-table-library-research-afx83z
claude/issue-8401-regression-test-9nw9l3
jfdoming/mobile-app-foundation-part-1
jfdoming/mobile-app-scaffold
release
ai-fix-cleanup-def-8290
claude/relaxed-shannon-jusywa
claude/fervent-keller-s6f2fq
claude/determined-feynman-st1y9z
claude/wizardly-einstein-vi2wce
claude/sweet-albattani-7nseio
feat/bank-sync-per-budget-file
claude/affectionate-cannon-y0kc82
claude/dependabot-findings-m9pgmb
claude/mac-app-ios-publish-zjs1lz
claude/vigilant-tesla-aiiyos
depot-migrate-secrets-1781296330308
claude/quirky-cerf-v5qck7
claude/animation-removal-alternative-2etfh1
claude/netlify-preview-comments-consolidate-9XPYa
osc/7391-error-boundaries-reports
claude/pensive-dijkstra-7DYui
claude/server-app-version-mismatch-HTCGv
claude/pr-8027-review-feedback-mELuO
claude/zealous-wozniak-e5pO0
claude/intelligent-heisenberg-BSHJq
claude/translation-download-refactor-jFRsO
claude/mobile-performance-ideas-G9PAO
claude/github-issue-7988-5A5ly
blacksmith-migration-ff70d2d
claude/great-mayer-KRvOk
claude/react-native-ios-compilation-fcJh5
claude/serene-goldberg-58xv0
claude/kind-euler-LVG3K
release-automation/edge-nightly
7710-bundle-migrations
claude/fix-docker-build-error-WMfed
claude/llm-compatible-release-notes-t20Nr
7710-tests-tdd
cursor/transaction-table-rewrite-f077
claude/plan-ci-secure-context-OtEe1
claude/fix-issue-7667-DPXi3
cursor/resolve-pr-7449-ee11
claude/fix-typescript-build-error-JPtZ5
copilot/add-repository-configs-to-packages
worktree-compressed-drifting-ritchie
claude/api-consumer-verification-kfz1K
pr-7454
claude/fix-issue-7410-LLLQ4
revert-7281-generate-icons
react-query-useSchedules
copilot/sub-pr-6140
package-upgrades
v26.7.0
v26.6.0
v26.5.2
v26.5.1
v26.5.0
v26.4.0
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
tech-support
theme
transaction import
transaction reconciliation
transactions
translations
upstream
user interface
✅ approved
wontfix
Mirrored from GitHub Pull Request
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#7881
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 @joel-jeremy on GitHub (Feb 20, 2024).
Original GitHub issue: https://github.com/actualbudget/actual/issues/2379
Feedback for the experimental Split in rules feature.
@joel-jeremy commented on GitHub (Feb 20, 2024):
@jfdoming I noticed that we can split transactions in rules on all stages (Pre, Default, Post). Does it make sense to just allow a split on
Post? This way, we can probably get rid of theBefore splitfunctionality. ThePostsplit rule will apply the split on whatever the result of thePreandDefaultstages is.@youngcw commented on GitHub (Feb 21, 2024):
I think it would make sense to block setting the category in the "before split" part of a split rule. Currently it can be set, but does nothing. Maybe pass that on to the splits if its set there?
@jfdoming commented on GitHub (Feb 22, 2024):
Hmm, so the "Before split" bit was because I wasn't sure what to do if you (1) add some actions to a non-split rule, and then (2) split the rule; and also it was supposed to be a way to apply actions across all splits. If setting the category doesn't work (I'll check and investigate why) that seems like something that should be fixed, but I'm curious if you have other ideas on how this could behave.
Thanks for the feedback btw!
@Marethyu1 commented on GitHub (Mar 25, 2024):
👋 Im having trouble getting the split rule to apply when importing a transaction via the api.
I have tried importing via a file and works, however I can't seem to get it working with the api. Hoping you can help confirm if it's a me thing or if there is some functionality missing.
Example code using the api
Example rules I have setup
This is the transaction I get

where as if I import via a file
I get the split rule applied
Keen to understand whether im using the api wrong or whether it doesn't support applying the split transaction when uploading via the api. Any help would be appreciated, thanks
@kyrias commented on GitHub (Mar 31, 2024):
It would be nice if the functionality for creating rules from existing transactions would pull in the splits.
@kyrias commented on GitHub (Apr 2, 2024):
I have an off-budget account for a loan I have, and when the charge comes in I turn it into a split transaction with the principal part being a transfer to the off-budget account and the interest part going to the original payee.
Since the principal vs interest amount is different each month I tried setting the split rule to set both splits to an amount of 0, hoping that it would leave the transaction in the same state as would happen if you did this manually, but having just synced one of these charges I see that an extra split is added with the difference.
I guess that's a reasonable default way to handle it, but my preferred way to handle these loan payments in particular would be to not have an extra split created with the extra and for something like the "X uncategorized transactions" notice to be shown for splits where the full balance hasn't been assigned.
@ByteChild commented on GitHub (Apr 3, 2024):
I noticed a bug:
If I enter a fixed value for a split in German format 123,45 then the amount will not be saved. I have to enter 123.45
Example:
I created the following rule:
I typed in the total amount with a comma as separator. The first split also with a comma and the second split with a dot.
Only the second split gets saved:
@youngcw commented on GitHub (Apr 6, 2024):
A split I have didn't work this month. One I had on a different budget did work, that one was with a auto posting schedule.
@jfdoming commented on GitHub (Apr 6, 2024):
Sorry, just to confirm, the auto posting one did work and the regular rule-based on didn't? Were you able to get the rule to apply manually?
@jfdoming commented on GitHub (Apr 6, 2024):
Hey, I don't believe I implemented the API path yet. Happy to look into this
@Marethyu1 commented on GitHub (Apr 6, 2024):
Id be happy to have a crack at implementing the api path if you can point me in the right direction
@youngcw commented on GitHub (Apr 7, 2024):
The auto posting one did work. I cant get this one on my main budget to have the rule apply. Even manually applying the rule wasn't working even though the transaction showed up in the match list
@jfdoming commented on GitHub (Apr 7, 2024):
That sounds odd... What were the criteria/actions, if you don't mind me asking?
@youngcw commented on GitHub (Apr 7, 2024):
That rule is based on payee and approx amount. Im pretty sure that rule has triggered in the past fine. Ill keep watching to see if it keeps happening
@jfdoming commented on GitHub (Apr 8, 2024):
@Marethyu1 check out https://github.com/actualbudget/actual/pull/2569/files#diff-21c5b30e746cbe9a3777fbd9c245d00284320a22e7a18e6c443c2466d1b97767R1099 for details on how to construct splits. Not sure if you need to expose this directly via the API or provide some logical wrapper! Notes:
set-split-amountaction to compute the value of the split@jfdoming commented on GitHub (Apr 8, 2024):
hey @ByteChild, sorry you ran into this! Can you try with the preview link on this PR and see if it fixes your issue? https://github.com/actualbudget/actual/pull/2566
@Marethyu1 commented on GitHub (Apr 14, 2024):
Hi folks, just added a VRT test in #2604
Whilst writing the test I noticed a couple of things
1. Setting a category in the before split doesn't make sense.
Behaviour: If add a split transaction and set the before split category to anything (eg 'food') when I enter the transaction it the category gets set to split instead of the category I set.
Example rule:

Rule that sets before split category to Food
Example Transaction:

Here the category is set to Split for the parent transaction
Potential fix:
Because the parent transaction category for a split transaction will always be split, maybe we should stop users from setting a before split category in the ui? Keen to know what y'all think / if this makes sense?
2. When manually entering a split transaction you have to set payment amount first
In order for a split transaction rule to apply when being entered manually you have to set the payment amount first. This is pretty confusing and was discussed here. Definitely agree that this would be great an enhancement If anyone has time to look into it
@jfdoming commented on GitHub (Apr 14, 2024):
Hey! Thanks for the feedback.
For 1, the idea was that the actions there apply to all splits. I think a rename from "Before split" to "Apply to all" makes sense; what do you think? (Side note: seems like that logic isn't working! I'll look into it and fix.)
For 2, good idea, although not sure how difficult this would be to implement. I'll take a crack at it when I have time.
@Marethyu1 commented on GitHub (Apr 14, 2024):
Oh this makes a lot of sense - was confused as the logic wasn't working. I guess something that is kind of interesting is that it means you can apply a blanket category to all splits, and then within a split override a specific one. That actually seems reasonable enough to me. In terms of renaming it to 'apply to all', I agree that would be more clear to me.
Ive attached a screenshot below showing example case where you could override an individual category.

Assuming we can get it working what you are proposing makes sense to me 👍
@jfdoming commented on GitHub (Apr 21, 2024):
Opened a PR here with the changes we discussed to the "Before split" section, feel free to try it out here and let me know what you think!
@MatissJanis commented on GitHub (May 16, 2024):
Looks like we've not had any new feedback for a while. Any objections if we release this as a first party feature (i.e. remove the feature flag gating)?
@jfdoming commented on GitHub (May 21, 2024):
I'm good to do that! I have two related outstanding PRs I'd like to fixup and get merged, and then I'll open one to remove the feature flag logic.
@joel-jeremy commented on GitHub (May 28, 2024):
@jfdoming Another good to have would be to have the preview transactions show the splits. Right now it only shows the parent transaction as upcoming.
@youngcw commented on GitHub (May 29, 2024):
I have noticed that in the rule edit modal that only non-split or child transactions show up in the list of possible candidates for the rule. Maybe for rules that split, it should show the parent only and not look at children transactions.
This seems to make it hard to know if a split rule is matching correctly.