[GH-ISSUE #3887] Set Schedule to Account Balance #99027

Closed
opened 2026-05-29 13:08:30 -05:00 by GiteaMirror · 11 comments
Owner

Originally created by @epikaan on GitHub (Nov 24, 2024).
Original GitHub issue: https://github.com/actualbudget/actual/issues/3887

Verified feature request does not already exist?

  • I have searched and found no existing issue

💻

  • Would you like to implement this feature?

Pitch: what problem are you trying to solve?

I would like to set a scheduled transaction to match the balance of my credit card so I can see quickly when and how much money will be transferred from my checking account to my credit card.

Describe your ideal solution to this problem

Ideally when you set the schedule amount you would have a fourth option which is equal to the balance of an account, so that it dynamically updates. I know the date when my CC automatic payment is so only the amount would have to be dynamic.

Teaching and learning

No response

Originally created by @epikaan on GitHub (Nov 24, 2024). Original GitHub issue: https://github.com/actualbudget/actual/issues/3887 ### Verified feature request does not already exist? - [X] I have searched and found no existing issue ### 💻 - [ ] Would you like to implement this feature? ### Pitch: what problem are you trying to solve? I would like to set a scheduled transaction to match the balance of my credit card so I can see quickly when and how much money will be transferred from my checking account to my credit card. ### Describe your ideal solution to this problem Ideally when you set the schedule amount you would have a fourth option which is equal to the balance of an account, so that it dynamically updates. I know the date when my CC automatic payment is so only the amount would have to be dynamic. ### Teaching and learning _No response_
GiteaMirror added the featureneeds votes labels 2026-05-29 13:08:30 -05:00
Author
Owner

@github-actions[bot] commented on GitHub (Nov 24, 2024):

Thanks for sharing your idea!

This repository uses lodash style issue management for enhancements. That means enhancement issues are automatically closed. This doesn’t mean we don’t accept feature requests, though! We will consider implementing ones that receive many upvotes, and we welcome contributions for any feature requests marked as needing votes (just post a comment first so we can help you make a successful contribution).

The enhancement backlog can be found here: https://github.com/actualbudget/actual/issues?q=label%3A%22needs+votes%22+sort%3Areactions-%2B1-desc+

Don’t forget to upvote the top comment with 👍!

<!-- gh-comment-id:2495989714 --> @github-actions[bot] commented on GitHub (Nov 24, 2024): :sparkles: Thanks for sharing your idea! :sparkles: This repository uses lodash style issue management for enhancements. That means enhancement issues are automatically closed. This doesn’t mean we don’t accept feature requests, though! We will consider implementing ones that receive many upvotes, and we welcome contributions for any feature requests marked as needing votes (just post a comment first so we can help you make a successful contribution). The enhancement backlog can be found here: https://github.com/actualbudget/actual/issues?q=label%3A%22needs+votes%22+sort%3Areactions-%2B1-desc+ Don’t forget to upvote the top comment with 👍! <!-- feature-auto-close-comment -->
Author
Owner

@mullermn commented on GitHub (Feb 2, 2026):

I think this needs to be a little more sophisticated.

Most the time the transaction to settle the card lags some way behind the transactions on the card - eg, the transactions in January total £1000 and this money is taken from an account on the 15th of February. However, by the 15th of February half of the transactions for February will now be on the credit card with the total balance at £1500.

To do this properly you would have to handle this date offset in the schedule - I think this would be a really nice enhancement though.

<!-- gh-comment-id:3834080067 --> @mullermn commented on GitHub (Feb 2, 2026): I think this needs to be a little more sophisticated. Most the time the transaction to settle the card lags some way behind the transactions on the card - eg, the transactions in January total £1000 and this money is taken from an account on the 15th of February. However, by the 15th of February half of the transactions for February will now be on the credit card with the total balance at £1500. To do this properly you would have to handle this date offset in the schedule - I think this would be a really nice enhancement though.
Author
Owner

@StephenBrown2 commented on GitHub (Feb 2, 2026):

There is a balance function in the formula options, could you have the schedule run on the statement date and create a transaction with the balance that way?

<!-- gh-comment-id:3836078694 --> @StephenBrown2 commented on GitHub (Feb 2, 2026): There is a balance function in the formula options, could you have the schedule run on the statement date and create a transaction with the balance that way?
Author
Owner

@youngcw commented on GitHub (Feb 2, 2026):

Interesting. Have a schedule run on the statement date, edit the underlying rule to change the date of the transaction to be the payment date. That probably would work. It would be a transaction instead of a schedule, but that could be ok.

<!-- gh-comment-id:3836125214 --> @youngcw commented on GitHub (Feb 2, 2026): Interesting. Have a schedule run on the statement date, edit the underlying rule to change the date of the transaction to be the payment date. That probably would work. It would be a transaction instead of a schedule, but that could be ok.
Author
Owner

@mullermn commented on GitHub (Feb 2, 2026):

This actually works! It's a bit fragile (had Actual crash multiple times while playing with these templates) but it does work.

I set up this schedule on the credit card (ie, the account that should receive the transfer):

Image

Then I customised the associated rules:
Image

And this has resulted in a future scheduled transaction on the bank account (that will eventually settle the debt), on the correct future date on which the payment will be made, with an amount that reflects the credit card's correct running balance as of today (uncleared+cleared).

Pretty cool that this works, but I think it would still be valuable to wrap all of this up in an easy UI for the user, as settling of credit card debts is going to be a common use case and this is relatively complex to set up.

<!-- gh-comment-id:3836563829 --> @mullermn commented on GitHub (Feb 2, 2026): This actually works! It's a bit fragile (had Actual crash multiple times while playing with these templates) but it does work. I set up this schedule on the credit card (ie, the account that should receive the transfer): <img width="614" height="460" alt="Image" src="https://github.com/user-attachments/assets/1509aa9e-e0bf-49a3-b289-c38f33f7ff46" /> Then I customised the associated rules: <img width="914" height="650" alt="Image" src="https://github.com/user-attachments/assets/509c7b85-0d20-4cec-9684-02cef4f1342e" /> And this has resulted in a future scheduled transaction on the bank account (that will eventually settle the debt), on the correct future date on which the payment will be made, with an amount that reflects the credit card's correct running balance as of today (uncleared+cleared). Pretty cool that this works, but I think it would still be valuable to wrap all of this up in an easy UI for the user, as settling of credit card debts is going to be a common use case and this is relatively complex to set up.
Author
Owner

@youngcw commented on GitHub (Feb 2, 2026):

I think the best thing long term would be to make a formula function that gets the balance on a specific day, that way you can skip the date shenanigans and have a regular schedule

<!-- gh-comment-id:3836628779 --> @youngcw commented on GitHub (Feb 2, 2026): I think the best thing long term would be to make a formula function that gets the balance on a specific day, that way you can skip the date shenanigans and have a regular schedule
Author
Owner

@StephenBrown2 commented on GitHub (Feb 2, 2026):

But, that would mean that formulas would have to be enabled in the initial Amount field, right? Maybe add a dropdown option:

  • is approximately
  • is exactly
  • is between
  • is formula
Image
<!-- gh-comment-id:3837326274 --> @StephenBrown2 commented on GitHub (Feb 2, 2026): But, that would mean that formulas would have to be enabled in the initial Amount field, right? Maybe add a dropdown option: - is approximately - is exactly - is between - is formula <img width="711" height="388" alt="Image" src="https://github.com/user-attachments/assets/a1124566-94d4-4f91-b9f5-9562d91adf84" />
Author
Owner

@youngcw commented on GitHub (Feb 2, 2026):

But, that would mean that formulas would have to be enabled in the initial Amount field, right? Maybe add a dropdown option:

  • is approximately
  • is exactly
  • is between
  • is formula
Image

It could be in the "set" section just like the example above. It would be nice to have that option from the beginning but not required

<!-- gh-comment-id:3837372217 --> @youngcw commented on GitHub (Feb 2, 2026): > But, that would mean that formulas would have to be enabled in the initial Amount field, right? Maybe add a dropdown option: > > * is approximately > * is exactly > * is between > * is formula > > <img alt="Image" width="711" height="388" src="https://private-user-images.githubusercontent.com/1148665/543980453-a1124566-94d4-4f91-b9f5-9562d91adf84.png?jwt=eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3NzAwNjUwMjcsIm5iZiI6MTc3MDA2NDcyNywicGF0aCI6Ii8xMTQ4NjY1LzU0Mzk4MDQ1My1hMTEyNDU2Ni05NGQ0LTRmOTEtYjlmNS05NTYyZDkxYWRmODQucG5nP1gtQW16LUFsZ29yaXRobT1BV1M0LUhNQUMtU0hBMjU2JlgtQW16LUNyZWRlbnRpYWw9QUtJQVZDT0RZTFNBNTNQUUs0WkElMkYyMDI2MDIwMiUyRnVzLWVhc3QtMSUyRnMzJTJGYXdzNF9yZXF1ZXN0JlgtQW16LURhdGU9MjAyNjAyMDJUMjAzODQ3WiZYLUFtei1FeHBpcmVzPTMwMCZYLUFtei1TaWduYXR1cmU9ZjQ2MWZiNmM1NTEyN2NkZmY2Y2Q5NGE3MjZjOTM0Y2FjZDJhZTY0MDNhZjcyMjUwNzY5ODdkNWY5M2JkZjAxNCZYLUFtei1TaWduZWRIZWFkZXJzPWhvc3QifQ.FHGlRdH8yb_eOWo23Q3ccFyt3lad3UPhmHejbEq5CVI"> It could be in the "set" section just like the example above. It would be nice to have that option from the beginning but not required
Author
Owner

@tgehrs commented on GitHub (Feb 24, 2026):

@mullermn in your successful test do you have the "Upcoming Length" set in schedules at all? When I tried to follow the steps you indicated (see first screenshot, only change is add 1 month instead of 13 days), I am seeing two upcoming transactions for today's balance with the date set for one month from today. This makes sense as the "date" in the conditions must be the date of the transaction, not the current date.

Interestingly too while the date is set as the rule determines, the chronology in the account still has it on the original date, not the date that is updated in the "set" action (see second screenshot).

I'm only a few months into Actual and haven't dug into the code yet, so wanted to hear more about your solution to this issue before going too far into it. Thanks

Image Image
<!-- gh-comment-id:3954007702 --> @tgehrs commented on GitHub (Feb 24, 2026): @mullermn in your successful test do you have the "Upcoming Length" set in schedules at all? When I tried to follow the steps you indicated (see first screenshot, only change is add 1 month instead of 13 days), I am seeing two upcoming transactions for today's balance with the date set for one month from today. This makes sense as the "date" in the conditions must be the date of the transaction, not the current date. Interestingly too while the date is set as the rule determines, the chronology in the account still has it on the original date, not the date that is updated in the "set" action (see second screenshot). I'm only a few months into Actual and haven't dug into the code yet, so wanted to hear more about your solution to this issue before going too far into it. Thanks <img width="914" height="711" alt="Image" src="https://github.com/user-attachments/assets/da2f58eb-7d81-4ea1-add4-aee63c81c7d6" /> <img width="124" height="500" alt="Image" src="https://github.com/user-attachments/assets/4bb2392a-9955-4179-953b-5630be7d1fc5" />
Author
Owner

@sophie-paige commented on GitHub (May 14, 2026):

I think the scheduled payment should reflect the cleared balance on a specific date, because sometimes transactions take several days to clear. A transaction could take place towards the end of a billing cycle but not clear until the start of the next one, so it would be counted on the next month's statement.

Example:

  • I spend $1000 on my credit card during the month of May, and all the transactions clear. The balance of my account in Actual and on and my credit card's website are identical (-$1000).
  • On May 30, I swipe my card at a restaurant for $50. I manually log the transaction in Actual, where it is uncleared. A pending charge appears on my credit card's website.
  • At the end of May 31, my billing period ends and a statement is generated. The restaurant charge is still pending, so my statement balance is -$1000.
  • In Actual, I have a schedule/rule like the one above. It triggers on May 31 and bases the value of the transaction on the cleared + uncleared balance of the account, which is $-1050.
<!-- gh-comment-id:4451941902 --> @sophie-paige commented on GitHub (May 14, 2026): I think the scheduled payment should reflect the *cleared* balance on a specific date, because sometimes transactions take several days to clear. A transaction could take place towards the end of a billing cycle but not clear until the start of the next one, so it would be counted on the next month's statement. Example: - I spend $1000 on my credit card during the month of May, and all the transactions clear. The balance of my account in Actual and on and my credit card's website are identical (-$1000). - On May 30, I swipe my card at a restaurant for $50. I manually log the transaction in Actual, where it is uncleared. A pending charge appears on my credit card's website. - At the end of May 31, my billing period ends and a statement is generated. The restaurant charge is still pending, so my statement balance is -$1000. - In Actual, I have a schedule/rule like the one above. It triggers on May 31 and bases the value of the transaction on the cleared + uncleared balance of the account, which is $-1050.
Author
Owner

@mullermn commented on GitHub (May 15, 2026):

Apologies, I saw this come in but wasn't in a position to reply at the time and then forgot about it.

@mullermn in your successful test do you have the "Upcoming Length" set in schedules at all?
I think when I set this up that option didn't exist yet, but I've just checked and my rules are set to 'use global default' now, which I have as 2 weeks.

Having now let this run for a few months it does work and it's much better than not having the rule there in terms of making sure the account doesn't run out of money at month end when everything clears down. I have had to sort out a pile up of scheduled transactions that accumulated in the account which produced some slightly strange totals (I'd have thought you'd just have one transaction that kept accumulating if you forgot to post it, but I got several for amounts that didn't entirely make sense) but I'm going to try running the schedule with 'automatically create transactions' set and see if the behaviour is more as expected. I don't normally use that because the transaction sync'd by go cardless is normally sufficient to link to a schedule, but that doesn't seem to happen with this rule.

<!-- gh-comment-id:4458667423 --> @mullermn commented on GitHub (May 15, 2026): Apologies, I saw this come in but wasn't in a position to reply at the time and then forgot about it. > [@mullermn](https://github.com/mullermn) in your successful test do you have the "Upcoming Length" set in schedules at all? I think when I set this up that option didn't exist yet, but I've just checked and my rules are set to 'use global default' now, which I have as 2 weeks. Having now let this run for a few months it does work and it's much better than not having the rule there in terms of making sure the account doesn't run out of money at month end when everything clears down. I have had to sort out a pile up of scheduled transactions that accumulated in the account which produced some slightly strange totals (I'd have thought you'd just have one transaction that kept accumulating if you forgot to post it, but I got several for amounts that didn't entirely make sense) but I'm going to try running the schedule with 'automatically create transactions' set and see if the behaviour is more as expected. I don't normally use that because the transaction sync'd by go cardless is normally sufficient to link to a schedule, but that doesn't seem to happen with this rule.
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: github-starred/actual#99027