mirror of
https://github.com/actualbudget/actual.git
synced 2026-07-15 22:54:03 -05:00
Open
opened 2026-06-11 12:59:05 -05:00 by GiteaMirror
·
78 comments
No Branch/Tag Specified
master
dependabot/npm_and_yarn/npm_and_yarn-cd62b4b37a
enforce-append-only-migrations-ci
claude/error-codes-worker-boundary-26i5uu
api-browser-custom-data-dir
tabedzki/feat/replacing-month-picker-with-day-picker
delay-initial-sync-until-loaded
jfdoming/mobile-app-build
cross-version-sync-compat
jfdoming/api-tokens-part-1
jfdoming/api-tokens-part-2
jfdoming/api-tokens-part-3
jfdoming/mobile-app-updates
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#117586
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 @matt-fidd on GitHub (May 11, 2026).
Original GitHub issue: https://github.com/actualbudget/actual/issues/7799
Implemented in https://github.com/actualbudget/actual/pull/7345
cc @AurelDemiri
@ProtoxiDe22 commented on GitHub (May 11, 2026):
Hello, i'm testing the flow, i have found a couple minor problems with it.
initially i tried setting up the integration with a non-complete setup on enable banking (the eb application was not activated), however, actual didn't report any errors in the frontend, and when trying to link accounts, nothing would just show up when trying to select the bank.
The logs (understandably) contained this
actual_server-1 | 2026-05-11T17:37:52.729Z actual:enable-banking:errors Enable Banking API error: status=403 body={"code":403,"message":"Application is not active"} actual_server-1 | 2026-05-11T17:37:52.730Z info: POST 200 /enablebanking/aspspsresetting the enable bank credentials from the bank sync page, the frontend throws an error, but in reality the request went through just fine and the credentials were reset. I couldn't find anything relevant in the js logs, and the server logs just reported the successful request

actual_server-1 | 2026-05-11T17:39:15.157Z actual:secrets-db setting secret 'enablebanking_applicationId' to 'null' actual_server-1 | 2026-05-11T17:39:15.164Z info: POST 200 /secretOn the last step of linking the account, the frontend (correctly) preselects an account to link. However, the confirm button of the modal is disabled, and only enables if i click "remove bank sync" and then "set up bank sync" on the same account

after re-selecting the account in actual, the button is enabled correctly and the flow terminates just fine.
I use this occasion to thank the author for their work, and the maintainers for (finally :) ) merging this.
@daneov commented on GitHub (May 12, 2026):
What happened?
I was trying to set up banking using the
sha-e479c84-alpineimage when going through theSet up bankingflow with Enable Banking credentials. I selectedEnable Banking -> Set upand provided the Application IDsome_uuidtogether withsome_uuid.pemreturned by Enable Banking.Expected: the banking setup flow completes successfully and linked accounts are available.
Actual: the flow fails during authentication/setup on Firefox, but works on Chromium even though the application details are set exactly the same.
Error message:
As far as I can see from the code, this would only happen if something is going wrong with the
userTokenfrom session storage. This seems to be browser specific, maybe some API needs to be called just a bit differently?How can we reproduce the issue?
Enable Bankingin the feature flagsBank sync<uuid.pem>file, as provided by Enable BankingUsing the same steps in Chromium works, potentially (but unverified) pointing to using a webkit-specific API? Unsure.
Where are you hosting Actual?
Docker
What browsers are you seeing the problem on?
Firefox
Operating System
Linux
@emiltb commented on GitHub (May 12, 2026):
I was able to connect to Enable Banking and link it to my account.
A minor detail, that I noticed, is that the list of banks to select from is not sorted - that would be a nice touch and make it slightly faster to find the bank you need.
Even though my account was linked and during linking it showed the right balance, I was not able to succesfully sync it and got a network-error.
When trying to sync to an existing account in Actual:
When trying to sync to a newly created account in Actual:
I'm in doubt about how this works in terms of my network setup and the callback-url. Does that need to be accessible from outside the network for this to work? I host my edge test-instance locally, and the URL is only available internally. I tried briefly opening my test instance up to outside access, but that made no difference.
Edit: I just tried linking accounts over again, but to no avail. I noticed this time, that it actually also gives an error, so it never successfully links the account, with basically the same network-failure as above.
Browser: Tried both Firefox and Chromium
OS: Linux
Environment:
edge-alpineas of 2026-05-12 (I'm not completely sure of the exact version) image in docker, through caddy reverse proxy@geekuality commented on GitHub (May 12, 2026):
Works fine for me, using Firefox 150.0.1 on a Mac to access Actual on a Linux server over https. Actual installed from NPM
@actual-app/sync-server@26.6.0-nightly.20260512.@geekuality commented on GitHub (May 12, 2026):
But now what I came here to do, actual feedback: There is something funny happening with confirmed future payments (on an account) and holds (on a card), the upcoming charge amount is put into "deposit" and screws up things. I don't know yet what happens when the upcoming payment is turned into a real statement entry or a hold matures into an actual charge.
Here is an example of an account that has two upcoming charges from it (turned running balance on to highlight the effect):
My current enviroment is listed in the post above.
@Tatcher00 commented on GitHub (May 13, 2026):
It worked without any problems for me. I’m using a Linux server running 26.6.0-nightly.20260512.
Tested with Chromium. The connection via Enable Banking worked without any error messages once I’d linked my bank.
All transactions were synchronised correctly (German bank DKB)
Thanks for your work
@oskardotglobal commented on GitHub (May 14, 2026):
Runs perfectly with one of my banks (German DKB) as reported by @Tatcher00, but my other bank Berliner Sparkasse refuses to sync:
(Linking works though)
@matt-fidd commented on GitHub (May 14, 2026):
Out of interest, are there any logs in your server logs?
@oskardotglobal commented on GitHub (May 14, 2026):
No, unless I have to enable debug logging or something?
@tylerlinquata commented on GitHub (May 14, 2026):
The "start date" when creating a new, linked account seems to be ignored. I selected 5/13/2026, but it appears that the entire transaction history of the account synced (371 uncategorized transactions).
@geekuality commented on GitHub (May 14, 2026):
I'm now getting errors with one bank (S-Pankki, Finland), but only for two of several accounts there.
EDIT: It is also a bank holiday today in Finland, if that would matter - can't figure out how it could.
@geekuality commented on GitHub (May 14, 2026):
You do. Set env
DEBUG=actual:enable-banking:appto activate debug only for this plugin.@emiltb commented on GitHub (May 14, 2026):
Where to add that? I tried adding it as en var to my compose.yml and redeployed my edge-server, but saw no difference in the log output.
@emarforio commented on GitHub (May 15, 2026):
Tried out the bank sync and have to say that I love it! This is the first integration that I have gotten to work with EU banks. I have tried out the web interface as well as the JavaScript API and no issues at all using my Swedish bank. Great job!
@Calychas commented on GitHub (May 16, 2026):
Hey! Thanks a lot for the feature!
I had no problems linking 5 accounts with Erste Bank Poland (former Santander Bank Poland), both personal and business accounts, and Revolut as well
@insomniacslk commented on GitHub (May 18, 2026):
Worked just fine with N26 and Revolut. When adding Fineco Italy, a traditional bank, I get an empty list of accounts after successful authorization of the main account, as per screenshot
@alcroito commented on GitHub (May 19, 2026):
Tried the new integration with N26 production account.
Noticed the following.
When syncing multiple accounts from the same bank, and setting up sync for all of them, transfer transactions between accounts are not properly set up.
Instead a new Payee gets created.
The one transfer at the bottom was manually created before syncing.
@riley211 commented on GitHub (May 19, 2026):
Unfortunately this only supports very limited banks in the UK - could we investigate using something like TrueLayer?
@filiptrplan commented on GitHub (May 19, 2026):
Same with OTP Banka in Slovenia.
@matt-fidd commented on GitHub (May 19, 2026):
I'd suggest that a first port of call on some of these issues would be to contact Enable Banking and see if they can provide any insight.
@mnogueron commented on GitHub (May 20, 2026):
You can check on EB console all the requests made by the integration. If you have errors, you can check EB's error, plus the bank layer error.
On my side, the initial pull worked flawlessly, now if I try to sync it fails and EB and my bank report an invalid
dateFromwith aWRONG_TRANSACTIONS_PERIODon EB's side.@geekuality commented on GitHub (May 20, 2026):
@matt-fidd @mnogueron Good pointers, I did find irregularities from EB request logs - did submit a support ticket there. 😌
@filiptrplan commented on GitHub (May 21, 2026):
Nevermind, it was a stupid mistake. I have a restricted production app and forgot to link the account in the EB dashboard first.
@insomniacslk commented on GitHub (May 21, 2026):
...I did the same mistake, thanks for catching that. Feedback for the developers: if there's an error message from EB, it could be bubbled up? Alternatively there could still be a warning from Actual that this could be caused by an account that hasn't been linked on EB
May 21, 2026 20:05:32 Filip Trplan @.***>:
@alanwflood commented on GitHub (May 22, 2026):
I've spotted on issue where Bank of Ireland will only allow you to log in as a business user, it gives no option to log in with a personal account.
@mnil commented on GitHub (May 22, 2026):
@mnogueron Do you know if this a problem with actualserver/EB integration or EB itself? I am getting the same problem, initial link and sync works, but the day after I get an error with
WRONG_TRANSACTIONS_PERIOD.@mnogueron commented on GitHub (May 22, 2026):
@mnil It seems EB obfuscate any query params which makes debugging impossible.
The initial calls shows the same call to a
/transactionendpoint to my bank withdateFrom=0000-00-00&dateTo=0000-00-00which works fine, but the next ones have the same params and fails.I have a strong feeling that these zeros are fillers.
Although, I also see that my app is flagged as restricted and I can ask to make it unrestricted. This is very blurry as to what it's supposed to do. Are you in the same situation?
@geekuality commented on GitHub (May 23, 2026):
I got a reply from EB regrding that
WRONG_TRANSACTIONS_PERIODerror:@mnil commented on GitHub (May 23, 2026):
thanks for this, I think it's likely it's and off-by-one error in the date handling so created a PR: https://github.com/actualbudget/actual/pull/7930
Not sure how to test it in production env though.
@mnogueron commented on GitHub (May 23, 2026):
I was about with my dev instance but now I'm having an
Invalid status PSU-IP-Addresson my dev instance.I'll create a ticket on EB's side.
@stevenhansel commented on GitHub (May 24, 2026):
I'm using Commerzbank, and there is a problem in the
"pending"transactions that all the dates object are empty.The Enable Banking API was successful and everything from the API side is working, only from the client side worker is failing, due to the empty dates.
I was able to resolve this temporarily by going to Bank Sync > Edit the Enable Banking Bank Sync Settings > Uncheck the Import Pending Transactions Checkbox.
The Pending Logs from the Enable Banking API:
Console errors from the Browser:
@mnil commented on GitHub (May 25, 2026):
@matt-fidd or @MatissJanis I have now tested this on my local instance and it fixes the problems I was having. Would be nice with a review before you cut the 2026.6 release.
@DmitriiGoi commented on GitHub (May 25, 2026):
i was using the feature from branch for one month, and found out no bugs, thx for the development, happy to have this feature in release version
@nickmansrob commented on GitHub (May 26, 2026):
Very happy to see this implemented! Found one small bug: when going to the bank sync page and clicking 'Link account' on an already existing, manual account and then following the linking process, I cannot click 'Link accounts' in the Link Accounts modal. The Actual Budget account was already prefilled since I use the 'Link account' button. When clicking on the account and selecting it again, the 'Link accounts' button became clickable.
@chrismin13 commented on GitHub (May 26, 2026):
+1 on this, plus we need some more docs before this goes in a production build, as it isn't clear that:
a) you can only find this via the browser for the server, not the app or locally
b) you need https working
c) you need to FIRST connect the app from Enable, then through Actual
And one more bug: the verification for the Application ID field isn't very strict, I had a
)at the end of my UUID and it was just accepted, leading to an empty list of banks after selecting my country, which took me a sec to figure out. Not a big deal, just something that could be easily solved and improve the experience for everyone.Thanks for your efforts!
@matt-fidd commented on GitHub (May 26, 2026):
If anyone feels like writing up some docs before this is released at the start of next month, that would be really useful!
@mnil commented on GitHub (May 26, 2026):
I wrote up something here: https://github.com/actualbudget/actual/pull/7961/changes#diff-b1eec69c3d5896824cacc6c465d172a5fbb2756894eb9c887c663d1bda4ec059
I don't consider them complete but not sure what else is needed, so please add feedback.
@mnil commented on GitHub (May 31, 2026):
@matt-fidd @MatissJanis This might be a candidate for cherry-picking before release, I will try to get it through CI ASAP,
IMO it's quite problematic when linking accounts from the account page without this fix.
@MatissJanis commented on GitHub (May 31, 2026):
That one is a bit too high for my taste of risk (too short period until the next release to catch regressions there).
Lets keep it for the 26.7.0 release.
@mnil commented on GitHub (Jun 1, 2026):
@mjtf3 did you follow the docs? i.e. enabled the experimental feature?
@bartoszsporek commented on GitHub (Jun 1, 2026):
Exactly the same here with mBank (Poland)
@matt-fidd commented on GitHub (Jun 1, 2026):
What banks and accounts are provided is down to Enable Banking, you'll need to open a ticket with them about that
@bartoszsporek commented on GitHub (Jun 1, 2026):
Not sure since earlier I was using Enable Actual for syncing and it worked fine, so it's not Enable Banking issue.
@wolepp commented on GitHub (Jun 1, 2026):
In Enable Banking you can choose either "Personal" or "Business" account. First one redirects to personal account, while the business redirects to business one.
However in Actual Budget there is only one "mBank" option, and it redirects to the business one. The expected case would be to provide both options, or at least to redirect to the "personal" option (I suspect this is much more used use case)
It looks like inSee Nustinua's responseenablebanking.tsthere is no info about "Usage" from the Enable Banking API:AccountResource.usageandUsageenum@Nustinua commented on GitHub (Jun 1, 2026):
I opened a PR for this here: #8028
The Enable Banking request field is
psu_typerather thanPSUType.The PR adds a Usage type selection in the bank linking form, defaults it to
personal, and forwards the selected value through the auth flow to the final/authrequest.@Cesc1986 commented on GitHub (Jun 2, 2026):
What happened?
When using the newest Enable Banking feature, for my German bank ING, the notes always contain "mandatereference:,creditorid:,remittanceinformation" before the actual info.
This was already reported here and discussed including a possible hot fix. https://github.com/actualbudget/actual/pull/7345#issuecomment-4232655603
How can we reproduce the issue?
Install latest Actual Budget Client-Version: v26.6.0 and Server-Version: v26.6.0
Use Enable Banking with the Bank "ING" in Germany. Please note that for another German Bank "DKB" it doesn't show this bug, so it seems Bank specific.
@mortiy commented on GitHub (Jun 2, 2026):
Confirming this issue.
Also, if I already have bank accounts linked on https://enablebanking.com/cp/applications side, can't we reuse that links on Actual Budget side, without relink process?
@emiltb commented on GitHub (Jun 2, 2026):
I still get a
network-errorwhen trying to sync my accounts on 2026.6.{ meta: undefined, reason: "network-failure", type: "PostError", message: 'Failed syncing account "Emil Tveden Bjerglund."' }I can set up Enable Banking successfully. When I link an account, it lists my accounts and the amounts in the accounts correctly, so the connection to EB definitely works. But syncing the transactions fail, with no real useful output in the console log. I also tried adding the
DEBUG=actual:enable-banking:appenv var to my actual-server, as suggested above, but I see no related output in the server log either.@Nustinua commented on GitHub (Jun 2, 2026):
Local network? You could try this PR https://github.com/actualbudget/actual/pull/8032
@nickmansrob commented on GitHub (Jun 2, 2026):
Minor annoyance:
When the Enable Banking authorization at the bank expires (for example when testing this feature locally with that bank, the authorization at my production server expired), I get, as expected a notification at the top of the account, mentioning I should re-link my account. When clicking on it, I can do the entire authentication flow again, only to find I cannot select the Actual account, because it is still linked.
The best way to fix this would probably be to automatically unlink the account when clicking on the error message, but this should only happen on errors which prompt to re-link, not on general 'Failed to sync' errors, as this not always means an expired token.
@matt-fidd commented on GitHub (Jun 2, 2026):
I think that's fixed in master now, in the meantime you can deselect and reselect the account in the dropdown in that modal to get around it
@nickmansrob commented on GitHub (Jun 2, 2026):
Did you mean this PR: https://github.com/actualbudget/actual/pull/8006? If so, I may have not explained clearly. The dropdown does not contain the account I want to link my Enable Banking connection to, as it already is linked to the, now expired, token. The dropdown obviously only shows accounts which are not linked to anything, therefore I need to first manually unlink the account in Actual before attempting to link it again, which defeats the purpose of the notification linking to the Enable Banking connection page.
@alby258 commented on GitHub (Jun 3, 2026):
Enable Banking integration feedback (v26.6.0, ING Italy + BBVA Italy)
Setup note: Accounts only appear in Actual if they are first linked via the Enable Banking web portal, then added again from within Actual.
ING Italy – payee/notes not split on current account transactions
On the current account (C/C), both

payeeandnotesfields are mapped to the same concatenated string (e.g."Operazione Mastercard del 03/06/2026 alle ore 0..."), making it impossible to distinguish the counterparty from the transaction description. This affects both incoming and outgoing transactions.The credit card account behaves correctly —

payeeNameis populated as expected (e.g."Amazon Prime LUXEMBOURG LUX").BBVA Italy – language forced to Spanish
The BBVA Italy authorization flow opens in Spanish regardless of the user's locale or country selection. The OTP/SMS confirmation is also sent in Spanish. Field mapping works correctly and the sync functions, but all imported transaction strings are in Spanish (e.g.

"TRANSFERENCIAS // TRANSFERENCIA REALIZADA..."), which makes rule matching and payee normalization harder for Italian users.@PimVanLeeuwen commented on GitHub (Jun 3, 2026):
Maybe a dumb questions, but even on v26.6.0 I still do not see the option for Enable Banking:
Am I doing something wrong or is there some alternative documentation about how to set this up?
@MrAdam commented on GitHub (Jun 3, 2026):
You need to enable it in
Experimental features, underAdvanced SettingsinSettings@salixh5 commented on GitHub (Jun 3, 2026):
I'm using German bank belonging to Volksbank group called "GLS Gemeinschaftsbank". In my phone's banking application I can see my current account and credit card:
When I try to link my accounts via Enable Banking, only my bank account shows up with no option to choose my credit card at any point. Is this a general restriction or am I missing something?
@emiltb commented on GitHub (Jun 3, 2026):
I just tried building an image from 8032 and deploying it in place with my usual server. I still get the exact same
network-failureerror. I saw this in the log, confirming that it did run the #8032 version.actual_server-1 | 2026-06-03T19:56:18.473Z actual:enable-banking:app Skipping PSU headers because PSU IP is local/privateMy setup: I host Actual in Docker and access it on my own domain through Caddy (also running in Docker), which takes care of HTTPS and a certificate from Lets Encrypt.
Edit: Wait! I just tried syncing two other accounts and that worked flawlessly (on
latest). Same bank. But for some reason, i consistently getnetwork-failurewhen trying to sync my main account.@second-string commented on GitHub (Jun 4, 2026):
If anyone else is getting the "Invalid URL" error from Enable Banking when creating your application, it's not talking about your callback URL, it's talking about one of the two URLS after (privacy policy and terms of service). I had typed in
actualbanking.orgmanually for both, but it needs anhttpsprefix.So both need to be
https://actualbanking.orgor whatever you want it to be. Spent an hour banging my head against this assuming it was the oauth callback URL that was a problem so i figured I'd share for anyone else. Maybe could be included in the docs for Actual Budget if they're expanded as well. Thanks for adding the support!@AntonioGuerrisi commented on GitHub (Jun 4, 2026):
I tried with Revolut and PayPal. The auth procedure works well, but Actual doesn't find any accounts to sync.
Other traditional bank accounts are working fine.
@wneuhaus commented on GitHub (Jun 4, 2026):
Did you link the accounts in enable banking first? I had the same issue and after linking them, I could select them in Actual.
@wneuhaus commented on GitHub (Jun 4, 2026):
Same limitation with Raiffeisen Ö. I can only choose the „Giro“ account. Must be bank specific.
@Cesc1986 commented on GitHub (Jun 4, 2026):
Revolut in Germany works without a problem for me. Did you check indeed whether you linked your account first in enable banking?
@AntonioGuerrisi commented on GitHub (Jun 4, 2026):
Linking first the accounts in Enable Banking, them working well both Revolut and PayPal.
for the traditional bank it was not needed
Thanks
@Dreptschar commented on GitHub (Jun 5, 2026):
It dosnt load a list of banks for me
@cichond commented on GitHub (Jun 5, 2026):
Please add support for the PSUType parameter.
According to the Enable Banking API documentation (https://enablebanking.com/docs/api/reference/#startauthorizationrequest), the default value is business for StartAuthorizationRequest. However, some banks use different authorization flows for private and corporate customers. When PSUType cannot be specified, authorization may fail or become unavailable for banks that require the customer type to be explicitly selected.
Supporting PSUType would improve compatibility with banks that distinguish between retail and corporate banking authorization processes.
@mnil commented on GitHub (Jun 5, 2026):
@cichond https://github.com/actualbudget/actual/pull/8028
@wojciechbielecki commented on GitHub (Jun 6, 2026):
Thanks for this feature!
I'm trying to set this up and I'm having trouble registering the application in the Enable Banking control panel. I guess my issue is caused by using the Desktop App (26.6.0 on macOS 26.5.1).
The app tells me enter
app://actual/enablebanking/auth_callbackin theAllowed redirect URLs (one per line)box. However Enable Banking rejects this with an error:URL "app://actual/enablebanking/auth_callback" uses unsupported schemeI'm assuming the redirect URL needs to be reachable via the internet. So is there a way to use Enable Banking with the desktop app? Do I need to set up a reverse proxy?
If it's not possible to set up Enable Banking using the desktop app with the default configuration, I'd suggest the app shouldn't provide the
app://actual/enablebanking/auth_callbackand instead it could link the user to appropriate docs.@Tuphal commented on GitHub (Jun 7, 2026):
I had the same issue, because I missed following sentence in the docs:
then link the accounts you want in the Enable Banking interfaceAfter linking my bank account on the EnableBanking site, the banks in AB loaded and I could select my bank again and linked it a second time. Worked with my german bank flawless !
Thank you for this feature
@wojciechbielecki commented on GitHub (Jun 7, 2026):
https://github.com/actualbudget/actual/issues/7799#issuecomment-4640274862
I've figured it out. I've signed up for ngrok, ran
ngrok http --url=my-domain.ngrok-free.dev 5007and puthttps://my-domain.ngrok-free.dev/enablebanking/auth_callbackas the redirect URL in the Enable Banking panel.Still, setting up sync in the Actual app wasn't working (
An error occurred while linking your account, sorry! The potential issue could be: Redirect URI not allowed)I had to open Actual in browser by navigating to
https://my-domain.ngrok-free.dev/and only then could I link my bank account via Enable Banking. But after having done that, the sync is now working directly in the desktop app as well. So the reverse proxy was actually only needed for the set up.@brunotraverso commented on GitHub (Jun 7, 2026):
AIB Ireland: Actual UI redirects to AIB Business (iBB) instead of AIB Personal
Reporting a specific bug found while testing Enable Banking with Irish banks.
Setup
What happens
When linking via Actual UI:
https://auth.aib.ie/as/authorization.oauth2— iBB (Internet Business Banking) login, requires business credentials I don't haveWorkaround that confirms the bug
Linking AIB via the Enable Banking dashboard directly (https://enablebanking.com/cp/applications → Activate by linking accounts) correctly presents the Personal vs Business choice, and AIB Personal links successfully. The issue is specifically in Actual's UI flow, it appears to default to the AIB Business ASPSP instead of offering choice.
Other Irish banks tested
Note: AIB has two distinct PSD2 ASPSPs in Enable Banking —
aib_ie(Personal) andaib_business_ieor similar (Business). The Actual UI might be hardcoded to the wrong one or selecting first match.@wnhrt commented on GitHub (Jun 8, 2026):
Actual Budget version: v26.6.0 (Docker
nightly-alpine)Bank country: Germany
Bank name: "Sparkasse Allgäu"
When running
Bank Syncon https://example.com/accounts/UUID, I get following error:and in the browser console:
@MatissJanis commented on GitHub (Jun 8, 2026):
Related: https://github.com/actualbudget/actual/issues/8105
@joostvanopdorp commented on GitHub (Jun 9, 2026):
Merging existing (manual) transactions with synced ones doesn't always seem to work as expected. Some of those transactions get synced again. When I just delete the old transactions and adjust the newly synced ones, it works correctly. Might have something to do with the transaction id? Maybe it gets lost in a merge?
@emilgeo commented on GitHub (Jun 9, 2026):
https://github.com/actualbudget/actual/pull/8028#issuecomment-4659290844
@marcodallagatta commented on GitHub (Jun 10, 2026):
Do we know if Enable Banking itself goes down once in a while? I keep having very generic errors that seem to resolve themselves after a while...
If I try to link a new account it goes through with the auth, but then I don't see any row in the table where I am supposed to select the starting date/balance/etc, and old account don't sync at all.
@TechBreakHelp commented on GitHub (Jun 11, 2026):
I use the last version (26.6.0) of both server and client side.
I have Actual installed on a Ubuntu server reachable via ethernet.
I use a basic installation without Docker.
I wanted to use EnableBanking since GoCardless do not sync correctly when button Sync has been pressed.
But after uploading the private key of the new EnableBanking application, it throws an error:
Could not validate the credentials. Please check your Application ID and secret key.I inspected the network traffic and the endpoint /enablebanking/configure is not reachable (error 404).
I noticed that src/app.js has:
EnableBanking is missing from import.
It is missing even from the list of handlers:
How can I solve?
@matt-fidd commented on GitHub (Jun 11, 2026):
I'm pretty sure you can't actually be on version 26.6.0. Enable banking is definitely imported in sync-server/src/app.ts
044a4ad47a/packages/sync-server/src/app.ts (L14)and it's there in the handlers
044a4ad47a/packages/sync-server/src/app.ts (L65)@TechBreakHelp commented on GitHub (Jun 11, 2026):
How should I update correctly than?
Which command in CLI I have to use?