[Bug]: Can't link with Gocardless, #1210

Closed
opened 2026-02-28 19:36:09 -06:00 by GiteaMirror · 21 comments
Owner

Originally created by @jesjimher on GitHub (Jul 8, 2024).

Verified issue does not already exist?

  • I have searched and found no existing issue
  • I will be providing steps how to reproduce the bug (in most cases this will also mean uploading a demo budget file)

What happened?

When trying to link a bank account through Gocardless, the process never finishes. Gocardless bank authentication works fine, but the last screen (saying "Please wait while we finish linking your account(-s). Do not reload or leave this page") stays forever, and Actual window eventually timeouts. Tried with several browsers (Chrome and Firefox), on Windows and Linux, on own hosted Actual or Pikahosts.

An error/warning is shown in browser developer's console, in Gocardless tab:

Failed to execute 'postMessage' on 'DOMWindow': The target origin provided ('https://bankaccountdata.gocardless.com') does not match the recipient window's origin ('https://ob.gocardless.com').

After contacting Gocardless about the issue they analyzed the session and didn't find anything wrong on their side, and state that Actual somehow isn't accessing the API the right way. Exact response is as follows:

Thank you for reporting.
Actual Budget support team need to investigate and if needed contact us for help. They need to enable allowing 2 urls when users are going through the flow.
Base url is set to https://bankaccountdata.gocardless.com/ but when connection links are generated it is set to ob.gocardless.com. Also they are able to select redirect immediate parameter to avoid long processing time. "
more info: https://bankaccountdata.zendesk.com/hc/en-gb/articles/11529611180700-Immediate-end-user-redirect-from-bank-after-consent

I was told in Discord to create an issue here, thanks in advance!

Where are you hosting Actual?

Docker

What browsers are you seeing the problem on?

Firefox, Chrome

Operating System

Linux

Originally created by @jesjimher on GitHub (Jul 8, 2024). ### Verified issue does not already exist? - [X] I have searched and found no existing issue - [X] I will be providing steps how to reproduce the bug (in most cases this will also mean uploading a demo budget file) ### What happened? When trying to link a bank account through Gocardless, the process never finishes. Gocardless bank authentication works fine, but the last screen (saying "Please wait while we finish linking your account(-s). Do not reload or leave this page") stays forever, and Actual window eventually timeouts. Tried with several browsers (Chrome and Firefox), on Windows and Linux, on own hosted Actual or Pikahosts. An error/warning is shown in browser developer's console, in Gocardless tab: > Failed to execute 'postMessage' on 'DOMWindow': The target origin provided ('https://bankaccountdata.gocardless.com') does not match the recipient window's origin ('https://ob.gocardless.com'). After contacting Gocardless about the issue they analyzed the session and didn't find anything wrong on their side, and state that Actual somehow isn't accessing the API the right way. Exact response is as follows: > Thank you for reporting. > Actual Budget support team need to investigate and if needed contact us for help. They need to enable allowing 2 urls when users are going through the flow. > Base url is set to https://bankaccountdata.gocardless.com/ but when connection links are generated it is set to ob.gocardless.com. Also they are able to select redirect immediate parameter to avoid long processing time. " > more info: https://bankaccountdata.zendesk.com/hc/en-gb/articles/11529611180700-Immediate-end-user-redirect-from-bank-after-consent I was told in Discord to create an issue here, thanks in advance! ### Where are you hosting Actual? Docker ### What browsers are you seeing the problem on? Firefox, Chrome ### Operating System Linux
GiteaMirror added the bug label 2026-02-28 19:36:09 -06:00
Author
Owner

@gschmidl commented on GitHub (Jul 18, 2024):

I'm seeing this error today as well.

@gschmidl commented on GitHub (Jul 18, 2024): I'm seeing this error today as well.
Author
Owner

@christopher-david-smith commented on GitHub (Jul 21, 2024):

I am also experiencing this same problem

I attempted a second time and after a long wait (30+ minutes) it did finish, and my accounts now show up correctly. The gocardless pop up window never appeared to complete and just sat on the "please wait" screen indefinitely (with the error message mentioned in the original post appearing in the console) but it does appear to complete if you wait long enough.

@christopher-david-smith commented on GitHub (Jul 21, 2024): ~~I am also experiencing this same problem~~ I attempted a second time and after a long wait (30+ minutes) it did finish, and my accounts now show up correctly. The gocardless pop up window never appeared to complete and just sat on the "please wait" screen indefinitely (with the error message mentioned in the original post appearing in the console) but it does appear to complete if you wait long enough.
Author
Owner

@jesjimher commented on GitHub (Jul 24, 2024):

I attempted a second time and after a long wait (30+ minutes) it did finish, and my accounts now show up correctly. The gocardless pop up window never appeared to complete and just sat on the "please wait" screen indefinitely (with the error message mentioned in the original post appearing in the console) but it does appear to complete if you wait long enough.

But doesn't Actual timeout after just a few minutes? In my case I've tried leaving both browser windows open, Gocardless stays forever, but Actual shows a timeout after a while (much less than 30 min though).

@jesjimher commented on GitHub (Jul 24, 2024): > I attempted a second time and after a long wait (30+ minutes) it did finish, and my accounts now show up correctly. The gocardless pop up window never appeared to complete and just sat on the "please wait" screen indefinitely (with the error message mentioned in the original post appearing in the console) but it does appear to complete if you wait long enough. But doesn't Actual timeout after just a few minutes? In my case I've tried leaving both browser windows open, Gocardless stays forever, but Actual shows a timeout after a while (much less than 30 min though).
Author
Owner

@alexhyett commented on GitHub (Aug 5, 2024):

This happened to me today as well on a Mac with both Firefox and Chrome. I managed to get it working by using Chrome on Windows. Interestingly, the Failed to execute 'postMessage' on 'DOMWindow' warning was still present, but it did take a while to complete, less than 30 minutes though.

@alexhyett commented on GitHub (Aug 5, 2024): This happened to me today as well on a Mac with both Firefox and Chrome. I managed to get it working by using Chrome on Windows. Interestingly, the `Failed to execute 'postMessage' on 'DOMWindow'` warning was still present, but it did take a while to complete, less than 30 minutes though.
Author
Owner

@achennu commented on GitHub (Aug 25, 2024):

I am also having problems linking an account with gocardless, and this is after several months of it working just fine. Recently, I got an error and to fix the issue I had to re-setup the link with gocardless. Since then I have made multiple attempts with the outcomes like in this issue, where the window seems to do nothing.

I now cannot even get that far because actualbudget fails to even load the list of banks. I get the message Failed loading available banks: GoCardless access credentials might be misconfigured. Please set them up again. I have tried generating new user secrets and adding them multiple times, but this has not fixed the problem.

Server version is updated to the latest version (24.8.0). This problem occurs for me on chrome on windows and on firefox on mobile.

There seems to be a related but closed issue on the server repo: https://github.com/actualbudget/actual-server/issues/374 but no resolution was posted

@achennu commented on GitHub (Aug 25, 2024): I am also having problems linking an account with gocardless, and this is after several months of it working just fine. Recently, I got an error and to fix the issue I had to re-setup the link with gocardless. Since then I have made multiple attempts with the outcomes like in this issue, where the window seems to do nothing. I now cannot even get that far because actualbudget fails to even load the list of banks. I get the message `Failed loading available banks: GoCardless access credentials might be misconfigured. Please set them up again.` I have tried generating new user secrets and adding them multiple times, but this has not fixed the problem. Server version is updated to the latest version (24.8.0). This problem occurs for me on chrome on windows and on firefox on mobile. There seems to be a related but closed issue on the server repo: https://github.com/actualbudget/actual-server/issues/374 but no resolution was posted
Author
Owner

@gzone156 commented on GitHub (Sep 5, 2024):

Still present for me in 24.9.0 with italian Fineco bank.

@gzone156 commented on GitHub (Sep 5, 2024): Still present for me in 24.9.0 with italian Fineco bank.
Author
Owner

@daic11 commented on GitHub (Sep 20, 2024):

I do have same issue.

@daic11 commented on GitHub (Sep 20, 2024): I do have same issue.
Author
Owner

@brianobliv commented on GitHub (Sep 24, 2024):

This is also happening for me with a specific bank. Waiting, as suggested in a previous comment does not fix it - an error message says: "Timed out. Please try again."

I was previously able to link this bank but unlinked to try to fix an issue where multiple transactions were being imported on every import. When relinking, I get the issue described here. I am still able to link other banks however.

Also, my bank account shows an active open banking connection to GoCardless Ltd, so has been set up successfully, so the problem appears to be on the actual webpage. I have tried with firefox, chrome, and edge. Hosted on pikapods.

@brianobliv commented on GitHub (Sep 24, 2024): This is also happening for me with a specific bank. Waiting, as suggested in a previous comment does not fix it - an error message says: "Timed out. Please try again." I was previously able to link this bank but unlinked to try to fix an issue where multiple transactions were being imported on every import. When relinking, I get the issue described here. I am still able to link other banks however. Also, my bank account shows an active open banking connection to GoCardless Ltd, so has been set up successfully, so the problem appears to be on the actual webpage. I have tried with firefox, chrome, and edge. Hosted on pikapods.
Author
Owner

@ganey commented on GitHub (Oct 6, 2024):

I can't seem to link anything at all (new user) due to this issue

@ganey commented on GitHub (Oct 6, 2024): I can't seem to link anything at all (new user) due to this issue
Author
Owner

@vednolacni commented on GitHub (Jan 26, 2025):

Any update on this?

@vednolacni commented on GitHub (Jan 26, 2025): Any update on this?
Author
Owner

@mhanel commented on GitHub (Jan 28, 2025):

I have the same problem. After establishing the connection to my bank, I'm stuck on the redirection site with this message:

Please wait while we finish linking your account(-s).
Do not reload or leave this page.

@mhanel commented on GitHub (Jan 28, 2025): I have the same problem. After establishing the connection to my bank, I'm stuck on the redirection site with this message: **Please wait while we finish linking your account(-s). Do not reload or leave this page.**
Author
Owner

@IdaEdz commented on GitHub (Jan 28, 2025):

Hello!

I used to have this issue on my Google Cloud run. The issue with GoCardless is that it needs to be allowed external network access.

I had a simple VPC-network with everything locked down. Therefore when I ditched the VPC-model I got access to GoCardless.

Review your network setup and test if you can ping GoCardless from your server - docker if that is what you use.

(I don't know how to test a docker in that way)

@IdaEdz commented on GitHub (Jan 28, 2025): Hello! I used to have this issue on my Google Cloud run. The issue with GoCardless is that it needs to be allowed external network access. I had a simple VPC-network with everything locked down. Therefore when I ditched the VPC-model I got access to GoCardless. Review your network setup and test if you can ping GoCardless from your server - docker if that is what you use. (I don't know how to test a docker in that way)
Author
Owner

@mhanel commented on GitHub (Jan 28, 2025):

Hello!

I used to have this issue on my Google Cloud run. The issue with GoCardless is that it needs to be allowed external network access.

I had a simple VPC-network with everything locked down. Therefore when I ditched the VPC-model I got access to GoCardless.

Review your network setup and test if you can ping GoCardless from your server - docker if that is what you use.

(I don't know how to test a docker in that way)

I use a PikaPod for my Actual instance. I don't think I can tinker around with network settings there.

@mhanel commented on GitHub (Jan 28, 2025): > Hello! > > I used to have this issue on my Google Cloud run. The issue with GoCardless is that it needs to be allowed external network access. > > I had a simple VPC-network with everything locked down. Therefore when I ditched the VPC-model I got access to GoCardless. > > Review your network setup and test if you can ping GoCardless from your server - docker if that is what you use. > > (I don't know how to test a docker in that way) I use a PikaPod for my Actual instance. I don't think I can tinker around with network settings there.
Author
Owner

@vednolacni commented on GitHub (Jan 28, 2025):

i use selfhost and no VPC and still the same error.

@vednolacni commented on GitHub (Jan 28, 2025): i use selfhost and no VPC and still the same error.
Author
Owner

@IdaEdz commented on GitHub (Jan 28, 2025):

i use selfhost and no VPC and still the same error.

Are you able to reach your selfhost from the internet over HTTPS? Or do you only run it locally?
( more info https://actualbudget.org/docs/config/https)

I use a PikaPod for my Actual instance. I don't think I can tinker around with network settings there.

Have you reached out to PikaPod about this? This issue was about running Actual in a docker.

@IdaEdz commented on GitHub (Jan 28, 2025): > i use selfhost and no VPC and still the same error. Are you able to reach your selfhost from the internet over HTTPS? Or do you only run it locally? ( more info https://actualbudget.org/docs/config/https) > I use a PikaPod for my Actual instance. I don't think I can tinker around with network settings there. Have you reached out to PikaPod about this? This issue was about running Actual in a docker.
Author
Owner

@mhanel commented on GitHub (Jan 28, 2025):

Have you reached out to PikaPod about this? This issue was about running Actual in a docker.
I have, but didn't receive an answer yet. But I can reach my pod over HTTPS.

@mhanel commented on GitHub (Jan 28, 2025): > Have you reached out to PikaPod about this? This issue was about running Actual in a docker. I have, but didn't receive an answer yet. But I can reach my pod over HTTPS.
Author
Owner

@vednolacni commented on GitHub (Jan 28, 2025):

i use selfhost and no VPC and still the same error.

Are you able to reach your selfhost from the internet over HTTPS? Or do you only run it locally? ( more info https://actualbudget.org/docs/config/https)

I’m able to access it over HTTPS. It’s strange because I can link PayPal through GoCardless, but not my bank account directly.

@vednolacni commented on GitHub (Jan 28, 2025): > > i use selfhost and no VPC and still the same error. > > Are you able to reach your selfhost from the internet over HTTPS? Or do you only run it locally? ( more info https://actualbudget.org/docs/config/https) I’m able to access it over HTTPS. It’s strange because I can link PayPal through GoCardless, but not my bank account directly.
Author
Owner

@IdaEdz commented on GitHub (Jan 28, 2025):

I’m able to access it over HTTPS. It’s strange because I can link PayPal through GoCardless, but not my bank account directly.

I cannot find the specifics on ports that need to be opened for GoCardless to work. It would require more in-dept work to find out for sure. If you have the time, I would suggest analyze the traffic when you try to connect GoCardless. I believe it is more than just HTTPS (443) It could be something in the 50xx range or not.

It should tell you if traffic on a specific port related to GoCardless and actual is blocked or otherwise.

This could happen on multiple levels and you need to trace it. Between application and docker, docker and host system, host system and router router and GoCardless. Most likely is a port on the host system.

What is the host system OS? Windows/Linux? OP of this ticket is using Linux - so I would believe you have Linux too.

@IdaEdz commented on GitHub (Jan 28, 2025): > I’m able to access it over HTTPS. It’s strange because I can link PayPal through GoCardless, but not my bank account directly. I cannot find the specifics on ports that need to be opened for GoCardless to work. It would require more in-dept work to find out for sure. If you have the time, I would suggest analyze the traffic when you try to connect GoCardless. I believe it is more than just HTTPS (443) It could be something in the 50xx range or not. It should tell you if traffic on a specific port related to GoCardless and actual is blocked or otherwise. This could happen on multiple levels and you need to trace it. Between application and docker, docker and host system, host system and router router and GoCardless. Most likely is a port on the host system. What is the host system OS? Windows/Linux? OP of this ticket is using Linux - so I would believe you have Linux too.
Author
Owner

@Togtja commented on GitHub (Mar 15, 2025):

For me the issue in the log said something about EAI_AGAIN which is a DNS issue
So I added a dns to the docker compose file

dns:
      - 8.8.8.8

And that worked for me

Full

services:
  actual_server:
    image: docker.io/actualbudget/actual-server:latest
    dns:
      - 8.8.8.8
    ports:
      # This line makes Actual available at port 5006 of the device you run the server on,
      # i.e. http://localhost:5006. You can change the first number to change the port, if you want.
      - '5006:5006'
    volumes:
      # Change './actual-data' below to the path to the folder you want Actual to store its data in on your server.
      # '/data' is the path Actual will look for its files in by default, so leave that as-is.
      - ./data:/data
    healthcheck:
      # Enable health check for the instance
      test: [ 'CMD-SHELL', 'node src/scripts/health-check.js' ]
      interval: 60s
      timeout: 10s
      retries: 3
      start_period: 20s
    restart: unless-stopped
@Togtja commented on GitHub (Mar 15, 2025): For me the issue in the log said something about `EAI_AGAIN` which is a DNS issue So I added a dns to the docker compose file ```yml dns: - 8.8.8.8 ``` And that worked for me Full ```docker-compose.yml services: actual_server: image: docker.io/actualbudget/actual-server:latest dns: - 8.8.8.8 ports: # This line makes Actual available at port 5006 of the device you run the server on, # i.e. http://localhost:5006. You can change the first number to change the port, if you want. - '5006:5006' volumes: # Change './actual-data' below to the path to the folder you want Actual to store its data in on your server. # '/data' is the path Actual will look for its files in by default, so leave that as-is. - ./data:/data healthcheck: # Enable health check for the instance test: [ 'CMD-SHELL', 'node src/scripts/health-check.js' ] interval: 60s timeout: 10s retries: 3 start_period: 20s restart: unless-stopped ```
Author
Owner

@devdvd commented on GitHub (Mar 18, 2025):

Thank You Togtja!

@devdvd commented on GitHub (Mar 18, 2025): Thank You Togtja!
Author
Owner

@MatissJanis commented on GitHub (Mar 19, 2025):

👋 Great to see discussions coming to a solution here. I'll close this issue off now as this is more "tech support" than an actionable bug in Actual. Feel free to continue the discussions here or if there are further issues - feel free to reach out to the community of the Discord (we do tech support there due to a significantly larger pool of people wanting to help out).

Thanks again!

@MatissJanis commented on GitHub (Mar 19, 2025): 👋 Great to see discussions coming to a solution here. I'll close this issue off now as this is more "tech support" than an actionable bug in Actual. Feel free to continue the discussions here or if there are further issues - feel free to reach out to the community of the Discord (we do tech support there due to a significantly larger pool of people wanting to help out). Thanks again!
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: github-starred/actual#1210