Aurum
A financial assistant you talk to: you speak, it books income, expenses and fixed costs per company, reads invoices and receipts, answers out loud and shows everything on a dashboard. It installs as an app straight from the browser.
People running their own company record the money later, or never: opening a spreadsheet, picking a category and typing an amount in the middle of the working day does not happen. And an assistant that says the wrong number is worse than no assistant at all.
A voice conversation end to end, with the system deciding what the AI may do and what it has to ask for. Several actions in a single sentence become one list with one tap on Confirm. Every amount spoken in an answer has to come from a query result, otherwise the answer is written again. Text that came from a document enters marked as data, never as an order. Nothing that touches money is saved before the yes. The behaviour comes from prompt engineering on a budget, tools with a strict schema, grounding and an evaluation battery, with no fine-tuning. The model is configuration, not code: one goes out, another comes in behind the same gateway, with nothing retrained.
A live app, installable from the browser: speech and listening in a stream, vision for photos and PDFs, exact reading of the invoice XML without going through the AI, per person memory with vector search inside the database itself, and 26 tools the AI calls on its own. The guarantee is measured, not promised: 47 evaluation scenarios with real conversation, 166 rule checks in the database and 71 end to end tests. Cost and waiting were measured before and after too: a tool-calling turn got 54% cheaper and the confirmation question now reaches the screen in 3.5 s instead of 6.3 s.
- Period
- September 2026, ongoing
- Role
- Product, architecture, backend and AI
- Tech
- Next.jsTypeScriptTailwindshadcn/uiPostgreSQLpgvectorDenoPWA
From zero to the dashboard, by talking, with sound
A brand new account, one whole session with no cuts. Aurum asks my name, introduces itself, registers the first company and fixes its name when I say I got it wrong. I switch the preference to save directly, book income and expenses by talking, and it stops to ask which category instead of guessing, creating the ones I ask for. I mark everything as paid, create a fixed expense, ask how invoice importing works and open the dashboard with its filters. There is no form at any point: everything goes in by voice.
Book it by talking, and confirm before it saves
A single sentence becomes a finished entry. Before saving, it reads back the type, the amount, the company, the date and the category it picked, and waits for a tap on Confirm. Only after the yes does the expense exist in the database, and the closing answer says what was saved.
Several actions in one sentence
One income and one expense, in different companies, said in the same sentence. Instead of saving both and reporting afterwards, it builds the list item by item, with each amount, company and category, and saves them together on Confirm all.
The category it asks about instead of guessing
An expense that does not fit any obvious category. It does not pick one on its own: it names the categories that exist in the account, offers to create a new one and waits for the answer. A wrong category on money is an expensive mistake, so asking costs less than guessing.
Invoice XML read without going through the AI
The invoice file comes in through the import button and the code reads the fields directly, so the amount comes out exact. When the issuing company's tax number matches one of the registered companies, the entry goes straight in, and the answer states the amount, the date and who the invoice was issued to.
A question about numbers, an answer with the amount
How much went out this month and how much is still to come in, asked in plain language. Every amount spoken in the answer comes from a query made in that same turn, and the answer also separates what is already paid from what is still open, with the company and category it came from.
Dashboard, from the headline numbers to the category map
Result, income, expenses, receivables and payables at the top, and below them the month by month evolution, the flow of where the money comes from and where it goes, the ring showing how much of the period is already paid, the comparison per company and the map of expenses and income by category. All of it summed in the database, not in the browser.
Filters that become a pill and an address
Period, date basis, type, status, company and category. Each chosen filter shows up as a pill at the top and goes into the page address, so a view can be saved or sent to someone. Removing the pill undoes the filter and the numbers come back at once.
The entry list and the detail sheet
The list shows amount, company, date and status, with paid and pending side by side, and fetches more items as the scroll reaches the end. Tapping an entry opens the detail sheet, which shows the whole record and offers to correct it by talking to Aurum without leaving the panel.
Deleting, with the button changing colour
On a delete request the blue confirm button turns into a red delete button, and the item is spelled out, with amount and date, before any click. The joking steps aside when the subject is erasing money: clarity first, the answer after.
On the phone, from the sphere to the panel
The same conversation on the narrow screen: the sphere takes the centre, the entry is confirmed with a thumb and the panel reflows into a single column, with the headline numbers stacked and the charts redrawn for the device width. The filters arrive on a sheet that slides up from the bottom.
