What's Changed
🧾 Smart invoice matching
Drop an invoice into MoneyMatter and it reads the vendor, total, date and invoice number for you. You pick whether you paid the bill or issued it. MoneyMatter then suggests the transactions that match it, and you attach the invoice to the right one. If you haven't recorded the payment yet, you can create a transaction from the invoice with the amount, date, account and reference already filled in. For an invoice in another currency, the transaction keeps the original amount too.
Open it from the arrow next to New transaction in the header. Invoice matching is part of the Plus plan, and you can try it 5 times on any plan.
📎 Files on new transactions
You can attach files while creating a transaction. Before, you had to save the transaction first and then open it again to add a receipt.
🚀 Bring back the Quick Start guide
If you dismissed the Quick Start guide, you can turn it back on under Settings → General. The hint pointed there, but the setting was missing.
🤖 Foreign-currency amounts from AI assistants
An AI assistant connected to MoneyMatter can record a transaction's original amount and currency, such as the euro total on an invoice you pay from a dollar account. Before, you could only set this in the app.
🐞 Bug Fixes
- You create a transaction without picking a payee, and MoneyMatter recognizes the payee from the note: the payee's default tags now get added. Transactions where you picked the payee yourself, and bank-synced transactions, got their tags all along.
- A bank connection disappeared from the Accounts page once you removed its last account, so you couldn't disconnect it. The connection now stays listed until you disconnect it.
- Long balances spilled out of the collapsed sidebar, and long account names made its pop-out menus scroll sideways. The collapsed sidebar drops the totals and shortens long names.
- Self-hosting: with the landing page skipped behind a reverse proxy, opening the site sent you to the container's internal port instead of your public address. You can also set
LISTEN_PORTnow, for hosts like Synology that block the app from using port 80.
📝 Code Changes
- feat: Invoice attachment to existing transactions by @letehaha in #644
- feat(transactions): attach files on create and prefill create form from invoice by @letehaha in e17670f0
- feat(settings): add toggle to re-enable the Quick Start guide by @letehaha in 9e6bcc91
- feat(mcp): expose original amount and currency on transaction tools by @letehaha in 0557452c
- fix(payees): apply default tags for server-matched payees and return tags by id by @letehaha in 72adbadc
- fix(accounts): show bank connections that have no accounts by @letehaha in 07ce6601
- fix(sidebar): drop rail totals and truncate long names in flyouts by @letehaha in 05acb3a5
- fix(self-host): relative nginx redirects and configurable LISTEN_PORT by @letehaha in 1d3dca64
Full Changelog: v0.29.3...v0.29.4