---
title: Release 25.3.0
description: New release of Actual.
date: 2025-03-01T10:00
slug: release-25.3.0
tags: [announcement, release]
hide_table_of_contents: false
authors: jfdoming
---

The release has the following notable improvements:

- New UI for managing bank sync
- Support for some additional languages
- Lots of bugfixes and maintenance work

:::warning

Starting this release, the `actual-server` repository will no longer be updated. If you use a local install, please review [these docs](https://actualbudget.org/docs/actual-server-repo-move) for how to migrate.

:::

:::info

Starting next release, we plan on deprecating the `@actual-app/web` NPM package. This should not impact any standard deployment methods, but if you have a use-case for this package, please [create an issue](https://github.com/actualbudget/actual/issues/new/choose) so we know about it!

:::

<!--truncate-->

**Docker tag: 25.3.0**

#### Features

- [#4253](https://github.com/actualbudget/actual/pull/4253) Add a UI for bank sync settings — thanks @matt-fidd
- [#4308](https://github.com/actualbudget/actual/pull/4308) Foundations for the budget automations UI — thanks @jfdoming

#### Enhancements

- [#4213](https://github.com/actualbudget/actual/pull/4213) useDisplayPayee hook to unify payee names in mobile and desktop. — thanks @joel-jeremy
- [#4257](https://github.com/actualbudget/actual/pull/4257) Add percentage adjustments to schedule templates — thanks @MattFaz
- [#4294](https://github.com/actualbudget/actual/pull/4294) Properly handle nynab hidden categories/groups on import — thanks @youngcw
- [#4372](https://github.com/actualbudget/actual/pull/4372) Sync server development mode with react fast refresh — thanks @lelemm
- [#4380](https://github.com/actualbudget/actual/pull/4380) Add button to go to current month in budget view on mobile — thanks @adastx
- [#4388](https://github.com/actualbudget/actual/pull/4388) Add BANK_MILLENNIUM_BIGBPLPW, BNP_PL_PPABPLPK, MBANK_RETAIL_BREXPLPW to `BANKS_WITH_LIMITED_HISTORY` constant. — thanks @michalgolab
- [#4403](https://github.com/actualbudget/actual/pull/4403) Update bank sync mapping data for existing transactions on sync — thanks @matt-fidd
- [#4408](https://github.com/actualbudget/actual/pull/4408) Extending translations for components: Account, SidebarCategory, TotalsList, MobileNavTabs, AccountTransactions (Mobile), Accounts (Mobile), BudgetTable (Mobile), TransactionEdit (Mobile), TransactionList (Mobile), TransactionListItem (Mobile), CategoryMenuModal, CreateLocalAccountModal, ImportModal, ReportSideBar, CustomReport, Spending, Export, TransactionsTable — thanks @lelemm
- [#4415](https://github.com/actualbudget/actual/pull/4415) Start the application with the browser's default language — thanks @lelemm
- [#4423](https://github.com/actualbudget/actual/pull/4423) Added `ACTUAL_OPENID_ENFORCE=true` enviroment variable to enforce only OpenID auth. — thanks @lelemm
- [#4427](https://github.com/actualbudget/actual/pull/4427) Automatically adjust height of modals to fit the visible viewport when the keyboard is open on mobile — thanks @andrew--r
- [#4448](https://github.com/actualbudget/actual/pull/4448) [Mobile] Change budget table colors when on non-current month — thanks @joel-jeremy
- [#4452](https://github.com/actualbudget/actual/pull/4452) Sort upcoming schedules by date then amount so deposits come before payments — thanks @matt-fidd

#### Bugfix

- [#4224](https://github.com/actualbudget/actual/pull/4224) Fix deleting rules considering the applied filters — thanks @harrydigos
- [#4241](https://github.com/actualbudget/actual/pull/4241) Fix GoCardless transaction ID to fallback to it's own generated ID on sync — thanks @NullScope
- [#4293](https://github.com/actualbudget/actual/pull/4293) Fix nynab importer failing on duplicate categories — thanks @youngcw
- [#4300](https://github.com/actualbudget/actual/pull/4300) Fix tracking budget income templates — thanks @youngcw
- [#4322](https://github.com/actualbudget/actual/pull/4322) Fix hard crash when closing cloud budget on Electron — thanks @MikesGlitch
- [#4336](https://github.com/actualbudget/actual/pull/4336) Fix calendar interaction when editing reports dashboard — thanks @ChickenSaysBak
- [#4353](https://github.com/actualbudget/actual/pull/4353) Correct link to translation setup for local install — thanks @jfdoming
- [#4354](https://github.com/actualbudget/actual/pull/4354) Ensure SimpleFIN transactions are sorted by date — thanks @matt-fidd
- [#4356](https://github.com/actualbudget/actual/pull/4356) Rule action templating now works with helpers with no arguments — thanks @UnderKoen
- [#4360](https://github.com/actualbudget/actual/pull/4360) Fix "category is (nothing)" filter crashing the spending analysis report widget. — thanks @MatissJanis
- [#4375](https://github.com/actualbudget/actual/pull/4375) Prevent the app getting stuck on the "Initializing the connection to the local database..." screen — thanks @MikesGlitch
- [#4382](https://github.com/actualbudget/actual/pull/4382) Ignore CSV inOutMode during OFX imports — thanks @langelgjm
- [#4383](https://github.com/actualbudget/actual/pull/4383) Ensure decimal separator is recognized independently of the configured number format. — thanks @AntoineTA
- [#4384](https://github.com/actualbudget/actual/pull/4384) Provides a default fallback `payeeName` value ('undefined') for the CBC bank in case the `payeeName` is missing. — thanks @MMichotte
- [#4397](https://github.com/actualbudget/actual/pull/4397) Fix for User directory page that was calling the api every frame — thanks @lelemm
- [#4413](https://github.com/actualbudget/actual/pull/4413) Fix crash during bank sync when the payee is not found — thanks @matt-fidd
- [#4417](https://github.com/actualbudget/actual/pull/4417) Fix `On budget` / `Off budget` underline with translated languages — thanks @lelemm
- [#4439](https://github.com/actualbudget/actual/pull/4439) Fix the default language init for electron — thanks @lelemm
- [#4453](https://github.com/actualbudget/actual/pull/4453) Change i18n errors to info — thanks @matt-fidd
- [#4458](https://github.com/actualbudget/actual/pull/4458) Fix row spacing on bank sync page — thanks @matt-fidd
- [#4461](https://github.com/actualbudget/actual/pull/4461) Fixed bug where partially erasing search string would not reset search and result in incorrect search results. — thanks @alecbakholdin
- [#4462](https://github.com/actualbudget/actual/pull/4462) Fixed bug where navigating to payees page by clicking "manage payees" with an empty payee from a transaction would result in a crash. — thanks @alecbakholdin
- [#4463](https://github.com/actualbudget/actual/pull/4463) Add missing space in translation for bank sync — thanks @jfdoming
- [#4465](https://github.com/actualbudget/actual/pull/4465) Fix crash when deleting child transactions from an errored split — thanks @jfdoming
- [#4468](https://github.com/actualbudget/actual/pull/4468) Remove warning on cleanup templates if budget is already "clean" — thanks @youngcw
- [#4469](https://github.com/actualbudget/actual/pull/4469) Fix category group deletion on mobile — thanks @matt-fidd
- [#4472](https://github.com/actualbudget/actual/pull/4472) Add last bank sync tracking back in — thanks @matt-fidd
- [#566](https://github.com/actualbudget/actual/pull/566) Fix ESM bug on Windows when loading gocardless banks — thanks @MikesGlitch

#### Maintenance

- [#4145](https://github.com/actualbudget/actual/pull/4145) Fix types of `send` function — thanks @jfdoming
- [#4169](https://github.com/actualbudget/actual/pull/4169) Introduce `@actual-app/components` - package with reusable components. — thanks @MatissJanis
- [#4214](https://github.com/actualbudget/actual/pull/4214) Make `loot-core` compatible with `exactOptionalPropertyTypes` — thanks @jfdoming
- [#4218](https://github.com/actualbudget/actual/pull/4218) Convert playwright page models to TypeScript. — thanks @joel-jeremy
- [#4221](https://github.com/actualbudget/actual/pull/4221) Move transactions related server handlers from main.ts to server/transactions/app.ts — thanks @joel-jeremy
- [#4227](https://github.com/actualbudget/actual/pull/4227) Move accounts related server handlers from main.ts to server/accounts/app.ts — thanks @joel-jeremy
- [#4247](https://github.com/actualbudget/actual/pull/4247) [TypeScript] Make `runQuery` generic to make it easy to type DB query results. — thanks @joel-jeremy
- [#4258](https://github.com/actualbudget/actual/pull/4258) Fix react-hooks/exhaustive-deps error on useSelected.tsx — thanks @joel-jeremy
- [#4259](https://github.com/actualbudget/actual/pull/4259) Fix react-hooks/exhaustive-deps error on useProperFocus.tsx — thanks @joel-jeremy
- [#4260](https://github.com/actualbudget/actual/pull/4260) Fix react-hooks/exhaustive-deps error on usePayees.ts — thanks @joel-jeremy
- [#4261](https://github.com/actualbudget/actual/pull/4261) Fix react-hooks/exhaustive-deps error on useCategories.ts — thanks @joel-jeremy
- [#4262](https://github.com/actualbudget/actual/pull/4262) Fix react-hooks/exhaustive-deps error on useAccounts.ts — thanks @joel-jeremy
- [#4268](https://github.com/actualbudget/actual/pull/4268) Fix react-hooks/exhaustive-deps error on TransactionsTable.jsx — thanks @joel-jeremy
- [#4272](https://github.com/actualbudget/actual/pull/4272) Fix react-hooks/exhaustive-deps error on TransactionList.jsx — thanks @joel-jeremy
- [#4273](https://github.com/actualbudget/actual/pull/4273) Fix react-hooks/exhaustive-deps error on Titlebar.tsx — thanks @joel-jeremy
- [#4274](https://github.com/actualbudget/actual/pull/4274) Fix react-hooks/exhaustive-deps error on table.tsx — thanks @joel-jeremy
- [#4306](https://github.com/actualbudget/actual/pull/4306) Add an action to automatically generate release PRs — thanks @jfdoming
- [#4334](https://github.com/actualbudget/actual/pull/4334) Moving the sync-server from the actual-server repository into the actual repository — thanks @MikesGlitch
- [#4343](https://github.com/actualbudget/actual/pull/4343) Rename migrations to realign with the convention — thanks @matt-fidd
- [#4346](https://github.com/actualbudget/actual/pull/4346) Move more reusable components to `@actual-app/components`. — thanks @MatissJanis
- [#4347](https://github.com/actualbudget/actual/pull/4347) Disallow importing `@actual-app/web` in `loot-core` - circular dependencies. — thanks @MatissJanis
- [#4348](https://github.com/actualbudget/actual/pull/4348) Making Server related github actions run only when server files change — thanks @MikesGlitch
- [#4349](https://github.com/actualbudget/actual/pull/4349) Replace `loot-core/src/*` imports with `loot-core/*` — thanks @MatissJanis
- [#4350](https://github.com/actualbudget/actual/pull/4350) API: remove deprecated exports of methods. — thanks @MatissJanis
- [#4352](https://github.com/actualbudget/actual/pull/4352) Updating the workflows to ignore directories properly — thanks @MikesGlitch
- [#4358](https://github.com/actualbudget/actual/pull/4358) Updating some common component imports to the new component-lib path. — thanks @MatissJanis
- [#4363](https://github.com/actualbudget/actual/pull/4363) Bring server in line with actual linting rules — thanks @matt-fidd
- [#4369](https://github.com/actualbudget/actual/pull/4369) Adding typescript type for the global-store.json setting file — thanks @MikesGlitch
- [#4370](https://github.com/actualbudget/actual/pull/4370) Update package name of sync server to be consistent with the rest of the workspace — thanks @MikesGlitch
- [#4385](https://github.com/actualbudget/actual/pull/4385) Remove deprecated components in favour of components from @actual-app library — thanks @AlbertoCortina
- [#4400](https://github.com/actualbudget/actual/pull/4400) Fix new proxy middleware importing in production when only required in developement — thanks @MikesGlitch
- [#4407](https://github.com/actualbudget/actual/pull/4407) Improving Electron logging to send logs created before startup to dev tools — thanks @MikesGlitch
- [#4409](https://github.com/actualbudget/actual/pull/4409) [TypeScript] Add types for SpreadsheetProvider — thanks @joel-jeremy
- [#4410](https://github.com/actualbudget/actual/pull/4410) Bump vitest to 1.6.1 — thanks @matt-fidd
- [#4411](https://github.com/actualbudget/actual/pull/4411) Bump express version — thanks @matt-fidd
- [#4420](https://github.com/actualbudget/actual/pull/4420) Extract preferences related server handlers from main.ts to server/preferences/app.ts — thanks @joel-jeremy
- [#4430](https://github.com/actualbudget/actual/pull/4430) Prevent GitHub docker workflow from running on pushes to forks — thanks @matt-fidd
- [#4483](https://github.com/actualbudget/actual/pull/4483) Publishing the docker images to the actual repo packages area in github — thanks @MikesGlitch
- [#557](https://github.com/actualbudget/actual/pull/557) Dynamically load GoCardless handlers — thanks @matt-fidd
- [#560](https://github.com/actualbudget/actual/pull/560) Updating readme regarding the consolidation of the Actual-Server and Actual repos — thanks @MikesGlitch
