Instant Navigations
Most of reconciling is clicking
Working through a month is a long run of small hops. You open the inbox, check a receipt against its transaction, go back, open the next one, and keep going until the pile is gone. Expensicat used to make you wait at both ends of every one of those hops, because going back reloaded the page as surely as going forward did. The structure of each page now lives in your browser, so it paints on the click and only the data arrives late. This covers the dashboard. Signing in, onboarding, and the customer portal still load the way they always did.
You can start before it finishes
The header and filter bar arrive with the page rather than after it. So if you opened Transactions to find one Namecheap charge, you can type it while the rows are still loading, rather than watching a full table paint that you were about to narrow to one line anyway. Underneath, the loading state is built from the real table with the same columns and row heights, so rows swap into place instead of shoving the page around as they arrive.
Where you left off
Going back no longer rebuilds the page from scratch. You return to the spot you were scrolled to, with whatever you had half typed still in the box. Filters and open panels live in the URL and already survived a back button, what changed is that they come back without the page reassembling itself first.
- NavigationThe page is on screen when you click it. Working down the inbox, or going from a receipt to its transaction and back, no longer costs you a wait at every hop.
- NavigationSearch and filters are ready before the table is, so you can type the vendor you came to find instead of waiting for a full list you were about to narrow anyway.
- NavigationGoing back no longer rebuilds the page. You land where you were scrolled to, with anything you had typed still typed.
- NavigationThe loading state is the shape of the real table now, so rows appear in place instead of the page resizing under your cursor as they land.
- BankingYou can remove a bank connection. There was no way to before, so an account you had stopped using kept syncing and kept emailing you to renew it.
- BankingRemoving every account under a connection used to hide it from you while it carried on syncing and sending renewal reminders in the background. It now stays on screen until you remove it.
- MatchingReceipts match when the vendor bills under a name your statement doesn't use, like a Meta invoice against a FACEBK charge. Those were the ones landing back on your desk by hand every month.
- InvoicesShare links in invoice, credit note, and quote emails open again, including the ones already sitting in your customers' inboxes.
- DocumentsFile uploads work again.
- BankingA newly connected account no longer shows as imported until you reload.