CHANGELOG
Changelog
[5.4.2](https://github.com/ellite/Wallos/compare/v5.4.1...v5.4.2) (2026-07-19)
Bug Fixes
[5.4.1](https://github.com/ellite/Wallos/compare/v5.4.0...v5.4.1) (2026-07-18)
Bug Fixes
[5.4.0](https://github.com/ellite/Wallos/compare/v5.3.0...v5.4.0) (2026-07-18)
Features
- add Arabic localization (aff3ed0)
- add manual logo search box and png prioritization (aff3ed0)
- add OIDC_REQUIRE_EMAIL_VERIFIED environment variable and SSRF_ALLOWLIST environment variable (aff3ed0)
Bug Fixes
- ai recommendations not handling varied provider responses (aff3ed0)
- deleting orphaned logos not taking into account themed variants (aff3ed0)
- email notification test rejecting non-admin users (aff3ed0)
- notification test/send requests hanging on unreachable hosts (aff3ed0)
- pin discord notification action to a commit sha (aff3ed0)
- progress bar showing 100% when next payment is more than one cycle away (aff3ed0)
- service worker caching stale logo search results and broken images as logos (aff3ed0)
- stats page not using themed logo variants (aff3ed0)
[5.3.0](https://github.com/ellite/Wallos/compare/v5.2.0...v5.3.0) (2026-07-18)
Features
- add payment-period budgeting (4b8fbe5)
[5.2.0](https://github.com/ellite/Wallos/compare/v5.1.1...v5.2.0) (2026-07-14)
Features
- add new logo themed versions generation to add subscription api endpoint (921fcfd)
- better navigation inside logo search (921fcfd)
- bottom sheet slide up animation (921fcfd)
- improve menu navigation on grid mode (921fcfd)
Bug Fixes
- syntax error on nl.js translation file (921fcfd)
[5.1.1](https://github.com/ellite/Wallos/compare/v5.1.0...v5.1.1) (2026-07-12)
Bug Fixes
[5.1.0](https://github.com/ellite/Wallos/compare/v5.0.0...v5.1.0) (2026-07-12)
Features
- create dark and light theme versions of the logos when removing background (8d22f04)
Bug Fixes
- ajax calls after session expired (8d22f04)
[5.0.0](https://github.com/ellite/Wallos/compare/v4.9.6...v5.0.0) (2026-07-11)
⚠ BREAKING CHANGES
- complete ui overhaul (#1108)
Features
- Allow setting beginning of week as Sunday in calendar (#1010) (f01685e)
- complete ui overhaul (#1108) (11eaf40)
- dashboard icons image search (11eaf40)
- declarative oidc settings (11eaf40)
- google image search with serpapi (11eaf40)
- grid view for subscriptions (11eaf40)
- more statistics (11eaf40)
- option for the week to start on sunday (11eaf40)
- redesign login / registration pages (11eaf40)
- selfh.st image search (11eaf40)
- subscription details popup (11eaf40)
- translate categories with ai (11eaf40)
- v2.0 api - write endpoints (11eaf40)
Bug Fixes
- calendar occurrences to respect subscription start date (11eaf40)
- escape iCal property values to prevent crlf injection (11eaf40)
- honor configured outbound proxy for logo search without reopening httpoxy SSRF bypass (11eaf40)
- improve background removal feature for logos (11eaf40)
- include todays subscriptions on amount due this month (11eaf40)
- remove hardcode string from the admin page (11eaf40)
- require cron auth guard on storetotalyearlycost.php (11eaf40)
- ssrf via http proxy env var in payments logo search (11eaf40)
- validate per-user smtp host against ssrf (11eaf40)
[4.9.6](https://github.com/ellite/Wallos/compare/v4.9.5...v4.9.6) (2026-06-22)
Bug Fixes
- account takeover via email-based account linking (b75f13d)
- harden oidc state validation and session rotation (#1071) (b75f13d)
- missing fields when cloning a subscription (b75f13d)
- ssrf via oidc token/userInfo url configuration (b75f13d)
- ssrf via test email notification (b75f13d)
- zip slip path traversal in database restore writes files to webroot (b75f13d)
[4.9.5](https://github.com/ellite/Wallos/compare/v4.9.4...v4.9.5) (2026-06-06)
Bug Fixes
[4.9.4](https://github.com/ellite/Wallos/compare/v4.9.3...v4.9.4) (2026-06-06)
Bug Fixes
- restrict migrate.php to CLI and admin session (85bba48)
- secure unauthenticated db restore endpoint with a setup token (85bba48)
- validate oidc state parameter to prevent csrf login attack (85bba48)
[4.9.3](https://github.com/ellite/Wallos/compare/v4.9.2...v4.9.3) (2026-05-27)
Bug Fixes
[4.9.2](https://github.com/ellite/Wallos/compare/v4.9.1...v4.9.2) (2026-05-27)
Bug Fixes
[4.9.1](https://github.com/ellite/Wallos/compare/v4.9.0...v4.9.1) (2026-05-27)
Bug Fixes
- cross-user data isolation issues (e276147)
- ensure a user always has an api key generated (e276147)
- null pointer on subscription with price 0 (e276147)
[4.9.0](https://github.com/ellite/Wallos/compare/v4.8.4...v4.9.0) (2026-05-16)
Features
- allow multiple filters on the settings page (0fef959)
- filter by notification status (0fef959)
- lifetime subscriptions (0fef959)
- rework icons (0fef959)
- sort graphs on the statistics page by usage (0fef959)
Bug Fixes
- don't use mbstring (0fef959)
- migrations using double quotes (0fef959)
- ntfy notifications with strange chars (0fef959)
- null array on empty subscription list (0fef959)
- open 3 dot menu abone for the subscriptions at the bottom (0fef959)
[4.8.4](https://github.com/ellite/Wallos/compare/v4.8.3...v4.8.4) (2026-04-27)
Bug Fixes
- improve date formatting with IntlDateFormatter fallback (b2c565f) (#1048) (8d43623)
- missing year for subscription next payment display (ca5823d) (8d43623)
[4.8.3](https://github.com/ellite/Wallos/compare/v4.8.2...v4.8.3) (2026-04-26)
Bug Fixes
[4.8.2](https://github.com/ellite/Wallos/compare/v4.8.1...v4.8.2) (2026-04-18)
Bug Fixes
[4.8.1](https://github.com/ellite/Wallos/compare/v4.8.0...v4.8.1) (2026-04-18)
Bug Fixes
- dns rebinding vulnerability (e79f28b)
- only allow to use internal urls csrf validation bypass by admin user (e79f28b)
- ssrf vultenaribility on add subscription (#1038) (e79f28b)
[4.8.0](https://github.com/ellite/Wallos/compare/v4.7.3...v4.8.0) (2026-03-23)
Features
- add openai compatible host for ai recommendations (99c30e7)
- enable ai recommendations at a schedule (99c30e7)
- move update banner to the dashboard (99c30e7)
Bug Fixes
- handle some ai responses that come in a different format (99c30e7)
[4.7.3](https://github.com/ellite/Wallos/compare/v4.7.2...v4.7.3) (2026-03-21)
Bug Fixes
[4.7.2](https://github.com/ellite/Wallos/compare/v4.7.1...v4.7.2) (2026-03-19)
Bug Fixes
- password reset tokens now expire after 60 minutes (90bb618)
- vulnerability would allow to bypass 2fa (#1021) (90bb618)
[4.7.1](https://github.com/ellite/Wallos/compare/v4.7.0...v4.7.1) (2026-03-19)
Bug Fixes
[4.7.0](https://github.com/ellite/Wallos/compare/v4.6.2...v4.7.0) (2026-03-19)
Features
Bug Fixes
- ai recommendation numbering when deleting a recommendation (e87387f)
- calendar ocurrences to respect subscriptions start date (e87387f)
- logo search (e87387f)
- retain first and last name when switching language during registration (e87387f)
- set login cookie to httponly (e87387f)
- ssrf vulnerability on several endpoints (e87387f)
- unicode character on the css file (e87387f)
- xss vulnerability on payment method rename endpoint (e87387f)
[4.6.2](https://github.com/ellite/Wallos/compare/v4.6.1...v4.6.2) (2026-03-05)
Bug Fixes
- ssrf vulnerability on all test notifications endpoint (e8a5135)
- vulnerability allowed to delete avatars from other users (e8a5135)
- xss vulnerability on password reset page (e8a5135)
[4.6.1](https://github.com/ellite/Wallos/compare/v4.6.0...v4.6.1) (2026-02-10)
Bug Fixes
[4.6.0](https://github.com/ellite/Wallos/compare/v4.5.0...v4.6.0) (2025-12-20)
Features
- add catalan translation (#970) (f5746e7)
- add robots.txt to disallow indexing. (f5746e7)
- add serverchan notifications. (f5746e7)
- notifications for subscription can be triggered up to 180 days before payment date. (f5746e7)
Bug Fixes
- use RFC 5545 compliant date format in iCal exports (#965) (b6b0abe)
- use RFC 5545 compliant date format in iCal exports. (f5746e7)
- use stable UID for iCal events to prevent duplicates. (f5746e7)
[4.5.0](https://github.com/ellite/Wallos/compare/v4.4.1...v4.5.0) (2025-10-18)
Features
[4.4.1](https://github.com/ellite/Wallos/compare/v4.4.0...v4.4.1) (2025-10-12)
Bug Fixes
[4.4.0](https://github.com/ellite/Wallos/compare/v4.3.0...v4.4.0) (2025-10-12)
Features
- add mattermost notifications (#923) (#934) (5629a31)
- add openrouter ai endpoint (#922) (5629a31)
- enhance get_subscriptions API with admin access (#928) (5629a31)
Bug Fixes
[4.3.0](https://github.com/ellite/Wallos/compare/v4.2.0...v4.3.0) (2025-09-15)
Features
[4.2.0](https://github.com/ellite/Wallos/compare/v4.1.1...v4.2.0) (2025-09-14)
Features
- add pushplus notification service (#911) (27ac805)
- make container shutdown instant & graceful (27ac805)
- make container shutdown instant & graceful (#916) (27ac805)
- option to delete ai recommendations (27ac805)
Bug Fixes
[4.1.1](https://github.com/ellite/Wallos/compare/v4.1.0...v4.1.1) (2025-08-13)
Bug Fixes
- missing apikey validation error on get_monthly_cost api endpoint (3ecc160)
- redirect from dashboard to subscriptions for new users (3ecc160)
- wrong check for disabling password login (3ecc160)
[4.1.0](https://github.com/ellite/Wallos/compare/v4.0.0...v4.1.0) (2025-08-11)
Features
- add at a glance dashboard (ba6dddf)
- add get_oidc_settings endpoint to the api (ba6dddf)
- ai recommendations with chatgpt, gemini or ollama (ba6dddf)
- allow to disable password login when oidc is enabled (ba6dddf)
- display ai recommendations on the dashboard (ba6dddf)
- refactor css colors (ba6dddf)
Bug Fixes
- accept both api_key and apiKey as parameter on the api (ba6dddf)
[4.0.0](https://github.com/ellite/Wallos/compare/v3.3.1...v4.0.0) (2025-07-21)
⚠ BREAKING CHANGES
- add oauth / oidc support (#875)
Features
[3.3.1](https://github.com/ellite/Wallos/compare/v3.3.0...v3.3.1) (2025-07-19)
Bug Fixes
- code of new taiwan dollar (596cbc4)
- decoding of header from database on the webhook notifications (596cbc4)
- unicode issue on telegram notifications (#871) (596cbc4)
[3.3.0](https://github.com/ellite/Wallos/compare/v3.2.0...v3.3.0) (2025-06-09)
Features
Bug Fixes
[3.2.0](https://github.com/ellite/Wallos/compare/v3.1.1...v3.2.0) (2025-06-08)
Features
- add button to auto fill the next payment date (48db4e3)
- add first and last names to the user profile (48db4e3)
- add indonesian language (#842) (48db4e3)
- add new currency (48db4e3)
- Add new currency (#829) (288ad45)
- enable IPv6 environments by configuring a dual-stack listen in nginx (48db4e3)
Bug Fixes
- vulnerability on test webhook endpoint (48db4e3)
[3.1.1](https://github.com/ellite/Wallos/compare/v3.1.0...v3.1.1) (2025-05-15)
Bug Fixes
[3.1.0](https://github.com/ellite/Wallos/compare/v3.0.2...v3.1.0) (2025-05-08)
Features
- add danish translation (0cfefc7)
Bug Fixes
- disable totp with backup code (0cfefc7)
- gotify settings test (0cfefc7)
- vulnerability adding logos from url (0cfefc7)
[3.0.2](https://github.com/ellite/Wallos/compare/v3.0.1...v3.0.2) (2025-05-03)
Bug Fixes
- delete avatar would not work if wallos is on a subfolder (69c7d52)
- some strings not using translations on the calendar page (69c7d52)
- vulnerability on delete avatar (69c7d52)
[3.0.1](https://github.com/ellite/Wallos/compare/v3.0.0...v3.0.1) (2025-04-30)
Bug Fixes
[3.0.0](https://github.com/ellite/Wallos/compare/v2.52.2...v3.0.0) (2025-04-27)
⚠ BREAKING CHANGES
- simplified webhook notifications without iterator (might break your current webhook settings)
Features
- simplified webhook notifications without iterator (might break your current webhook settings) (e0f2048)
- use mobile style toggles instead of checkboxes (e0f2048)
- webhooks can now be used for cancelation notifications (e0f2048)
Bug Fixes
- barely readable placeholder text on textarea on dark the (e0f2048)
[2.52.2](https://github.com/ellite/Wallos/compare/v2.52.1...v2.52.2) (2025-04-26)
Bug Fixes
[2.52.1](https://github.com/ellite/Wallos/compare/v2.52.0...v2.52.1) (2025-04-26)
Bug Fixes
[2.52.0](https://github.com/ellite/Wallos/compare/v2.51.1...v2.52.0) (2025-04-19)
Features
[2.51.1](https://github.com/ellite/Wallos/compare/v2.51.0...v2.51.1) (2025-04-19)
Bug Fixes
[2.51.0](https://github.com/ellite/Wallos/compare/v2.50.1...v2.51.0) (2025-04-18)
Features
- add over budget warnings on the calendar (88eae10)
Bug Fixes
- force correct timezone on the cronjobs (88eae10)
[2.50.1](https://github.com/ellite/Wallos/compare/v2.50.0...v2.50.1) (2025-04-16)
Bug Fixes
- localization on date on browsers not in english (c7b3fb4)
[2.50.0](https://github.com/ellite/Wallos/compare/v2.49.1...v2.50.0) (2025-04-16)
Features
- shorten date displayed on the list of subscriptions (68f1d47)
- use user defined language for the date on the list of subscriptions (68f1d47)
Bug Fixes
- limit name display, when sub has no logo to two lines (68f1d47)
- use translations on the mobile menu (68f1d47)
[2.49.1](https://github.com/ellite/Wallos/compare/v2.49.0...v2.49.1) (2025-04-13)
Bug Fixes
- version number (eade2d9)
[2.49.0](https://github.com/ellite/Wallos/compare/v2.48.1...v2.49.0) (2025-04-13)
Features
- show name on mobile view when subscription has no logo (9eb2907)
- show timezone on sendnotification cronjob on admin page (9eb2907)
- use currencyConverter for notifications as well (9eb2907)
- use symbol from db when currencyFormatter does not support the currency (9eb2907)
Bug Fixes
- date comparison check on sendnotifications cronjob (9eb2907)
- emails with encryption set to none not working without ssl (9eb2907)
- error when not setting custom headers for ntfy (9eb2907)
[2.48.1](https://github.com/ellite/Wallos/compare/v2.48.0...v2.48.1) (2025-03-27)
Bug Fixes
- notifications would also be sent x days after subscription was due in some cases (ba912a3)
[2.48.0](https://github.com/ellite/Wallos/compare/v2.47.1...v2.48.0) (2025-03-20)
Features
- add update notification and release notes to the about page (3e0e88d)
- increase privacy by not sending referrer to external urls (3e0e88d)
- small layout change on the about page (3e0e88d)
[2.47.1](https://github.com/ellite/Wallos/compare/v2.47.0...v2.47.1) (2025-03-19)
Bug Fixes
- small layout inconsistencies on the dashboard (19d3067)
[2.47.0](https://github.com/ellite/Wallos/compare/v2.46.1...v2.47.0) (2025-03-19)
Features
- add filter by renew type (1bec973)
- add sort by renew type (1bec973)
- add ukranian translation (#756) (1bec973)
- remove "Wallos" text from calendar export (1bec973)
Bug Fixes
- ical trigger to spec RFC5545 (1bec973)
- special chars on calendar exports (1bec973)
- special chars on notifications (1bec973)
- state filter not cleared by clear button (1bec973)
[2.46.1](https://github.com/ellite/Wallos/compare/v2.46.0...v2.46.1) (2025-03-06)
Bug Fixes
[2.46.0](https://github.com/ellite/Wallos/compare/v2.45.2...v2.46.0) (2025-02-22)
Features
- sorting by category or payment method respects order from the settings page (51b2272)
Bug Fixes
- access to tmp folder by www-data (51b2272)
[2.45.2](https://github.com/ellite/Wallos/compare/v2.45.1...v2.45.2) (2025-02-05)
Bug Fixes
- bug setting main currency for the first registered user (c43b08a)
- deprecation message (c43b08a)
- subscription progress above 100% for disabled subscriptions (c43b08a)
- typo on czech translation (c43b08a)
- use first currency on the list of currencies if user has not selected a main currency (c43b08a)
- use gd if imagick is not available (c43b08a)
[2.45.1](https://github.com/ellite/Wallos/compare/v2.45.0...v2.45.1) (2025-01-28)
Bug Fixes
- improve czech translation (e2dc269)
- improve japanese translation (#713) (e2dc269)
- improve traditional chinese translation (e2dc269)
- setting pgid and puid for the container (e2dc269)
[2.45.0](https://github.com/ellite/Wallos/compare/v2.44.1...v2.45.0) (2025-01-19)
Features
[2.44.1](https://github.com/ellite/Wallos/compare/v2.44.0...v2.44.1) (2025-01-19)
Bug Fixes
[2.44.0](https://github.com/ellite/Wallos/compare/v2.43.1...v2.44.0) (2025-01-12)
Features
- allow notifications on due date (87f148d)
Bug Fixes
- don't expose disabled notifications to ical feed (87f148d)
- email notification test always sending to admins email (87f148d)
[2.43.1](https://github.com/ellite/Wallos/compare/v2.43.0...v2.43.1) (2025-01-12)
Bug Fixes
[2.43.0](https://github.com/ellite/Wallos/compare/v2.42.2...v2.43.0) (2025-01-11)
Features
- new api endpoint that returns the version (ff13fcb)
- option to show progress of subscription cycle (ff13fcb)
Bug Fixes
- currency symbol for monthly budget (ff13fcb)
[2.42.2](https://github.com/ellite/Wallos/compare/v2.42.1...v2.42.2) (2024-12-21)
Bug Fixes
[2.42.1](https://github.com/ellite/Wallos/compare/v2.42.0...v2.42.1) (2024-12-21)
Bug Fixes
[2.42.0](https://github.com/ellite/Wallos/compare/v2.41.0...v2.42.0) (2024-12-21)
Features
- add total monthly cost trend graph to the statistics page (e7185f9)
- allow email notifications without authentication (e7185f9)
Bug Fixes
- don't update next payment date for disabled subscriptions (e7185f9)
- xss security vulnerability with the avatar selection (e7185f9)
[2.41.0](https://github.com/ellite/Wallos/compare/v2.40.0...v2.41.0) (2024-12-11)
Features
- add payment cycle to csv/json export (5e6bc90)
- run db migration after importing db (5e6bc90)
- run db migration after restoring database (5e6bc90)
- store weekly the total yearly cost of subscriptions (5e6bc90)
Bug Fixes
- double encoding in statistics labels (5e6bc90)
[2.40.0](https://github.com/ellite/Wallos/compare/v2.39.1...v2.40.0) (2024-12-10)
Features
[2.39.1](https://github.com/ellite/Wallos/compare/v2.39.0...v2.39.1) (2024-12-06)
Bug Fixes
[2.39.0](https://github.com/ellite/Wallos/compare/v2.38.3...v2.39.0) (2024-12-06)
Features
- add icalendar subscription (f5ddbff)
[2.38.3](https://github.com/ellite/Wallos/compare/v2.38.2...v2.38.3) (2024-12-06)
Bug Fixes
- vulnerability on the restore database endpoints (3b2de8b)
[2.38.2](https://github.com/ellite/Wallos/compare/v2.38.1...v2.38.2) (2024-11-19)
Bug Fixes
[2.38.1](https://github.com/ellite/Wallos/compare/v2.38.0...v2.38.1) (2024-11-17)
Bug Fixes
[2.38.0](https://github.com/ellite/Wallos/compare/v2.37.1...v2.38.0) (2024-11-17)
Features
- add option for manual/automatic renewals (6e44a26)
- add some leeway for totp codes (6e44a26)
- add start date to subscriptions (6e44a26)
Bug Fixes
- layout issue with subscriptions list during search (6e44a26)
[2.37.1](https://github.com/ellite/Wallos/compare/v2.37.0...v2.37.1) (2024-11-15)
Bug Fixes
[2.37.0](https://github.com/ellite/Wallos/compare/v2.36.2...v2.37.0) (2024-11-15)
Features
- add monthly statistics to the calendar page (f085f8a)
Bug Fixes
- notifications being sent on the wrong day (f085f8a)
[2.36.2](https://github.com/ellite/Wallos/compare/v2.36.1...v2.36.2) (2024-11-03)
Bug Fixes
[2.36.1](https://github.com/ellite/Wallos/compare/v2.36.0...v2.36.1) (2024-11-03)
Bug Fixes
[2.36.0](https://github.com/ellite/Wallos/compare/v2.35.0...v2.36.0) (2024-11-03)
Features
[2.35.0](https://github.com/ellite/Wallos/compare/v2.34.0...v2.35.0) (2024-11-01)
Features
- new menu icons (28444ab)
- swipe subscription for actions on the experimental mobile navigation (28444ab)
[2.34.0](https://github.com/ellite/Wallos/compare/v2.33.1...v2.34.0) (2024-10-31)
Features
- link version update banner to github release (f007adf)
- only show filters that are actually used (f007adf)
Bug Fixes
- filters for categories and payment method respect order from settings (f007adf)
[2.33.1](https://github.com/ellite/Wallos/compare/v2.33.0...v2.33.1) (2024-10-30)
Bug Fixes
[2.33.0](https://github.com/ellite/Wallos/compare/v2.32.0...v2.33.0) (2024-10-29)
Features
- replacement for disabled subscriptions, to more accurately calculate savings (5c92528)
[2.32.0](https://github.com/ellite/Wallos/compare/v2.31.1...v2.32.0) (2024-10-27)
Features
- settings to allow to ignore certificates for some notification methods (2a0e665)
[2.31.1](https://github.com/ellite/Wallos/compare/v2.31.0...v2.31.1) (2024-10-25)
Bug Fixes
- add missing {{days_until}} variable to string version of the webhook (ebc7b83)
- display actual error message when email test fails (ebc7b83)
[2.31.0](https://github.com/ellite/Wallos/compare/v2.30.1...v2.31.0) (2024-10-22)
Features
[2.30.1](https://github.com/ellite/Wallos/compare/v2.30.0...v2.30.1) (2024-10-14)
Bug Fixes
- verify correct path before creating logos folder (782ebcd)
[2.30.0](https://github.com/ellite/Wallos/compare/v2.29.2...v2.30.0) (2024-10-13)
Features
[2.29.2](https://github.com/ellite/Wallos/compare/v2.29.1...v2.29.2) (2024-10-11)
Bug Fixes
[2.29.1](https://github.com/ellite/Wallos/compare/v2.29.0...v2.29.1) (2024-10-11)
Bug Fixes
- mysql injection vulnerability (3d6a8c3)
- new profile page not being cached by service worker (3d6a8c3)
[2.29.0](https://github.com/ellite/Wallos/compare/v2.28.0...v2.29.0) (2024-10-09)
Features
- add url and notes as variables for the notifications webhook (790defb)
Bug Fixes
- bug when looping multiple subscriptions on the notifications webhook (790defb)
[2.28.0](https://github.com/ellite/Wallos/compare/v2.27.3...v2.28.0) (2024-10-07)
Features
- get admin setting api endpoint (07d456a)
- get categories endpoint (07d456a)
- get currencies endpoint (07d456a)
- get fixer api endpoint (07d456a)
- get household api endpoint (07d456a)
- get notifications api endpoint (07d456a)
- get payment methods api endpoint (07d456a)
- get settings api endpoint (07d456a)
- get subscriptions api endpoint (07d456a)
- get user api endpoint (07d456a)
[2.27.3](https://github.com/ellite/Wallos/compare/v2.27.2...v2.27.3) (2024-10-05)
Bug Fixes
[2.27.2](https://github.com/ellite/Wallos/compare/v2.27.1...v2.27.2) (2024-10-04)
Bug Fixes
[2.27.1](https://github.com/ellite/Wallos/compare/v2.27.0...v2.27.1) (2024-10-04)
Bug Fixes
[2.27.0](https://github.com/ellite/Wallos/compare/v2.26.0...v2.27.0) (2024-10-04)
Features
- api endpoint to calculate monthly cost (a173d27)
- fisrt api endpoint (a173d27)
- redesigned experimental mobile navigation menu (a173d27)
- split settings page into settings and profile page (a173d27)
- user has api key available on profile page (a173d27)
Bug Fixes
- small fixes and typos (a173d27)
[2.26.0](https://github.com/ellite/Wallos/compare/v2.25.0...v2.26.0) (2024-09-29)
Features
- add mobile menu navigation to experimental settings (1dbba18)
- use browsers locale to set dates on the dashboard (1dbba18)
[2.25.0](https://github.com/ellite/Wallos/compare/v2.24.1...v2.25.0) (2024-09-28)
Features
[2.24.1](https://github.com/ellite/Wallos/compare/v2.24.0...v2.24.1) (2024-09-23)
Bug Fixes
- small layout issue on the settings page (0623ceb)
[2.24.0](https://github.com/ellite/Wallos/compare/v2.23.2...v2.24.0) (2024-09-18)
Features
- add button to clean up search field (da3ee78)
Bug Fixes
- cases where theme and sort cookies could be missing (da3ee78)
- position of dropdown on rtl layout (da3ee78)
[2.23.2](https://github.com/ellite/Wallos/compare/v2.23.1...v2.23.2) (2024-09-04)
Bug Fixes
- sort order after edit subscription in case the cookie is missing (87809fe)
[2.23.1](https://github.com/ellite/Wallos/compare/v2.23.0...v2.23.1) (2024-09-01)
Bug Fixes
[2.23.0](https://github.com/ellite/Wallos/compare/v2.22.1...v2.23.0) (2024-09-01)
Features
- add multi email recipients (fed0192)
- add option for also showing the original price on the dashboard (fed0192)
- open edit form after cloning subscription (fed0192)
- select multiple filters on the dashboard (fed0192)
Bug Fixes
[2.22.1](https://github.com/ellite/Wallos/compare/v2.22.0...v2.22.1) (2024-08-11)
Bug Fixes
[2.22.0](https://github.com/ellite/Wallos/compare/v2.21.3...v2.22.0) (2024-08-09)
Features
- admin can manually trigger cronjobs (1946ac9)
Bug Fixes
- only allow the system and admin to run the cronjobs (1946ac9)
- reduce size of the log files of the cronjobs (1946ac9)
[2.21.3](https://github.com/ellite/Wallos/compare/v2.21.2...v2.21.3) (2024-08-08)
Bug Fixes
- broken avatar upload when using the french language (cf0d5d3)
- more deprecation warnings on image uploads (cf0d5d3)
[2.21.2](https://github.com/ellite/Wallos/compare/v2.21.1...v2.21.2) (2024-08-07)
Bug Fixes
- add samesite directive to cookies (8b0325c)
- service worker precaching logout.php causes user to be logged out (8b0325c)
- sort by price (8b0325c)
[2.21.1](https://github.com/ellite/Wallos/compare/v2.21.0...v2.21.1) (2024-08-06)
Bug Fixes
[2.21.0](https://github.com/ellite/Wallos/compare/v2.20.1...v2.21.0) (2024-08-06)
Features
- add option to list disabled subscriptions at the bottom (3281f0c)
- notification for wallos version updates (3281f0c)
[2.20.1](https://github.com/ellite/Wallos/compare/v2.20.0...v2.20.1) (2024-07-29)
Bug Fixes
- allow usernames with capital letters (f241ba2)
- use 2 decimal places for price on the calendar (f241ba2)
- use 2 decimal places for price when exporting ical in the calendar (f241ba2)
[2.20.0](https://github.com/ellite/Wallos/compare/v2.19.3...v2.20.0) (2024-07-19)
Features
- export subscriptions as csv (8f1e155)
- export subscriptions as json (8f1e155)
- user can delete their own account (8f1e155)
[2.19.3](https://github.com/ellite/Wallos/compare/v2.19.2...v2.19.3) (2024-07-15)
Bug Fixes
[2.19.2](https://github.com/ellite/Wallos/compare/v2.19.1...v2.19.2) (2024-07-15)
Bug Fixes
[2.19.1](https://github.com/ellite/Wallos/compare/v2.19.0...v2.19.1) (2024-07-14)
Bug Fixes
- unset sortOrder var (a1fab4d)
[2.19.0](https://github.com/ellite/Wallos/compare/v2.18.0...v2.19.0) (2024-07-14)
Features
[2.18.0](https://github.com/ellite/Wallos/compare/v2.17.0...v2.18.0) (2024-07-14)
Features
- disable display options checkbox when fixer key is not set (5f10525)
- display error message on the statistics page when the fixer key is needed but is missing (5f10525)
[2.17.0](https://github.com/ellite/Wallos/compare/v2.16.1...v2.17.0) (2024-07-11)
Features
- add filter and sort dashboard by subscription state (afff992)
Bug Fixes
- use the same font for inputs (a539058)
[2.16.1](https://github.com/ellite/Wallos/compare/v2.16.0...v2.16.1) (2024-07-10)
Bug Fixes
[2.16.0](https://github.com/ellite/Wallos/compare/v2.15.0...v2.16.0) (2024-07-10)
Features
[2.15.0](https://github.com/ellite/Wallos/compare/v2.14.2...v2.15.0) (2024-07-09)
Features
[2.14.2](https://github.com/ellite/Wallos/compare/v2.14.1...v2.14.2) (2024-07-08)
Bug Fixes
[2.14.1](https://github.com/ellite/Wallos/compare/v2.14.0...v2.14.1) (2024-07-05)
Bug Fixes
[2.14.0](https://github.com/ellite/Wallos/compare/v2.13.0...v2.14.0) (2024-07-05)
Features
[2.13.0](https://github.com/ellite/Wallos/compare/v2.12.0...v2.13.0) (2024-07-04)
Features
[2.12.0](https://github.com/ellite/Wallos/compare/v2.11.2...v2.12.0) (2024-07-03)
Features
- ability to add custom css styles (50bd104)
- cache logos for offline use (50bd104)
- more uniform and aligned styles on the settings page (50bd104)
- rework styles of theme section on settings page (50bd104)
Bug Fixes
- don't allow saving main and accent colors if they're the same (50bd104)
[2.11.2](https://github.com/ellite/Wallos/compare/v2.11.1...v2.11.2) (2024-07-02)
Bug Fixes
[2.11.1](https://github.com/ellite/Wallos/compare/v2.11.0...v2.11.1) (2024-06-30)
Bug Fixes
[2.11.0](https://github.com/ellite/Wallos/compare/v2.10.0...v2.11.0) (2024-06-30)
Features
- theming engine custom colors now affect icons as well (83e2066)
[2.10.0](https://github.com/ellite/Wallos/compare/v2.9.0...v2.10.0) (2024-06-27)
Features
- add purple theme (4d74c04)
Bug Fixes
- file name on ics export for subscriptions with non-ascii characters (4d74c04)
[2.9.0](https://github.com/ellite/Wallos/compare/v2.8.0...v2.9.0) (2024-06-26)
Features
[2.8.0](https://github.com/ellite/Wallos/compare/v2.7.0...v2.8.0) (2024-06-26)
Features
- also show previous payments on the calendar for the current month (c2e85d6)
- support automatic dark mode (c2e85d6)
Bug Fixes
- not every payment cycle was shown on the calendar (c2e85d6)
[2.7.0](https://github.com/ellite/Wallos/compare/v2.6.1...v2.7.0) (2024-06-25)
Features
[2.6.1](https://github.com/ellite/Wallos/compare/v2.6.0...v2.6.1) (2024-06-25)
Bug Fixes
[2.6.0](https://github.com/ellite/Wallos/compare/v2.5.2...v2.6.0) (2024-06-25)
Features
[2.5.2](https://github.com/ellite/Wallos/compare/v2.5.1...v2.5.2) (2024-06-24)
Bug Fixes
[2.5.1](https://github.com/ellite/Wallos/compare/v2.5.0...v2.5.1) (2024-06-21)
Bug Fixes
[2.5.0](https://github.com/ellite/Wallos/compare/v2.4.2...v2.5.0) (2024-06-21)
Features
- add option to clone subscription (8304ed7)
- edit and delete options now available directly on the subscription list (8304ed7)
Bug Fixes
- typo on webhook payload (8304ed7)
[2.4.2](https://github.com/ellite/Wallos/compare/v2.4.1...v2.4.2) (2024-06-10)
Bug Fixes
[2.4.1](https://github.com/ellite/Wallos/compare/v2.4.0...v2.4.1) (2024-06-09)
Bug Fixes
[2.4.0](https://github.com/ellite/Wallos/compare/v2.3.0...v2.4.0) (2024-06-07)
Features
[2.3.0](https://github.com/ellite/Wallos/compare/v2.2.0...v2.3.0) (2024-06-05)
Features
Bug Fixes
[2.2.0](https://github.com/ellite/Wallos/compare/v2.1.0...v2.2.0) (2024-06-04)
Features
Bug Fixes
- add webp support to gd on the container (fa99a73)
- translate: "no category" (fa99a73)
- trim fixer api key (fa99a73)
- update slovanian translations (fa99a73)
[2.1.0](https://github.com/ellite/Wallos/compare/v2.0.0...v2.1.0) (2024-05-27)
Features
- add slovenian translation (03ceb8a)
Bug Fixes
- currency conversion failing on the statistics page (03ceb8a)
[2.0.0](https://github.com/ellite/Wallos/compare/v1.29.1...v2.0.0) (2024-05-26)
⚠ BREAKING CHANGES
- allow registration of multiple users (#340)
Features
- add reset password functionality (e1006e5)
- administration area (e1006e5)
- allow registration of multiple users (#340) (e1006e5)
[1.29.1](https://github.com/ellite/Wallos/compare/v1.29.0...v1.29.1) (2024-05-20)
Bug Fixes
[1.29.0](https://github.com/ellite/Wallos/compare/v1.28.0...v1.29.0) (2024-05-20)
Features
[1.28.0](https://github.com/ellite/Wallos/compare/v1.27.2...v1.28.0) (2024-05-17)
Features
[1.27.2](https://github.com/ellite/Wallos/compare/v1.27.1...v1.27.2) (2024-05-17)
Bug Fixes
- duplicated messages on discord notifications (d44b40b)
- possible division by 0 on statistics page (d44b40b)
[1.27.1](https://github.com/ellite/Wallos/compare/v1.27.0...v1.27.1) (2024-05-13)
Bug Fixes
[1.27.0](https://github.com/ellite/Wallos/compare/v1.26.2...v1.27.0) (2024-05-11)
Features
[1.26.2](https://github.com/ellite/Wallos/compare/v1.26.1...v1.26.2) (2024-05-09)
Bug Fixes
[1.26.1](https://github.com/ellite/Wallos/compare/v1.26.0...v1.26.1) (2024-05-09)
Bug Fixes
[1.26.0](https://github.com/ellite/Wallos/compare/v1.25.1...v1.26.0) (2024-05-08)
Features
[1.25.1](https://github.com/ellite/Wallos/compare/v1.25.0...v1.25.1) (2024-05-07)
Bug Fixes
[1.25.0](https://github.com/ellite/Wallos/compare/v1.24.0...v1.25.0) (2024-05-06)
Features
Bug Fixes
- most error messages of the notifications endpoints would not reach the frontend (8994829)
[1.24.0](https://github.com/ellite/Wallos/compare/v1.23.0...v1.24.0) (2024-05-05)
Features
[1.23.0](https://github.com/ellite/Wallos/compare/v1.22.0...v1.23.0) (2024-04-26)
Features
[1.22.0](https://github.com/ellite/Wallos/compare/v1.21.1...v1.22.0) (2024-04-20)
Features
[1.21.1](https://github.com/ellite/Wallos/compare/v1.21.0...v1.21.1) (2024-04-19)
Bug Fixes
- small layout issues (769f8a0)
[1.21.0](https://github.com/ellite/Wallos/compare/v1.20.2...v1.21.0) (2024-04-19)
Features
[1.20.2](https://github.com/ellite/Wallos/compare/v1.20.1...v1.20.2) (2024-04-11)
Bug Fixes
[1.20.1](https://github.com/ellite/Wallos/compare/v1.20.0...v1.20.1) (2024-04-09)
Bug Fixes
[1.20.0](https://github.com/ellite/Wallos/compare/v1.19.0...v1.20.0) (2024-04-07)
Features
[1.19.0](https://github.com/ellite/Wallos/compare/v1.18.3...v1.19.0) (2024-04-03)
Features
[1.18.3](https://github.com/ellite/Wallos/compare/v1.18.2...v1.18.3) (2024-03-30)
Bug Fixes
[1.18.2](https://github.com/ellite/Wallos/compare/v1.18.1...v1.18.2) (2024-03-28)
Bug Fixes
[1.18.1](https://github.com/ellite/Wallos/compare/v1.18.0...v1.18.1) (2024-03-25)
Bug Fixes
[1.18.0](https://github.com/ellite/Wallos/compare/v1.17.3...v1.18.0) (2024-03-24)
Features
[1.17.3](https://github.com/ellite/Wallos/compare/v1.17.2...v1.17.3) (2024-03-20)
Bug Fixes
[1.17.2](https://github.com/ellite/Wallos/compare/v1.17.1...v1.17.2) (2024-03-18)
Bug Fixes
[1.17.1](https://github.com/ellite/Wallos/compare/v1.17.0...v1.17.1) (2024-03-18)
Bug Fixes
[1.17.0](https://github.com/ellite/Wallos/compare/v1.16.3...v1.17.0) (2024-03-17)
Features
[1.16.3](https://github.com/ellite/Wallos/compare/v1.16.2...v1.16.3) (2024-03-17)
Bug Fixes
- allow redirects on logo search (ae73db7)
- rename category after adding and sort order of categories (ae73db7)
[1.16.2](https://github.com/ellite/Wallos/compare/v1.16.1...v1.16.2) (2024-03-13)
Bug Fixes
[1.16.1](https://github.com/ellite/Wallos/compare/v1.16.0...v1.16.1) (2024-03-12)
Bug Fixes
- confusing wording for billing cycle (94ad0cb)
[1.16.0](https://github.com/ellite/Wallos/compare/v1.15.3...v1.16.0) (2024-03-10)
Features
- allow sorting payment methods (#217) (aef2d13)
- don't allow to change currency code if in use (aef2d13)
[1.15.3](https://github.com/ellite/Wallos/compare/v1.15.2...v1.15.3) (2024-03-10)
Bug Fixes
[1.15.2](https://github.com/ellite/Wallos/compare/v1.15.1...v1.15.2) (2024-03-09)
Bug Fixes
[1.15.1](https://github.com/ellite/Wallos/compare/v1.15.0...v1.15.1) (2024-03-09)
Bug Fixes
[1.15.0](https://github.com/ellite/Wallos/compare/v1.14.1...v1.15.0) (2024-03-09)
Features
[1.14.1](https://github.com/ellite/Wallos/compare/v1.14.0...v1.14.1) (2024-03-08)
Bug Fixes
[1.14.0](https://github.com/ellite/Wallos/compare/v1.13.0...v1.14.0) (2024-03-08)
Features
[1.13.0](https://github.com/ellite/Wallos/compare/v1.12.1...v1.13.0) (2024-03-07)
Features
[1.12.1](https://github.com/ellite/Wallos/compare/v1.12.0...v1.12.1) (2024-03-06)
Bug Fixes
[1.12.0](https://github.com/ellite/Wallos/compare/v1.11.3...v1.12.0) (2024-03-05)
Features
- add filters to statistics page (83234ab)
- allow deletion of the default payment methods (83234ab)
- allow renaming / translation of payment methods (83234ab)
- allow sorting of categories in settings (83234ab)
[1.11.3](https://github.com/ellite/Wallos/compare/v1.11.2...v1.11.3) (2024-03-02)
Bug Fixes
[1.11.2](https://github.com/ellite/Wallos/compare/v1.11.1...v1.11.2) (2024-03-02)
Bug Fixes
[1.11.1](https://github.com/ellite/Wallos/compare/v1.11.0...v1.11.1) (2024-03-01)
Bug Fixes
[1.11.0](https://github.com/ellite/Wallos/compare/v1.10.0...v1.11.0) (2024-03-01)
Features
[1.10.0](https://github.com/ellite/Wallos/compare/v1.9.1...v1.10.0) (2024-02-29)
Features
[1.9.1](https://github.com/ellite/Wallos/compare/v1.9.0...v1.9.1) (2024-02-28)
Bug Fixes
- move display settings to the bottom (ec25d4b)
- reorder subscription form (ec25d4b)
- show email field on adding household member (ec25d4b)
[1.9.0](https://github.com/ellite/Wallos/compare/v1.8.3...v1.9.0) (2024-02-27)
Features
- enable progressive web app (a2a315e)
Bug Fixes
- update packages to fix vulnerabilities (a2a315e)
[1.8.3](https://github.com/ellite/Wallos/compare/v1.8.2...v1.8.3) (2024-02-26)
Bug Fixes
[1.8.2](https://github.com/ellite/Wallos/compare/v1.8.1...v1.8.2) (2024-02-26)
Bug Fixes
- service worker redirect not set to follow (3640b54)
[1.8.1](https://github.com/ellite/Wallos/compare/v1.8.0...v1.8.1) (2024-02-26)
Bug Fixes
- service worker has redirections (4aca7bc)
[1.8.0](https://github.com/ellite/Wallos/compare/v1.7.0...v1.8.0) (2024-02-26)
Features
Bug Fixes
- improve traditional chinese translations (19e2058)
[1.7.0](https://github.com/ellite/Wallos/compare/v1.6.0...v1.7.0) (2024-02-25)
Features
- add email for notifications to household members (26363dd)
[1.6.0](https://github.com/ellite/Wallos/compare/v1.5.0...v1.6.0) (2024-02-24)
Features
- add stats about inactive subscriptions (#146) (ccac17a)
- sort disabled subscription at the bottom (ccac17a)
[1.5.0](https://github.com/ellite/Wallos/compare/v1.4.1...v1.5.0) (2024-02-23)
Features
[1.4.1](https://github.com/ellite/Wallos/compare/v1.4.0...v1.4.1) (2024-02-22)
Bug Fixes
[1.4.0](https://github.com/ellite/Wallos/compare/v1.3.1...v1.4.0) (2024-02-21)
Features
[1.3.1](https://github.com/ellite/Wallos/compare/v1.3.0...v1.3.1) (2024-02-20)
Bug Fixes
[1.3.0](https://github.com/ellite/Wallos/compare/v1.2.0...v1.3.0) (2024-02-19)
Features
- add apilayer as provider for fixer api (0f19dd6)
- add apilayer as provider for fixer api (#127) (0f19dd6)
- update exchange rate when saving api key (0f19dd6)
[1.2.0](https://github.com/ellite/Wallos/compare/v1.1.0...v1.2.0) (2024-02-19)
Features
- enable deployment in subdirectory (e2af9af)
[1.1.0](https://github.com/ellite/Wallos/compare/v1.0.1...v1.1.0) (2024-02-18)
Features
[1.0.1](https://github.com/ellite/Wallos/compare/v1.0.0...v1.0.1) (2024-02-18)
Bug Fixes
1.0.0 (2024-02-15)
Features
- add workflow for building and publishing docker images (970c96a)
- specify image stability type when triggering build (5b22cfd)
Bug Fixes
CONTRIBUTING
Contributing to wallos
We welcome contributions from the community and look forward to working with you to improve this project!
How to Contribute
Fork the repository: Start by forking the wallos repository to your own GitHub account.
Clone your fork: Clone the forked repository to your local machine (replace
with your actual github username): bashgit clone https://github.com/<YOUR_USERNAME>/wallos.git cd wallosCreate a branch: Create a new branch for your changes:
bashgit checkout -b feature/your-feature-nameor
bashgit checkout -b fix/your-bug-fix-nameMake your changes: Implement your feature or bug fix.
Test your changes: Ensure that your changes work as expected.
Commit your changes: Commit your changes with a clear and concise message:
bashgit add . git commit -m "Add your feature or fix"Push your changes: Push your branch to your forked repository:
bashgit push origin feature/your-feature-nameCreate a Pull Request: Go to the wallos repository on GitHub (https://github.com/ellite/wallos) and create a pull request from your branch to the
mainbranch.
Pull Request Guidelines
- One feature/fix per pull request: Please keep pull requests focused on a single feature or bug fix.
- Clear and descriptive title and description: Provide a clear title and description of your changes.
- Include relevant tests: If possible, include tests for your changes.
- Follow the project's coding style: Adhere to the project's coding style and conventions.
- Keep your pull request up to date: If changes are requested, please update your pull request accordingly.
Issues
- Bug Reports: If you find a bug, please open an issue with a clear description of the problem and steps to reproduce it.
- Feature Requests: If you have a feature request, please open an issue with a clear description of the feature and its benefits.
- Priority: Bug fixes will take priority over feature requests.
Translations
If you want to contribute with a translation of wallos:
Add your language code:
- Open
includes/i18n/languages.php. - Add your language code in the format:
"<language_code>" => ["name" => "<Language Name>", "dir" => "<ltr or rtl>"],. - Please use the original language name and not the English translation.
- Example:
"pt" => ["name" => "Português", "dir" => "ltr"],.
- Open
Create language files:
- Copy
includes/i18n/en.phpand rename it to your language code (e.g.,pt.php). - Translate all the values in the new language file.
- Copy
scripts/i18n/en.jsand rename it to your language code (e.g.,pt.js). - Translate all the values in the new javascript language file.
- Note: Incomplete translations will not be accepted.
- Copy
Create a Pull Request: Follow the Pull Request Guidelines above.
Contributors
Thank you for your contributions!
README
Table of Contents
- Introduction
- Features
- Demo
- Getting Started
- Usage
- Screenshots
- OIDC
- API Documentation
- Contributing
- License
- Links
Introduction
Wallos is a powerful, open-source, and self-hostable web application designed to empower you in managing your finances with ease. Say goodbye to complicated spreadsheets and expensive financial software – Wallos simplifies the process of tracking expenses and helps you gain better control over your financial life.
Features
- Subscription Management: Keep track of your recurring subscriptions and payments, ensuring you never miss a due date.
- Category Management: Organize your expenses into customizable categories, enabling you to gain insights into your spending habits.
- Multi-Currency support: Wallos supports multiple currencies, allowing you to manage your finances in the currency of your choice.
- Currency Conversion: Integrates with the Fixer API so you can get exchange rates and see all your subscriptions on your main currency.
- Data Privacy: As a self-hosted application, Wallos ensures that your financial data remains private and secure on your own server.
- Customization: Tailor Wallos to your needs with customizable categories, currencies, themes and other display options.
- Sorting Options: Allowing you to view your subscriptions from different perspectives.
- Logo Search: Wallos can search the web for the logo of your subscriptions if you don't have them available for upload.
- Mobile view: Wallos on the go.
- Statistics: Another perspective into your spendings.
- Notifications: Wallos supports multiple notification methods (email, discord, pushover, telegram, gotify and webhooks). Get notified about your upcoming payments.
- Multi Language support.
- OIDC with OAuth
- AI Recommendations with ChatGPT, Gemini or Local Ollama
Demo
If you want to try Wallos, a demo is available at https://demo.wallosapp.com.
The database is reset every 2 hours.
To access the demo use the following credentials:
Username: demo
Password: demoGetting Started
See instructions to run Wallos below.
Prerequisites
Baremetal
- NGINX or APACHE websever running
- PHP 8.3 with the following modules enabled:
- curl
- dom
- gd
- intl
- openssl
- sqlite3
- zip
- mbstring
- fpm
Docker
- Docker
Installation
Baremetal
- Download or clone this repo and move the files into your web root - usually
/var/www/html - Rename
/db/wallos.empty.dbto/db/wallos.db - Open the app in your browser — migrations run automatically on the registration page
- Add the following scripts to your cronjobs with
crontab -e
0 1 * * * php /var/www/html/endpoints/cronjobs/updatenextpayment.php >> /var/log/cron/updatenextpayment.log 2>&1
0 2 * * * php /var/www/html/endpoints/cronjobs/updateexchange.php >> /var/log/cron/updateexchange.log 2>&1
0 8 * * * php /var/www/html/endpoints/cronjobs/sendcancellationnotifications.php >> /var/log/cron/sendcancellationnotifications.log 2>&1
0 9 * * * php /var/www/html/endpoints/cronjobs/sendnotifications.php >> /var/log/cron/sendnotifications.log 2>&1
*/2 * * * * php /var/www/html/endpoints/cronjobs/sendverificationemails.php >> /var/log/cron/sendverificationemail.log 2>&1
*/2 * * * * php /var/www/html/endpoints/cronjobs/sendresetpasswordemails.php >> /var/log/cron/sendresetpasswordemails.log 2>&1
0 */6 * * * php /var/www/html/endpoints/cronjobs/checkforupdates.php >> /var/log/cron/checkforupdates.log 2>&1
30 1 * * 1 php /var/www/html/endpoints/cronjobs/storetotalyearlycost.php >> /var/log/cron/storetotalyearlycost.log 2>&1
30 3 * * 1 php /var/www/html/endpoints/cronjobs/generaterecommendations.php weekly >> /var/log/cron/generaterecommendations.log 2>&1
0 4 1 * * php /var/www/html/endpoints/cronjobs/generaterecommendations.php monthly >> /var/log/cron/generaterecommendations.log 2>&1- If your web root is not
/var/www/html/adjust the cronjobs above accordingly.
Updating
- Re-download the repo and move the files into the correct folder or do
git pull(if you used git clone before) - Check the Prerequisites and install / enable the missing ones, if any.
- Run http://domain.example/endpoints/db/migrate.php if you are logged in, or via CLI run:
php /var/www/html/endpoints/db/migrate.phpDocker
docker run -d --name wallos -v /path/to/config/wallos/db:/var/www/html/db \
-v /path/to/config/wallos/logos:/var/www/html/images/uploads/logos \
-e TZ=Europe/Berlin -p 8282:80 --restart unless-stopped \
bellamy/wallos:latestDisable healthcheck (optional, e.g., for Docker <25 or faster startup reporting):
docker run -d --name wallos -v /path/to/config/wallos/db:/var/www/html/db \
-v /path/to/config/wallos/logos:/var/www/html/images/uploads/logos \
-e TZ=Europe/Berlin -p 8282:80 --restart unless-stopped \
--health-cmd=NONE \
bellamy/wallos:latestDocker Compose
services:
wallos:
container_name: wallos
image: bellamy/wallos:latest
ports:
- "8282:80/tcp"
environment:
TZ: 'America/Toronto'
# Volumes store your data between container upgrades
volumes:
- './db:/var/www/html/db'
- './logos:/var/www/html/images/uploads/logos'
restart: unless-stoppedDisable healthcheck (optional, e.g., for Docker <25 or faster startup reporting):
services:
wallos:
container_name: wallos
image: bellamy/wallos:latest
ports:
- "8282:80/tcp"
environment:
TZ: 'America/Toronto'
volumes:
- './db:/var/www/html/db'
- './logos:/var/www/html/images/uploads/logos'
restart: unless-stopped
healthcheck:
test: ["NONE"]Usage
Just open the browser and open ip:port of the machine running wallos.
On the first time you run wallos a user account must be created.
Go to settings and personalise your Avatar and add members of your household. While there add / remove any categories and currencies.
Get a free API Key from Fixer and add it in the settings.
If you want to trigger an Update of the exchange rates, change your main currency after adding the API Key, and then change it back to your preferred one.
Screenshots
See more screenshots
OIDC
OIDC can be enabled on the Admin page and can be used with providers that support OAuth.
Wallos can also resolve OIDC settings declaratively from environment variables. When an OIDC_* variable is set, it overrides the corresponding database value at runtime without rewriting the database.
If OIDC_ISSUER is set, Wallos will fetch /.well-known/openid-configuration at runtime and use discovery for the authorization, token, and user info endpoints unless a more specific endpoint variable is also set.
| Environment Variable | UI Equivalent |
|---|---|
OIDC_ENABLED |
Enable OIDC/OAuth |
OIDC_PROVIDER_NAME |
Provider Name |
OIDC_CLIENT_ID |
Client ID |
OIDC_CLIENT_SECRET |
Client Secret |
OIDC_CLIENT_SECRET_FILE |
Client Secret |
OIDC_ISSUER |
No direct UI field |
OIDC_AUTH_URL |
Auth URL |
OIDC_TOKEN_URL |
Token URL |
OIDC_USERINFO_URL |
User Info URL |
OIDC_REDIRECT_URL |
Redirect URL |
OIDC_LOGOUT_URL |
Logout URL |
OIDC_USER_IDENTIFIER |
User Identifier Field |
OIDC_SCOPES |
Scopes |
OIDC_AUTO_CREATE_USER |
Create user automatically |
OIDC_DISABLE_PASSWORD_LOGIN |
Disable password login |
OIDC_REQUIRE_EMAIL_VERIFIED |
Require verified email for account linking |
SSRF allowlist
Wallos blocks webhook, SMTP, and OIDC endpoint URLs that resolve to private/link-local/loopback addresses unless the host is present in the Security Settings allowlist. Normally that allowlist is edited through the Admin UI, which requires a manual login before OIDC can be used against an identity provider on a private address (e.g. a self-hosted IdP at auth.example.com).
Setting the SSRF_ALLOWLIST environment variable overrides the database value entirely (same full-override semantics as the OIDC_* variables above), so the allowlist can be provisioned on first boot with no manual UI step. It accepts a comma-separated list of hosts/IPs, optionally with a port (e.g. SSRF_ALLOWLIST=auth.example.com,192.168.1.100:8123). While set, the Security Settings field in the Admin UI is shown but disabled.
API Documentation
Wallos provides a comprehensive API that allows you to interact with the application programmatically. The API documentation is available at https://api.wallosapp.com/.
Contributing
Feel free to open Pull requests with bug fixes and features. I'll do my best to keep an eye on those.
Feel free to open issues with bug reports or feature requests. Bug fixes will take priority.
I welcome contributions from the community and look forward to working with you to improve this project.
Contributors
Translations
If you want to contribute with a translation of wallos:
- Add your language code to
includes/i18n/languages.phpin the format"en" => ["name" => "English", "dir" => "ltr"],. Please use the original language name and not the english translation. - Create a copy of the file
includes/i18n/en.phpand rename it to the language code you used above. Example: pt.php for "pt" => ["name" => "Português", "dir" => "ltr"],. - Translate all the values on the language file to the new language. (Incomplete translations will not be accepted).
- Create a copy of the file
scripts/i18n/en.jsand rename it to the language code you used above. Example: pt.js for "pt" => ["name" => "Português", "dir" => "ltr"],. - Translate all the values on the language file to the new language. (Incomplete translations will not be accepted).
License
This project is licensed under the GNU General Public License, Version 3 - see the LICENSE.md file for details.
Why GPLv3?
I chose the GNU General Public License version 3 (GPLv3) for this project because it ensures that the software remains open source and freely available to the community. GPLv3 mandates that any derivative works or modifications must also be released under the same license, promoting the principles of software freedom.
I strongly believe in the importance of open source software and the collaborative nature of development, and I invite contributors to help improve this project.
Links
- The author: henrique.pt
- Wallos Landingpage: wallosapp.com
- Join the conversation: Discord Server
SECURITY
Security Policy
Reporting a Vulnerability
If you discover any security vulnerabilities in this project, please report them to the developer by emailing [email protected]. I appreciate your help in keeping the project secure.
Supported Versions
This project is currently supported with security updates for the following versions:
| Version | Supported |
|---|---|
| latest | :white_check_mark: |
| main | :white_check_mark: |
| 1.x.x | :x: |
Security Measures
I take security seriously and am working on ways to implement security measures to protect the project.
What is being done currenty:
- Periodically scan the docker image for vulnerabilities with trivy.
Reporting a Security Concern
If you have any security concerns or questions regarding the security of this project, please contact the developer at [email protected].
Responsible Disclosure
I kindly request that you follow responsible disclosure practices and give me reasonable time to address any reported vulnerabilities before making them public.