[Feedback]: Split in Rules #941

Closed
opened 2026-02-28 19:25:52 -06:00 by GiteaMirror · 24 comments
Owner

Originally created by @joel-jeremy on GitHub (Feb 20, 2024).

Feedback for the experimental Split in rules feature.

Originally created by @joel-jeremy on GitHub (Feb 20, 2024). Feedback for the experimental Split in rules feature.
GiteaMirror added the rulesfeedbackexperimental feature labels 2026-02-28 19:25:53 -06:00
Author
Owner

@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 the Before split functionality. The Post split rule will apply the split on whatever the result of the Pre and Default stages is.

@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 the `Before split` functionality. The `Post` split rule will apply the split on whatever the result of the `Pre` and `Default` stages is.
Author
Owner

@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?

@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?
Author
Owner

@jfdoming commented on GitHub (Feb 22, 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?

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!

@jfdoming commented on GitHub (Feb 22, 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? 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!
Author
Owner

@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

...
const accountId = '04bbaabb-5a1e-418b-abe4-678493f67043'
const transaction =  {
        "account": "33644b5c-fcfd-4580-9056-a28278835fb8",
        "date": "2024-03-25",
        "payee_name": "New World",
        "amount": 54500,
        "notes": "test"
    }

await api.importTransactions(accountId, [transaction])

Example rules I have setup

image

This is the transaction I get
image

where as if I import via a file

Account,Date,Payee,Notes,Category,Amount,Cleared
General,2024-03-25,New World,Test Note,Food,54.5,Cleared

I get the split rule applied

image

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

@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 ``` ... const accountId = '04bbaabb-5a1e-418b-abe4-678493f67043' const transaction = { "account": "33644b5c-fcfd-4580-9056-a28278835fb8", "date": "2024-03-25", "payee_name": "New World", "amount": 54500, "notes": "test" } await api.importTransactions(accountId, [transaction]) ``` Example rules I have setup <img width="1255" alt="image" src="https://github.com/actualbudget/actual/assets/17978203/e68780bd-8788-413c-92de-7091a6440ea0"> This is the transaction I get <img width="1278" alt="image" src="https://github.com/actualbudget/actual/assets/17978203/c0466749-ad8c-4883-980e-d44e91c70d9b"> where as if I import via a file ``` Account,Date,Payee,Notes,Category,Amount,Cleared General,2024-03-25,New World,Test Note,Food,54.5,Cleared ``` I get the split rule applied <img width="1268" alt="image" src="https://github.com/actualbudget/actual/assets/17978203/adbbb94d-b382-4dbb-93b0-b0282bf530cd"> 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
Author
Owner

@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 (Mar 31, 2024): It would be nice if the functionality for creating rules from existing transactions would pull in the splits.
Author
Owner

@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.

@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.
Author
Owner

@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:

2024-04-03_13h32_26
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:

2024-04-03_13h33_03

@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: ![2024-04-03_13h32_26](https://github.com/actualbudget/actual/assets/81989472/de11cda6-c59d-46c4-bfa3-6923f954155b) 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: ![2024-04-03_13h33_03](https://github.com/actualbudget/actual/assets/81989472/2ced186c-fd4e-4c05-b76d-87bb982c7b64)
Author
Owner

@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.

@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.
Author
Owner

@jfdoming 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.

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): > 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. 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?
Author
Owner

@jfdoming commented on GitHub (Apr 6, 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

...
const accountId = '04bbaabb-5a1e-418b-abe4-678493f67043'
const transaction =  {
        "account": "33644b5c-fcfd-4580-9056-a28278835fb8",
        "date": "2024-03-25",
        "payee_name": "New World",
        "amount": 54500,
        "notes": "test"
    }

await api.importTransactions(accountId, [transaction])

Example rules I have setup

image This is the transaction I get image

where as if I import via a file

Account,Date,Payee,Notes,Category,Amount,Cleared
General,2024-03-25,New World,Test Note,Food,54.5,Cleared

I get the split rule applied

image 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

Hey, I don't believe I implemented the API path yet. Happy to look into this

@jfdoming commented on GitHub (Apr 6, 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 > > ``` > ... > const accountId = '04bbaabb-5a1e-418b-abe4-678493f67043' > const transaction = { > "account": "33644b5c-fcfd-4580-9056-a28278835fb8", > "date": "2024-03-25", > "payee_name": "New World", > "amount": 54500, > "notes": "test" > } > > await api.importTransactions(accountId, [transaction]) > ``` > > Example rules I have setup > > <img alt="image" width="1255" src="https://private-user-images.githubusercontent.com/17978203/316417033-e68780bd-8788-413c-92de-7091a6440ea0.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MTI0NDUyNzQsIm5iZiI6MTcxMjQ0NDk3NCwicGF0aCI6Ii8xNzk3ODIwMy8zMTY0MTcwMzMtZTY4NzgwYmQtODc4OC00MTNjLTkyZGUtNzA5MWE2NDQwZWEwLnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNDA0MDYlMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjQwNDA2VDIzMDkzNFomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPWJkMzE5MTQ3N2MwN2UyODEwNGM4ZWQxYmJlMzQ3ZDY3NTU2NGM1M2QwNTY1ZDU0N2QyNTFhYTVkYTA3NDM3Y2YmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0JmFjdG9yX2lkPTAma2V5X2lkPTAmcmVwb19pZD0wIn0.lluggDE2snLQjtc_sBUpxyQuOhuq5vgjLswpHg72ECQ"> > This is the transaction I get <img alt="image" width="1278" src="https://private-user-images.githubusercontent.com/17978203/316417327-c0466749-ad8c-4883-980e-d44e91c70d9b.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MTI0NDUyNzQsIm5iZiI6MTcxMjQ0NDk3NCwicGF0aCI6Ii8xNzk3ODIwMy8zMTY0MTczMjctYzA0NjY3NDktYWQ4Yy00ODgzLTk4MGUtZDQ0ZTkxYzcwZDliLnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNDA0MDYlMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjQwNDA2VDIzMDkzNFomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPTk5ZDgyODdmNjg5ZDRlMGIyMzRjYmE2NDIwMmVmYmEwM2VjNjg5NzQ4Y2M2NDMyODZiNTkyYzljMzY1Y2Y4NzUmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0JmFjdG9yX2lkPTAma2V5X2lkPTAmcmVwb19pZD0wIn0.eKzyOSZKdwDZjS4fM5n1Tyb5gTqguAxFgwYWpRDyGLM"> > > where as if I import via a file > > ``` > Account,Date,Payee,Notes,Category,Amount,Cleared > General,2024-03-25,New World,Test Note,Food,54.5,Cleared > ``` > > I get the split rule applied > > <img alt="image" width="1268" src="https://private-user-images.githubusercontent.com/17978203/316418047-adbbb94d-b382-4dbb-93b0-b0282bf530cd.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MTI0NDUyNzQsIm5iZiI6MTcxMjQ0NDk3NCwicGF0aCI6Ii8xNzk3ODIwMy8zMTY0MTgwNDctYWRiYmI5NGQtYjM4Mi00ZGJiLTkzYjAtYjAyODJiZjUzMGNkLnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNDA0MDYlMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjQwNDA2VDIzMDkzNFomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPWUwOWFmZjQzZjRjY2E4MTJhODZjY2ZlNWIwMTRkMWNhZDVhMDE2MjQxNDhhNTQ0NDZkZjM5ZDAyZGJhMTNlODUmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0JmFjdG9yX2lkPTAma2V5X2lkPTAmcmVwb19pZD0wIn0.yBb5syhLbJGbBT_AlXyKov9pNmBtGmDnbAXMrbAQ9GY"> > 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 Hey, I don't believe I implemented the API path yet. Happy to look into this
Author
Owner

@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

@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
Author
Owner

@youngcw commented on GitHub (Apr 7, 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.

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?

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

@youngcw commented on GitHub (Apr 7, 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. > > 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? 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
Author
Owner

@jfdoming commented on GitHub (Apr 7, 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.

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?

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

That sounds odd... What were the criteria/actions, if you don't mind me asking?

@jfdoming commented on GitHub (Apr 7, 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. > > > > > > 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? > > 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 That sounds odd... What were the criteria/actions, if you don't mind me asking?
Author
Owner

@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

@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
Author
Owner

@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:

  • each non-zero split should have a set-split-amount action to compute the value of the split
  • a split with index 0 should be optional
@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: - each non-zero split should have a `set-split-amount` action to compute the value of the split - a split with index 0 should be optional
Author
Owner

@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

@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
Author
Owner

@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
image

Example Transaction:
Here the category is set to Split for the parent transaction
image

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

@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 ![image](https://github.com/actualbudget/actual/assets/17978203/de576d4f-f42f-4eff-8ff9-aa9fe818ed20) *Example Transaction*: Here the category is set to Split for the parent transaction ![image](https://github.com/actualbudget/actual/assets/17978203/c3244058-cedf-4637-81de-0c766bf72e9f) *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](https://github.com/actualbudget/actual/pull/2059#pullrequestreview-1869352754). Definitely agree that this would be great an enhancement If anyone has time to look into it
Author
Owner

@jfdoming 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 image

Example Transaction: Here the category is set to Split for the parent transaction image

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

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.

@jfdoming 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 ![image](https://private-user-images.githubusercontent.com/17978203/322313290-de576d4f-f42f-4eff-8ff9-aa9fe818ed20.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MTMxMzUxNjUsIm5iZiI6MTcxMzEzNDg2NSwicGF0aCI6Ii8xNzk3ODIwMy8zMjIzMTMyOTAtZGU1NzZkNGYtZjQyZi00ZWZmLThmZjktYWE5ZmU4MThlZDIwLnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNDA0MTQlMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjQwNDE0VDIyNDc0NVomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPWI1YWE5NGQwYjM0Mzg2M2U1NzNjN2MwMmRiNDU3YjBiNTIwODcyYWRhMWFiMDgwOGU3MTFhYjViZjNlZmJmYjkmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0JmFjdG9yX2lkPTAma2V5X2lkPTAmcmVwb19pZD0wIn0.WksCQuZsVv5eVjvWSlAU_2WcQfTfHpVR_wL1oT1XOGI) > > _Example Transaction_: Here the category is set to Split for the parent transaction ![image](https://private-user-images.githubusercontent.com/17978203/322313381-c3244058-cedf-4637-81de-0c766bf72e9f.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MTMxMzUxNjUsIm5iZiI6MTcxMzEzNDg2NSwicGF0aCI6Ii8xNzk3ODIwMy8zMjIzMTMzODEtYzMyNDQwNTgtY2VkZi00NjM3LTgxZGUtMGM3NjZiZjcyZTlmLnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNDA0MTQlMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjQwNDE0VDIyNDc0NVomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPWYxM2M3NTkxNzNiMDVhMmE4NWMyNzA2NzYwNGEyZjAwZjMxMjhiOTQ1NTEwYjM3YTJjMGUyMDFlNDcwYzQ5ZDMmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0JmFjdG9yX2lkPTAma2V5X2lkPTAmcmVwb19pZD0wIn0.I_DI4RXFFhnyddxdOZpG2rz5UwNGmK5axnIuH4Tmjz8) > > _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](https://github.com/actualbudget/actual/pull/2059#pullrequestreview-1869352754). Definitely agree that this would be great an enhancement If anyone has time to look into it 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.
Author
Owner

@Marethyu1 commented on GitHub (Apr 14, 2024):

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.)

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.
image

Assuming we can get it working what you are proposing makes sense to me 👍

@Marethyu1 commented on GitHub (Apr 14, 2024): > 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.) 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. ![image](https://github.com/actualbudget/actual/assets/17978203/71439954-64a9-457a-b7d5-953af5cc8d82) Assuming we can get it working what you are proposing makes sense to me 👍
Author
Owner

@jfdoming commented on GitHub (Apr 21, 2024):

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.)

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. image

Assuming we can get it working what you are proposing makes sense to me 👍

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!

@jfdoming commented on GitHub (Apr 21, 2024): > > 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.) > > 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. ![image](https://private-user-images.githubusercontent.com/17978203/322315522-71439954-64a9-457a-b7d5-953af5cc8d82.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MTM2NjE4MjgsIm5iZiI6MTcxMzY2MTUyOCwicGF0aCI6Ii8xNzk3ODIwMy8zMjIzMTU1MjItNzE0Mzk5NTQtNjRhOS00NTdhLWI3ZDUtOTUzYWY1Y2M4ZDgyLnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNDA0MjElMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjQwNDIxVDAxMDUyOFomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPTYyMzBjMzcyZjhhODgzMWEyMmZiNWQyNGViMGI4YWVhNzIzZjA2OTZkMTc0MzEyZWI2Zjg5ZjZiMzlhNGI0YjYmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0JmFjdG9yX2lkPTAma2V5X2lkPTAmcmVwb19pZD0wIn0.0RWvRlARHd-B7viY1W7zcYab-kpSlxz-6U8p52u0qM0) > > Assuming we can get it working what you are proposing makes sense to me 👍 Opened a PR [here](https://github.com/actualbudget/actual/pull/2651#issue-2254786943) with the changes we discussed to the "Before split" section, feel free to try it out [here](https://deploy-preview-2651.demo.actualbudget.org/config-server) and let me know what you think!
Author
Owner

@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)?

@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)?
Author
Owner

@jfdoming commented on GitHub (May 21, 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)?

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.

@jfdoming commented on GitHub (May 21, 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)? 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.
Author
Owner

@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.

@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.
Author
Owner

@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.

@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.
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: github-starred/actual#941