Skip to main content

GoCardless Setup

note

Client Version 23.7.0 and Server Version 23.7.0 or higher are required for this feature.

Create SECRET and KEY for Actual

  1. Create an account with GoCardless - https://bankaccountdata.gocardless.com/overview/.

  2. Log into your account dashboard at the same URL and select Developers->User secrets from the left side menu.

  1. Click on the '+ create new' button at the bottom left.

    • Make sure you download your secrets file since the key will not be available to you again in the account dashboard

    • These secrets will be used in Actual to make the bank sync connection

  1. Enter a name for your secrets and click Create. This is only for you to easily identify them in the GoCardless User secrets overview

  1. Download this file and keep it on your computer.

  1. Back in Actual, click on “+ Add account” at the bottom of the sidebar.

  1. Click “Set-up GoCardless for bank-sync.”

  2. You will be asked to enter your GoCardless secret ID and secret key. These values will be saved on the server, so you will only need to enter them once.

  1. Add the link to your accounts in actual (Existing or New).

    • For an existing account, click on that account, select the ... (kebab menu) in the top right, and choose Link Account

    • To create a new account with bank syncing click on the '+ Add account' link in the left menu at the bottom

  2. Select the Link your bank account button.

  3. Select your country and bank from the list and click the Link bank in browser button.

  4. Clicking Link bank in browser will redirect you to a new tab to grant access to your bank for GoCardless.

  5. Select I agree to continue with setting up the connection.

  6. If your connection was a success, you will be able to click on the continue button which allows GoCardless to connect.

  7. A progress indicator will display while GoCardless connects to your bank to get a list of your accounts.

  8. Once the connection has been made, there will be a list of your accounts that you can choose from.

  9. The final step is to select the account you want to sync and click Link account.

Frequently Asked Questions

Does Actual sync automatically with your Bank?

At this moment, it is not yet possible for Actual to automatically sync with your bank. You need to do this manually by going to "All Accounts" and pressing "Sync".

The best way to start from scratch in Actual with GoCardless?

If you are setting up Actual for the first time, it is much easier not to try to pull in historic data. This has caused some users a lot of headaches with subsequent reconciliation. The following process may be more helpful:

  1. Set up your account in Actual specifying a correct opening account balance at a recent date.
  2. Link the account to GoCardless as above
  3. Sync the account with GoCardless. You should find that only transactions subsequent to the opening account balance entry are imported, making reconciliation easy.

How many times can I sync with GoCardless? In the free tier, you can sync 50 times per month. If you sync to two different banks (with three accounts in each bank), that is counted as two connections. For more information, see the Bank Account Data API Usage topic in the GoCardless FAQ.

What if my bank only supports 90 days of historical data? If your bank limits the amount of historical data you can fetch, you need to add your bank to the list of such banks in the Actual server code.

To achieve this:

  1. Read the instructions about integrating with GoCardless: https://github.com/actualbudget/actual-server/blob/master/src/app-gocardless/README.md
  2. Toward the top is a link to the Google Docs containing data points for the GoCardless integration. Locate your bank's ID in the document.
  3. Fork the Actual server repository: https://github.com/actualbudget/actual-server/fork
  4. Edit the file src/app-gocardless/bank-factory.js.
  5. Add your bank's ID (from the Google Docs) to the BANKS_WITH_LIMITED_HISTORY list.
  6. Commit your changes and push to your fork.
  7. Create a pull request to the main Actual server repository.
  8. Add a release note in upcoming-release-notes/ describing your change (see writing good release notes).
  9. Commit your changes and push to your fork.

Once reviewed, the maintainers will comment on the pull request and merge it if acceptable. The change would then be available in the next release of the software.