Skip to content

Commit

Permalink
website/integrations: add Actual budget (#12590)
Browse files Browse the repository at this point in the history
* Update sidebarsIntegrations.js

Signed-off-by: NiceDevil <17103076+nicedevil007@users.noreply.github.com>

* Create index.mdx for Actual Budget

Signed-off-by: NiceDevil <17103076+nicedevil007@users.noreply.github.com>

* Update website/integrations/services/actual-budget/index.mdx

Co-authored-by: 4d62 <git@sdko.org>
Signed-off-by: NiceDevil <17103076+nicedevil007@users.noreply.github.com>

* Changes made for comments of @4d62

Signed-off-by: NiceDevil <17103076+nicedevil007@users.noreply.github.com>

* warning about first user

Signed-off-by: NiceDevil <17103076+nicedevil007@users.noreply.github.com>

* make lint & make website...

* removed old dev stuff changes

* index.mdx aktualisieren

Co-authored-by: Tana M Berry <tanamarieberry@yahoo.com>
Signed-off-by: NiceDevil <17103076+nicedevil007@users.noreply.github.com>

* index.mdx aktualisieren

Co-authored-by: Tana M Berry <tanamarieberry@yahoo.com>
Signed-off-by: NiceDevil <17103076+nicedevil007@users.noreply.github.com>

* index.mdx aktualisieren

Co-authored-by: Tana M Berry <tanamarieberry@yahoo.com>
Signed-off-by: NiceDevil <17103076+nicedevil007@users.noreply.github.com>

* index.mdx aktualisieren

Co-authored-by: Tana M Berry <tanamarieberry@yahoo.com>
Signed-off-by: NiceDevil <17103076+nicedevil007@users.noreply.github.com>

* index.mdx aktualisieren

Co-authored-by: Tana M Berry <tanamarieberry@yahoo.com>
Signed-off-by: NiceDevil <17103076+nicedevil007@users.noreply.github.com>

* index.mdx aktualisieren

Co-authored-by: Tana M Berry <tanamarieberry@yahoo.com>
Signed-off-by: NiceDevil <17103076+nicedevil007@users.noreply.github.com>

* Remove step 3 and marketing Blabla

* index.mdx aktualisieren

Co-authored-by: Tana M Berry <tanamarieberry@yahoo.com>
Signed-off-by: NiceDevil <17103076+nicedevil007@users.noreply.github.com>

* index.mdx aktualisieren

Co-authored-by: Tana M Berry <tanamarieberry@yahoo.com>
Signed-off-by: NiceDevil <17103076+nicedevil007@users.noreply.github.com>

* index.mdx aktualisieren

Co-authored-by: Tana M Berry <tanamarieberry@yahoo.com>
Signed-off-by: NiceDevil <17103076+nicedevil007@users.noreply.github.com>

* index.mdx aktualisieren

Co-authored-by: Tana M Berry <tanamarieberry@yahoo.com>
Signed-off-by: NiceDevil <17103076+nicedevil007@users.noreply.github.com>

* index.mdx aktualisieren

Co-authored-by: Tana M Berry <tanamarieberry@yahoo.com>
Signed-off-by: NiceDevil <17103076+nicedevil007@users.noreply.github.com>

* index.mdx aktualisieren

Co-authored-by: Tana M Berry <tanamarieberry@yahoo.com>
Signed-off-by: NiceDevil <17103076+nicedevil007@users.noreply.github.com>

* index.mdx aktualisieren

Co-authored-by: Tana M Berry <tanamarieberry@yahoo.com>
Signed-off-by: NiceDevil <17103076+nicedevil007@users.noreply.github.com>

* index.mdx aktualisieren

Co-authored-by: Tana M Berry <tanamarieberry@yahoo.com>
Signed-off-by: NiceDevil <17103076+nicedevil007@users.noreply.github.com>

* index.mdx aktualisieren

Co-authored-by: Tana M Berry <tanamarieberry@yahoo.com>
Signed-off-by: NiceDevil <17103076+nicedevil007@users.noreply.github.com>

* index.mdx aktualisieren

Co-authored-by: Tana M Berry <tanamarieberry@yahoo.com>
Signed-off-by: NiceDevil <17103076+nicedevil007@users.noreply.github.com>

* Update website/integrations/services/actual-budget/index.mdx

Co-authored-by: 4d62 <git@sdko.org>
Signed-off-by: NiceDevil <17103076+nicedevil007@users.noreply.github.com>

* hope that helps a bit => step 6

remove the part about client id and secret with description that it is from authentik because step 6 clears this already up and during the setup of the provider in authentik there is a hint that ID and secret is need later in this guide

Signed-off-by: NiceDevil <17103076+nicedevil007@users.noreply.github.com>

* Update index.mdx

now with italic instead of codestuff for placeholders or variables

Signed-off-by: NiceDevil <17103076+nicedevil007@users.noreply.github.com>

---------

Signed-off-by: NiceDevil <17103076+nicedevil007@users.noreply.github.com>
Co-authored-by: 4d62 <git@sdko.org>
Co-authored-by: nicedevil007 <nicedevil007@users.noreply.github.com>
Co-authored-by: Tana M Berry <tanamarieberry@yahoo.com>
  • Loading branch information
4 people authored Jan 15, 2025
1 parent 41aa36d commit 99639a9
Show file tree
Hide file tree
Showing 2 changed files with 83 additions and 0 deletions.
82 changes: 82 additions & 0 deletions website/integrations/services/actual-budget/index.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,82 @@
---
title: Integrate with Actual Budget
sidebar_label: Actual Budget
---

# Actual Budget

<span class="badge badge--secondary">Support level: Community</span>

## What is Actual Budget

> Actual Budget is a web-based financial management software. It helps users track and manage their income, expenses, and budgets in real time.
> The software compares actual spending with planned budgets to improve financial decisions.
>
> -- https://actualbudget.org/
>
> This guide explains how to configure Actual Budget to use authentik as the OAuth provider for logging in to the Web GUI.
## Preparation

The following placeholders are used in this guide:

- _actual.company_ is the FQDN of the Actual Budget install.
- _authentik.company_ is the FQDN of the authentik install.

## authentik configuration

[Create](https://docs.goauthentik.io/docs/add-secure-apps/applications/manage_apps#add-new-applications) an OAuth2/OpenID provider and an application in authentik. Use the following parameters for the OAuth2/OpenID provider:

**Provider:**

- Name: _SP-actual_
- Client type: _Confidential_
- Redirect URIs/Origins (RegEx): https://_actual.company_/openid/callback
- Signing Key: Select any available signing keys.

:::info
Actual Budget supports the RS256 algorithm. Be aware of this when choosing the appropriate signing key.
:::

Take note of the Client ID and Client Secret; you will need to provide them to Actual Budget in the last step.

Leave the remaining values as default. Durations can be adjusted as needed.

**Application:**

- Name: _Actual Budget_
- Slug: _actual_
- Launch URL: https://_actual.company_/

## Actual Budget configuration

1. Sign in to Actual Budget with a browser of your choice and access your budget by clicking on its name.

2. Click your budget in the top-left corner to open the dropdown menu and select **Settings**.

3. Scroll to the bottom and select **Show advanced settings**. Scroll again and select **I understand the risks, show experimental features**.

4. To enable the option **OpenID authentication method** select the checkbox next to it.

5. Scroll up to the new option **Authentication method...** and click **Start using OpenID**.

6. Set the following values from the authentik provider:
- Set **OpenID Provider** to **authentik**
- Set **OpenID provider URL** to https://_authentik.company_/application/o/_actual_/
- Set **Client ID** to _client-id_
- Set **Client secret** to _client-secret_

:::warning
The first user to log into Actual Budget via OpenID will become the owner and administrator with the highest privileges for the budget. For more information on how to create additional users, see the Note below.
:::

## Test the login

- Open a browser of your choice and navigate to https://_actual.company_.
- Select the OpenID login method in the dropdown menu and click **Sign in with OpenID**.
- You should be redirected to authentik (with the login flows you created), and then authentik will redirect you back to the https://_actual.company_ URL.
- If you are redirected back to the https://_actual.company_ URL and can see the budget file selection page, the setup was successful.

:::info
Users are not automatically created when logging in with authentik. The owner must manually create each user in Actual Budget. To do so, click **Server online** at the top next to your name and select **User Directory**. Add a new user. The `Username` must match the one in authentik. You can now grant the new user access to your budget by clicking **Server online** next to your name at the top and selecting **User Access**.
:::
1 change: 1 addition & 0 deletions website/sidebarsIntegrations.js
Original file line number Diff line number Diff line change
Expand Up @@ -119,6 +119,7 @@ module.exports = {
type: "category",
label: "Miscellaneous",
items: [
"services/actual-budget/index",
"services/engomo/index",
"services/frappe/index",
"services/freshrss/index",
Expand Down

0 comments on commit 99639a9

Please sign in to comment.