[Bug]: Amount filter in rule creation is ignored for certain transactions #2377

Closed
opened 2026-02-28 20:12:16 -06:00 by GiteaMirror · 4 comments
Owner

Originally created by @celynw on GitHub (Aug 10, 2025).

Verified issue does not already exist?

  • I have searched and found no existing issue

What happened?

In rule creation, I wanted to set one to "amount is greater than value". But I see transactions which are clearly less than this.

Image
  • Filtering the transactions in the "All Accounts panel" works correctly. I only see this in the rule creation window.
  • When starting the value at 0.00 and increasing it, I do see the list being filtered somewhat. Also, when searching for transactions here with "amount is value", sometimes it finds transactions and sometimes it doesn't.
    • These cases are related; it's the same transactions which are filtered correctly.
    • Increasing the value to a crazy amount, like 3,000,000,000.00 doesn't result in any further changes to the results shown
  • Interestingly, changing the condition to amount (inflow) and amount (outflow) does correctly filter ALL items in the list to positive and negative values respectively

All of my transactions have been imported by QIF or OFX file and otherwise look perfect. The only modification I may have made to a small amount of them are changing the Payee (not the imported payee)

I tried to see if there was any problem with the internal representation but I can't see anything. Here are two transactions I printed out when using actualpy:

  1. Transaction with the problem:
    payee_id='redacted' type=None cleared=1 location=None pending=0 schedule_id=None id='redacted' is_child=0 error=None parent_id=None is_parent=0 acct='redacted' imported_description='Redacted' reconciled=0 category_id=None amount=25994 starting_balance_flag=0 raw_synced_data='{"transactionId":"redacted","bookingDate":"2025-06-03","bookingDateTime":"2025-06-03T00:00:00.000Z","transactionAmount":{"amount":"259.94","currency":"GBP"},"debtorName":"REDACTED","remittanceInformationUnstructured":"REDACTED    REDACTED        FP 03/06/25 1229  Redacted","proprietaryBankTransactionCode":"BAC","internalTransactionId":"redacted","payeeName":"Redacted","date":"2025-06-03","notes":"REDACTED    REDACTED        FP 03/06/25 1229  REDACTED","booked":true,"account":"redacted","cleared":true,"amount":"259.94","imported_payee":"Redacted","payee":"redacted"}' notes='REDACTED' transferred_id=None date=20250603 sort_order=1754781200610.0 financial_id='REDACTED' tombstone=0
    
  2. Transaction without the problem:
    payee_id='redacted' type=None cleared=1 location=None pending=0 schedule_id=None id='redacted' is_child=0 error=None parent_id=None is_parent=0 acct='redacted' imported_description='Redacted' reconciled=0 category_id='redacted' amount=-1000 starting_balance_flag=0 raw_synced_data='{"transactionId":"redacted","bookingDate":"2025-08-07","bookingDateTime":"2025-08-07T00:00:00.000Z","transactionAmount":{"amount":"-10.0","currency":"GBP"},"remittanceInformationUnstructured":"REDACTED","proprietaryBankTransactionCode":"PR","internalTransactionId":"redacted","payeeName":"Redacted","date":"2025-08-07","notes":"REDACTED","booked":true,"account":"redacted","cleared":true,"amount":"-10.0","imported_payee":"Redacted","payee":"redacted"}' notes='REDACTED' transferred_id=None date=20250807 sort_order=1754742189474.0 financial_id='redacted=' tombstone=0
    

I can't be sure that it's just a visual quirk or not, but since I'm trying to sort out previous transactions, my workflow will be to apply my rules retroactively from this window. And I get the feeling that if I do this now, it will be applied on these incorrect results.

How can we reproduce the issue?

I'm not sure, but try replicating the screenshot:

  1. Have a budget with many transactions
  2. Go to the rule creation page and start creating a rule
  3. Add a single condition, "Amount is greater than value" and try changing the value and see if this happens

Where are you hosting Actual?

Self-hosted v25.8.0 (docker, Home Assistant addon: 25.8.0-alpine)

What browsers are you seeing the problem on?

Firefox 141.0.2

Operating System

Windows 11

Originally created by @celynw on GitHub (Aug 10, 2025). ### Verified issue does not already exist? - [x] I have searched and found no existing issue ### What happened? In rule creation, I wanted to set one to "`amount` is greater than `value`". But I see transactions which are clearly less than this. <img width="920" height="1140" alt="Image" src="https://github.com/user-attachments/assets/0e371b0e-7fcd-4e38-8ee4-4fb30f6a0a33" /> * Filtering the transactions in the "All Accounts panel" works correctly. I only see this in the rule creation window. * When starting the value at `0.00` and increasing it, I do see the list being filtered somewhat. Also, when searching for transactions here with "`amount` is `value`", sometimes it finds transactions and sometimes it doesn't. * These cases are related; it's the same transactions which are filtered correctly. * Increasing the value to a crazy amount, like 3,000,000,000.00 doesn't result in any further changes to the results shown * Interestingly, changing the condition to `amount (inflow)` and `amount (outflow)` _does_ correctly filter ALL items in the list to positive and negative values respectively All of my transactions have been imported by QIF or OFX file and otherwise look perfect. The only modification I may have made to a small amount of them are changing the Payee (not the imported payee) I tried to see if there was any problem with the internal representation but I can't see anything. Here are two transactions I printed out when using [actualpy](https://github.com/bvanelli/actualpy): 1. Transaction with the problem: ``` payee_id='redacted' type=None cleared=1 location=None pending=0 schedule_id=None id='redacted' is_child=0 error=None parent_id=None is_parent=0 acct='redacted' imported_description='Redacted' reconciled=0 category_id=None amount=25994 starting_balance_flag=0 raw_synced_data='{"transactionId":"redacted","bookingDate":"2025-06-03","bookingDateTime":"2025-06-03T00:00:00.000Z","transactionAmount":{"amount":"259.94","currency":"GBP"},"debtorName":"REDACTED","remittanceInformationUnstructured":"REDACTED REDACTED FP 03/06/25 1229 Redacted","proprietaryBankTransactionCode":"BAC","internalTransactionId":"redacted","payeeName":"Redacted","date":"2025-06-03","notes":"REDACTED REDACTED FP 03/06/25 1229 REDACTED","booked":true,"account":"redacted","cleared":true,"amount":"259.94","imported_payee":"Redacted","payee":"redacted"}' notes='REDACTED' transferred_id=None date=20250603 sort_order=1754781200610.0 financial_id='REDACTED' tombstone=0 ``` 2. Transaction without the problem: ``` payee_id='redacted' type=None cleared=1 location=None pending=0 schedule_id=None id='redacted' is_child=0 error=None parent_id=None is_parent=0 acct='redacted' imported_description='Redacted' reconciled=0 category_id='redacted' amount=-1000 starting_balance_flag=0 raw_synced_data='{"transactionId":"redacted","bookingDate":"2025-08-07","bookingDateTime":"2025-08-07T00:00:00.000Z","transactionAmount":{"amount":"-10.0","currency":"GBP"},"remittanceInformationUnstructured":"REDACTED","proprietaryBankTransactionCode":"PR","internalTransactionId":"redacted","payeeName":"Redacted","date":"2025-08-07","notes":"REDACTED","booked":true,"account":"redacted","cleared":true,"amount":"-10.0","imported_payee":"Redacted","payee":"redacted"}' notes='REDACTED' transferred_id=None date=20250807 sort_order=1754742189474.0 financial_id='redacted=' tombstone=0 ``` I can't be sure that it's just a visual quirk or not, but since I'm trying to sort out previous transactions, my workflow will be to apply my rules retroactively from this window. And I get the feeling that if I do this now, it will be applied on these incorrect results. ### How can we reproduce the issue? I'm not sure, but try replicating the screenshot: 1. Have a budget with many transactions 2. Go to the rule creation page and start creating a rule 3. Add a single condition, "Amount is greater than value" and try changing the value and see if this happens ### Where are you hosting Actual? Self-hosted v25.8.0 (docker, [Home Assistant addon](https://github.com/sztupy/hassio-actualbudget): `25.8.0-alpine`) ### What browsers are you seeing the problem on? Firefox 141.0.2 ### Operating System Windows 11
GiteaMirror added the bug label 2026-02-28 20:12:16 -06:00
Author
Owner

@jfdoming commented on GitHub (Aug 10, 2025):

Hi! This is expected as you inputted -3000 and all the transactions are greater than -3000. It is true that the '-' is a little hard to spot for the first time—you're not the first person with this question.

@jfdoming commented on GitHub (Aug 10, 2025): Hi! This is expected as you inputted -3000 and all the transactions are greater than -3000. It is true that the '-' is a little hard to spot for the first time—you're not the first person with this question.
Author
Owner

@celynw commented on GitHub (Aug 10, 2025):

Oh wow... yes that is very hard to spot. Thank you for the quick update.
I now also see that button is also present on inflow and outflow conditions? Although it's good for consistency, does that make sense? A negative inflow? A positive outflow?

Had I known this was a "tech support" question, I obviously would not have created this issue. I also did spend some time searching for this issue here and did not find anything, apologies for the duplicate

@celynw commented on GitHub (Aug 10, 2025): Oh wow... yes that is very hard to spot. Thank you for the quick update. I now also see that button is also present on inflow and outflow conditions? Although it's good for consistency, does that make sense? A negative inflow? A positive outflow? Had I known this was a "tech support" question, I obviously would not have created this issue. I also did spend some time searching for this issue here and did not find anything, apologies for the duplicate
Author
Owner

@jfdoming commented on GitHub (Aug 10, 2025):

Oh wow... yes that is very hard to spot. Thank you for the quick update.
I now also see that button is also present on inflow and outflow conditions? Although it's good for consistency, does that make sense? A negative inflow? A positive outflow?

Had I known this was a "tech support" question, I obviously would not have created this issue. I also did spend some time searching for this issue here and did not find anything, apologies for the duplicate

Yeah sorry, I was wrong to call it tech support. I edited the original comment. I think the idea is that allowing negative inflow gives more flexibility. But not 100% sure.

@jfdoming commented on GitHub (Aug 10, 2025): > Oh wow... yes that is very hard to spot. Thank you for the quick update. > I now also see that button is also present on inflow and outflow conditions? Although it's good for consistency, does that make sense? A negative inflow? A positive outflow? > > Had I known this was a "tech support" question, I obviously would not have created this issue. I also did spend some time searching for this issue here and did not find anything, apologies for the duplicate > > Yeah sorry, I was wrong to call it tech support. I edited the original comment. I think the idea is that allowing negative inflow gives more flexibility. But not 100% sure.
Author
Owner

@celynw commented on GitHub (Aug 10, 2025):

Thanks again, having a blast with this software

@celynw commented on GitHub (Aug 10, 2025): Thanks again, having a blast with this software
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: github-starred/actual#2377