Skip to content

Releases: mayswind/ezbookkeeping

v1.4.0

22 Mar 15:38

Choose a tag to compare

  • [Breaking]

    • Remove deprecated Reserve Bank of Australia exchange rate data source
  • [Features]

    • Add agent skill and ezBookkeeping API Tools script for AI Agent Integration
    • Support "Add Another" in transaction add page / dialog (#471)
    • Support sub condition in insights explorer queries
    • Display total transactions, total amount, average amount, median amount, minimum amount, maximum amount, and more statistic data in the data table tab of insights explorer
    • Display year-over-year and period-over-period growth rates in trends chart in statistics & analysis page on desktop version
    • Add cache management page
    • Support caching map data in browser when the map provider that supports map_data_fetch_proxy and map_data_fetch_proxy is set to true
    • Support setting exchange rate cache expiration time
    • Support sorting transaction tags by name (#487)
    • Support receiving images from the Web Share Target API Level 2 and directly opening AI image recognition on mobile version (#522)
    • LLM provider supports LM Studio
    • LLM provider supports Anthropic and Anthropic compatibility API
    • Support importing transactions from custom xlsx / xls file
  • [Enhancements]

    • Improved Russian translation (#483, #521, thanks @dshemin)
    • Improved Spanish translation (#495, thanks @abrugues)
    • Improved Portuguese (Brazil) translation (#530, thanks @balaios)
    • Support filtering by geographic latitude and longitude in insights explorer queries
    • Add transaction time zone and transaction hour of day to axis / category / series in insights explorer
    • Add 90th percentile amount, range, interquartile range, variance, standard deviation, and coefficient of variation to value metrics in insights explorer
    • Add boxplot chart in reconciliation statement dialog
    • Support restricting API token access based on IP address
    • Support automatically applying known column mapping and transaction type mapping rules when importing custom files with column mapping handle method
    • Support batch replacement of transaction time zones in the import tool
    • Support exporting reconciliation statement, statistics & analysis result and import check result to SSV (semicolon separated values) file
    • Support custom quick save button styles on the mobile transaction edit page
    • Support exporting statistics & analysis result to Mermaid
    • Merge UTF-8 and UTF-16 encodings with or without BOM, with BOM automatically detected and handled
    • Support UTF-32 file encoding when importing delimiter-separated values (DSV) file
    • Optimize the performance of the retrieve all transactions API
    • Add attributes to disable spell check and automatic capitalization to all username input fields (#526, thanks @RasterCrow)
    • Support importing WeChat Pay statements with the latest format that includes thousand separators (#534)
    • Add more icons from Line Awesome
    • Other user interface optimization
  • [Development]

    • Upgrade Golang to 1.25.7
    • Upgrade Node.js to 24.14.0
    • Upgrade Alpine base image to 3.23.3
  • [Bug Fixes]

    • Fix incorrect time for some time zones on the scheduled transaction edit page (#499)
    • Fix the user settings is reset after using the command line tool to change the user password (#516)
    • Fix incorrect display when use transaction year-quarter as axis / category / series in insights explorer
    • Fix incorrect data when exporting 100% stacked charts data in insights explorer
    • Fix incorrect column count when importing mscfb excel file
    • Fix the updated transaction template is not reflected in the interface immediately after modification

v1.3.2

30 Jan 16:53

Choose a tag to compare

  • [Breaking]

    • Remove deprecated International Monetary Fund exchange rate data source
  • [Features]

    • Support importing camt.052 bank statement file
  • [Enhancements]

    • Support date formats that use dashes as separators and date formats without leading zeros when import delimiter-separated values file / data
    • When pasting date time, if multiple formats match and one matches the current display order, use that format for parsing
    • Other user interface optimization
  • [Bug Fixes]

    • Fix the continue button was missing during two-factor authentication on the desktop version when both two-factor authentication and third-party login are enabled both

v1.3.1

24 Jan 15:43

Choose a tag to compare

  • [Features]

    • Add Tamil translation (#456, thanks @hhharsha36)
    • Add refresh accounts, categories and tags button on import dialog
    • Support exporting data when checking pending import data
  • [Enhancements]

    • Improved Spanish translation (#454, #457, thanks @AndresTeller , @diegofercri)
    • Improved Korean translation (#461, thanks @overworks)
    • Support semicolon-separated data when importing delimiter-separated values files / data (#458)
    • Support tag group for transaction tags in the import transaction tool
    • Other user interface optimization
  • [Bug Fixes]

    • Fix the placeholder values in root_url cannot be resolved using values from environment variables, and do not allow placeholders in other options
    • Fix no error message is shown when a tag cannot be moved
    • Fix the system paste button appears again after the user tap outside
    • Fix the import dialog sometimes fails to automatically remember the last selected type

v1.3.0

17 Jan 16:06

Choose a tag to compare

  • [Breaking]

    • Upgrade Framework7 to 9.0
    • Use the daylight saving time zone as default time zone rather than the current standard time zone during the DST
    • transactions/add.json requires X-Timezone-Name or X-Timezone-Offset request header
    • Remove ambiguous setting option app_name
  • [Features]

    • Add Kannada translation (#374, thanks @Darshanbm05)
    • Add Turkish translation (#383, thanks @aydnykn)
    • Add Slovenian translation (#405, #409, #410, #438, #448 thanks @thehijacker)
    • Add Insights Explorer page on desktop version
    • Add transaction tag group
    • Tag filter supports selecting both included and excluded tags simultaneously
    • Add search box on account / transaction category / transaction tag filter page / dialog (#382)
    • Paste amount from clipboard on mobile version
    • Support changing account category order
    • Automatically detect file encoding when importing delimiter-separated values (DSV) file
    • Support IANA time zone names when importing delimiter-separated values (DSV) files
    • Support parsing custom date time format when importing delimiter-separated values (DSV) files with custom script
  • [Enhancements]

    • Improved Spanish translation (#371, #377, thanks @abrugues)
    • Import payee field as tags when importing a QIF file (#356)
    • Import member, project and merchant fields as tags when importing Feidee MyMoney export file
    • Support changing timezone type in reconciliation statement dialog / page
    • Support import delimiter-separated values file / data with UTF-16 encoding (#361)
    • Support importing amounts that use non-breaking space (NBSP), narrow no-break space (NNBSP) or figure space as digit grouping symbol when importing delimiter-separated values file / data (#361)
    • Support dates with YYYY.MM.DD / MM.DD.YYYY / DD.MM.YYYY format when importing delimiter-separated values file / data (#361)
    • Support filtering transactions by amount in import transaction dialog
    • Support batch converting amounts to positive / negative values in import transaction dialog
    • Support hiding account categories with no accounts
    • Support canceling the sorting operation on mobile version
    • Insert the pasted content after the cursor when pasting numbers or amounts
    • Remember last selected file type in import transaction dialog (#412)
    • In the import dialog's data review table, keep the selection checkboxes and action button columns fixed in place
    • Add clear all filters in import dialog (#416)
    • Automatically update the destination amount based on the account's currency when changing the destination account (#433, thanks @OuIChien)
    • Trim leading and trailing spaces from the username on the login page (#439, thanks @dshemin)
    • Support importing Alipay transaction statements with transactions in the pending goods receipt confirmation status (#441)
    • Allow the username or email address returned by OAuth 2.0 to be empty when linking OAuth 2.0 authentication to an existing user
    • Support the username returned by Synology DSM SSO Server during OIDC authentication (#449)
    • Place the account / transaction category at the end of the new category after changing the parent category of an account or transaction category
    • Other user interface optimization
  • [Development]

    • Upgrade Golang to 1.25.5
    • Upgrade Node.js to 24.12.0
    • Upgrade Alpine base image to 3.23.2
  • [Bug Fixes]

    • Fix cannot access Alibaba Cloud OSS using minio object storage type (#230)
    • Fix the incorrect url of email verify page, reset password page, and OAuth 2.0 callback page when accessing ezBookkeeping through a subpath (#348)
    • Fix the month names were displayed incorrectly in the monthly income and expense trends chart when daylight saving time was involved (#392)
    • Fix the median amount was calculated incorrectly in account reconciliation statements
    • Fix the incorrect display type name of transaction categories
    • Fix no results were shown when previewing all results while importing transactions with user custom script
    • Fix the filter dropdown menu not display the selected hidden items after selecting multiple hidden transaction categories or accounts in transaction list page
    • Use the number system configured in the user's settings for all numeric values in the token generation dialog
    • Transaction reconciliation statement dialog supports sorting by account name and category name on desktop version
    • Fix missing hyphen in "utf-8" encoding causing error when importing OFX 1.x file (#452, thanks @lucdsouza)

v1.2.0

09 Nov 15:18

Choose a tag to compare

  • [Breaking]

    • The token type for requesting API in the user-session-new command-line argument has been changed to api. And before using this command-line, you need to set the enable_api_token option under the security configuration section to true
  • [Features]

    • Add Korean language (#276, thanks @overworks)
    • Support OAuth 2.0 (Nextcloud / Gitea / GitHub) authentication
    • Support OIDC authentication (#242)
    • Add overview sankey chart for categorical analysis on desktop version
    • Add outflows / inflows / net cash flow chart data type in statistics & analysis
    • Add asset trends in statistics & analysis (#314)
    • Add radar chart for categorical analysis on desktop version
    • Add bubble chart for trends analysis on desktop version
    • Support moving all transactions from one account to another account (#288)
    • Add an MCP tool query_all_accounts_balance for retrieving all account balances (#309)
    • Support generating API token on desktop version
  • [Enhancements]

    • Support canceling AI image recognition
    • AI image recognition supports pasting images from clipboard on the desktop version
    • Support pasting date time into the date-time picker on the desktop version
    • Import credit card repayment transactions from WeChat pay statement file (#279)
    • Support importing the latest format of Alipay statement file
    • Support modifying amount and description when importing transactions
    • Support selecting all visible in account / category / tag filter dialog / page
    • Load configuration option value from file
    • Display a security warning using AI image recognition or generating an MCP token
    • Display a reminder to check important information when using AI image recognition
    • Support setting the expiration time for generated tokens on desktop version or command line
    • Other user interface optimization
  • [Development]

    • Upgrade Golang to 1.25.3
    • Upgrade Node.js to 24.10.0
    • Upgrade Alpine base image to 3.22.2
  • [Bug Fixes]

    • Fix cannot modify transaction time after duplicating transaction with time on the mobile version
    • Hide the "Set Location" button in the map sheet on the transaction view page in mobile version
    • Fix cannot clear all transactions of sub-account (#304)
    • Fix the Persian Calendar was not displayed when the calendar display type was set to Gregorian with Persian Calendar, but the date display type was not set to Persian
    • Fix cannot shift the date range in the trend analysis after switching from categorical analysis with the date range set to "All"
    • Support exporting transactions dated later than the current time

v1.1.1

03 Oct 02:53

Choose a tag to compare

  • [Bug Fixes]
    • Fix the mobile transaction list page displayed incorrectly when loading more transactions (#277)

v1.1.0

27 Sep 13:31

Choose a tag to compare

  • [Breaking]

    • Move the enable_two_factor, enable_forget_password and forget_password_require_email_verify option to the auth section
    • Move the request_id_header option to the server section
    • Use truncation instead of rounding down or rounding to the nearest value when numerical calculations exceed precision limit
  • [Features]

    • Add French language (#252, thanks @brieucdlf)
    • Add Thai language (#260, thanks @natthavat28)
    • Create transactions from AI receipt image recognition results (support OpenAI, OpenAI Compatible API, OpenRouter, Ollama and Google AI)
    • Support custom script to process delimiter-separated values (data) file / data
    • Support filtering accounts and transaction categories for overview in home page (#209)
    • Calendar display type supports Gregorian with Chinese Calendar
    • Calendar display type supports Gregorian with Persian Calendar, date display type supports Persian calendar
    • Import transactions from JD.com Finance statement file (#240)
  • [Enhancements]

    • Batch adding transaction tags in import transaction tool
    • Batch removing specified transaction tags or batch removing invalid transaction tags in import transaction tool
    • Clear all transactions in specified account (#228)
    • Support dates with YYYYMMDD format when importing delimiter-separated values file / data (#219)
    • Import investment transactions from alipay statement file (#246)
    • Support for disabling the app’s built-in swipe-back navigation (#249)
    • The query_transactions_tool_handler MCP tool supports filtering multiple categories or accounts with the same name, and filtering sub-accounts / secondary categories by their parent account / category name
    • Other user interface optimization
  • [Development]

    • Upgrade Golang to 1.25.1
    • Upgrade Node.js to 24.7.0
    • Add build script for Windows Powershell
  • [Bug Fixes]

    • Fix cannot connect PostgreSQL via Unix socket (#253)
    • Use integer to calculate formulas for amount input formula (#214) and beancount amount formula
    • Fix cannot import OFX file which has only one but very long line (#243)
    • Fix transaction type was not checked when replacing transaction categories using batch rules (#248)
    • Fix can not replace empty transaction categories when using batch rules
    • Fix user custom exchange rates update page / dialog could not be opened
    • Fix the checkbox in the scheduled transaction frequency dropdown list couldn’t be used to select options (#225)
    • Fix could not select category name via checkbox in the batch create category dialog
    • Fix the toast text size and the text input size in dialogs on the mobile version did not adjust according to the font size settings
    • Fix the result of detecting whether a transaction has been modified is wrong when no default account is set
    • Fix MCP protocol version requirement for structured content (#239, thanks @lvdou-bing)
    • Fix the add_transaction MCP tool set wrong categories from the wrong category type
    • Hidden transaction tags are not allowed when importing transactions or using the add_transaction MCP tool
    • Don't return hidden tags for query_all_transaction_tags MCP tool

v1.0.1

05 Sep 12:59

Choose a tag to compare

  • [Bug Fixes]
    • Fix cannot delete accounts / transaction categories and tags when using PostgreSQL/SQLite database (#218)

v1.0.0

30 Aug 16:21

Choose a tag to compare

  • [Breaking]

    • Set the default date based on the current date time filter range when adding a new transaction in the transaction list page
  • [Features]

    • Add Dutch language (#196, thanks @automagics)
    • Add reconciliation statement
    • Show opening / closing balance and total inflows / outflows in reconciliation statement dialog / page (#36, #143)
    • Update closing balance in reconciliation statement page / dialog (#166)
    • Add account balance trends chart in reconciliation statement page / dialog (#184)
    • Allow users to change numeral system type (Western Arabic Numerals / Eastern Arabic Numerals / Persian Digits / Burmese Numerals / Devanagari Numerals)
    • Allow users to change calendar display type and date display type (Gregorian Calendar / Buddhist Calendar)
    • Load / save rules for batch replacing transaction categories / accounts / tags when import transactions
    • Object storage supports WebDAV
    • Revoke user token via CLI
  • [Enhancements]

    • Time picker in mobile version supports loop selection
    • Redesign time picker in date time select for desktop device
    • Support modifying balance modification transaction
    • Support deleting balance modification transaction in desktop version
    • Show the reason why the save button is disabled in transaction / account / and category dialog
    • Show the reason why the category / account select control is disabled in desktop version
    • Use the first visible account as default if the default account is hidden when creating new transaction
    • Support importing WeChat Pay billing file in the latest file format (#191)
    • Support clearing all transactions (#202)
    • Digit grouping type supports Indian Number Grouping
    • Show the time range below the fiscal year option
    • Retry up to 3 times when update user cloud settings
    • Other user interface optimization
  • [Development]

    • Upgrade Golang to 1.24.5
    • Upgrade Node.js to 22.18.0
    • Upgrade Docker base image to Alpine 3.22.1
    • Use a unified commit hash length when building in different platform
    • Add support for RTL (Right-to-Left) languages in the UI
  • [Bug Fixes]

    • Fix the amount format could not be automatically detected when importing dsv file
    • Fix the date range may be incorrect when switching between fiscal years
    • Fix the filter could not be saved after the filtered accounts, categories and transaction tags were deleted (#185)
    • Fix the total amount of all sub-accounts under the parent account was not counted after filtering any sub-accounts (#192)
    • Fix the default account shows "unspecified" in desktop version after the default account is set to hidden
    • Check if the accounts, categories, and tags used exist when creating a transaction template
    • Check whether transaction templates use specified accounts / categories / tags when deleting them
    • The number of digits shown for hours, minutes, and seconds in the time picker depends on the user's language settings
    • Clear the data of the last unfinished calculation when opening the number pad sheet
    • Don't initialize avatar / transaction storage when they are not enabled
    • Translate text in vuetify controls

v0.10.0

13 Jul 08:34

Choose a tag to compare

  • [Breaking]

    • Use the export data format since Firefly III v6.2.0 as the format for importing Firefly III data (#169)
  • [Features]

    • Add Portuguese (Brazil) language (#160, thanks @thecodergus)
    • Support fiscal year (#115, thanks @seb26)
    • Support MCP (Model Context Protocol) server (via Http / Https protocol)
    • Retrieve transactions / accounts / categories / tags / latest exchange rates via MCP
    • Add new transaction via MCP
    • Import transactions from Camt.053 file
    • Import transactions from MT940 file
    • Sync application settings between multiple devices
    • Filter transaction description keywords in statistics & analysis page
    • Export statistics & analysis result in desktop version
    • Export transaction data based on the conditions on the transaction list page (#55)
    • The total amount on the account list page supports excluding specified accounts (#161)
  • [Enhancements]

    • Show total balance of parent account in mobile version (#149)
    • Support setting geo location data order when import transaction
    • Save / load data mapping settings for delimiter-separated values (dsv) file
    • Fill the first two digits for year based on the current year when importing a two-digit year
    • Support two-digit years in the transaction date when importing QIF file
    • Change the text of the unset start and end time in scheduled transaction
    • Use the expense/revenue account name as the category name if the transaction has no category when importing Firefly III transactions
    • Support cleaning browser cache when client version does not matches server version
    • Other user interface optimization
  • [Development]

    • Upgrade Golang to 1.24.4
    • Upgrade Node.js to 22.16.0
    • Upgrade Docker base image to Alpine 3.22.0
  • [Bug Fixes]

    • Fix the bug that the date was not displayed correctly during daylight saving time (#163)
    • Fix the data of last quarter not displayed when there is only one month in the last quarter in trend analysis
    • Fix the bug that statistical analysis still shows the account balance in the desktop version when the account balance is set to hide