Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Bug]: Linking account using GoCardless fails when using Desktop app #3210

Closed
2 tasks done
deermo opened this issue Aug 6, 2024 · 3 comments · Fixed by #3212
Closed
2 tasks done

[Bug]: Linking account using GoCardless fails when using Desktop app #3210

deermo opened this issue Aug 6, 2024 · 3 comments · Fixed by #3212
Labels
bank sync Related to automatic bank syncing bug Something isn't working electron Issues related to the desktop app (electron)

Comments

@deermo
Copy link

deermo commented Aug 6, 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?

After some issues, I tried to re-link one of my on-budget accounts using GoCardless. However, linking failed, but worked in the web version.

Setup:

  • Client version: v24.8.0 (macOS 14.5 (23F79))
  • Server version: v24.8.0 (PikaPods)
  • Budget running for about two months with a lot of categories and approx. 10 accounts

Here's what I did

  1. Press "Link Account"
  2. Press "Link bank account with GoCardless" (credentials had been entered before and were working).
  3. Select "Germany"
  4. Select "ING" as bank (however, failed using PayPal and ComDirect as well)
  5. Press "Link bank in browser"
    --> Wheel was spinning
    --> Back to the form (Country/Bank) with error: "An error occurred while linking your account, sorry!"

The log from PikaPods gave:
{ "request": { "method": "POST", "url": "/api/v2/requisitions/", "headers": { "Accept": "application/json", "Content-Type": "application/json", "User-Agent": "Nordigen-Node-v2", "Authorization": "Bearer [REDACTED]", "Content-Length": "248", "Accept-Encoding": "gzip, compress, deflate, br", "Host": "bankaccountdata.gocardless.com", "Connection": "close" }, "body": { "redirect": "undefined/gocardless/link", "institution_id": "ING_INGDDEFF", "redirect_immediate": false, "account_selection": false, "user_language": "en", "agreement": "[REDACTED]", "reference": "[REDACTED]" } }, "response": { "status": 400, "statusText": "Bad Request", "headers": { "server": "nginx", "date": "Mon, 05 Aug 2024 16:44:35 GMT", "content-type": "application/json", "content-length": "121", "vary": "Accept, Accept-Language, Cookie", "allow": "GET, POST, HEAD, OPTIONS", "x-c-uuid": "[REDACTED]", "x-u-uuid": "[REDACTED]", "cache-control": "no-store", "x-frame-options": "DENY", "content-language": "en", "x-content-type-options": "nosniff", "referrer-policy": "same-origin", "x-backend-server": "ui", "x-response-bad-id": "True", "client-region": "DE", "cf-ipcountry": "", "strict-transport-security": "max-age=31556926; includeSubDomains;", "via": "1.1 google", "alt-svc": "h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000", "connection": "close" }, "data": { "redirect": "[Object]", "status_code": 400 } } }

The operators from PikaPods checked if the domain gocardless is reachable, and it was.

The issue has been discussed on Discord with @MatissJanis

My thoughts:

  • The issue only exisits in the Mac app, while it works in the web version
  • There is a "undefined" in the log from the server (see above, body->redirect), not sure if this could be part of the problem

Where are you hosting Actual?

Pikapods

What browsers are you seeing the problem on?

Desktop App (Electron)

Operating System

Mac OSX

@deermo deermo added the bug Something isn't working label Aug 6, 2024
@MatissJanis MatissJanis added help wanted Extra attention is needed electron Issues related to the desktop app (electron) bank sync Related to automatic bank syncing labels Aug 6, 2024
@helibom
Copy link

helibom commented Aug 6, 2024

I'd like to add that I'm experiencing the same bug.
I'm using the Electron app, as I can't sign up for the web app. I use Fly.io for hosting the server.

Client version: v24.8.0 (Windows 11)
Server version: v24.8.0 (Fly.io)
Recently installed the Electron app and deployed latest image on Fly.io, as per documentation.

Here's what I did:

  1. Press "Link Account"
  2. Press "Link bank account with GoCardless" (credentials had been entered before).
  3. Select "Sweden"
  4. Select "Skandia Banken" as bank (however, failed using "SEB Kort Bank AB" as well)
  5. Press "Link bank in browser"
    --> Wheel was spinning
    --> Back to the form (Country/Bank) with error: "An error occurred while linking your account, sorry!"

Where are you hosting Actual?

Fly.io

What browsers are you seeing the problem on?

Electron Desktop App

Operating System

Windows 11

Excerpt from Fly.io logs

Error /gocardless/create-web-token h [AxiosError]: Request failed with status code 400
  at te (file:///app/node_modules/nordigen-node/dist/index.esm.js:13:914)
  at IncomingMessage.<anonymous> (file:///app/node_modules/nordigen-node/dist/index.esm.js:17:16315)
  at IncomingMessage.emit (node:events:529:35)
  at endReadableNT (node:internal/streams/readable:1400:12)
  at process.processTicksAndRejections (node:internal/process/task_queues:82:21) {
code: 'ERR_BAD_REQUEST',
config: {
<...>

@MikesGlitch
Copy link
Contributor

I've fixed it here: #3212
Downloads: https://github.com/actualbudget/actual/actions/runs/10285705452

Could someone give it a quick check?

@deermo
Copy link
Author

deermo commented Aug 7, 2024

Thank you, @MikesGlitch! Just tested it, and now it works on my MacBook.

@github-actions github-actions bot removed the help wanted Extra attention is needed label Aug 7, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bank sync Related to automatic bank syncing bug Something isn't working electron Issues related to the desktop app (electron)
Projects
None yet
Development

Successfully merging a pull request may close this issue.

4 participants