We and our connection partners made an update to the categorisation system, which should provide more accurate auto-assigned categories and tags on US and Canadian connections. The improved system is already live, so any incoming transactions are already using it. The default systematization is now more appropriate for personal finance applications like ours, even before being adapted to the default set of categories we use in Toshl. The earlier system used a broader and slightly dated venue classification, more often used by credit card companies.
This of course applies to new transactions, where the applied category and tags are based primarily on the transaction description that’s provided by the bank. On top of that, Toshl automatically learns from your corrections, so entries with similar descriptions will use your preferred categorisation.
In some cases it’s also able to determine the geographic coordinates based on the bank data and put the transaction on your map automatically, although this is still quite rare with most transactions.
If you’re very strict when it comes to your own accounting and would prefer to manually assign every category and tag, you can do that too. Just open the bank connections screen and tap Edit on an individual connection. You can set the categorization option to OFF there, so all new entries come in as “unsorted”. The same can be applied to transfer matching. Keeping the categorization ON however, can also help with transfer matching, as detecting an expense fits in the “Transfer” category is one of the factor that helps with detecting them. The system is then more inclined to look for the income part of the transfer and match it into a transfer.
Smaller improvements were also made in the way pending transaction categorisation is handled on all automatic bank connections, providing for more flexibility when the bank changes the transaction description considerably between authorising and fully settling the transactions.
Even when there are no new systemic changes such as the ones mentioned here, the categorization is constantly improving due to machine learning systems which learn from anonymized categorization data.
Freedom! Today we bring more freedom to your transactions, tomorrow we’ll perhaps take a shot at redefining the modern social contract and the balance of positive and negative freedoms within a society. Perhaps. Just don’t ask us for delivery time estimates.
Before we get too off track, here are the kind of liberties that we’re enabling in Toshl today.
Let’s say you have a bank connection and automatically import your expenses, incomes and transfers that way. Until now, a few entry properties that were provided by the bank were locked from editing. With today’s updates of the Toshl mobile apps, all entry properties are freely editable, including:
Categories, tags and descriptions were already fully editable before.
It’s now also possible to add manual entries on accounts that are connected to the bank and usually add entries automatically. Connected accounts are the ones marked with a green globe icon.
Why this change?
Initially, we thought that banks would be much better at providing accurate data via their official channels, so locking some info from editing seemed like a safer option. After a few years of experience with various banking APIs, we now know that’s often not the case and now occasionally consider keeping our money in socks beneath our beds instead of bank accounts. Coincidentally, we also sell socks (see 3-year plan).
Only some banks are that problematic though and lots of bank APIs work well. The Shitty Bank List keeps track of worst offenders, if you’re interested. In some cases, the data is fine, but you’d just want to change the date for personal budgeting reasons or similar.
Bank connections in more detail
We’re now also providing more info about how bank connections work and how often they update. Go to main menu / Bank connections and tap Edit next to an existing connection to check it out.
There are several types of bank connections, depending on which technical capabilities the banks provide or don’t, which technical partners provide them and the type of regulations exist in the country. In short, this should help you better understand when and how often the connection updates.
Entires imported from bank connections are automatically assigned categories and tags, if they can be deduced from the entry description. It also learns from your corrections. While most transactions should be categorized well, this can vary a bit depending on your bank and the type of information they provide. For example, if your bank reports only random numbers or huge blocks of text with every entry, the categorization system will have much a harder time determining the correct category.
To better accommodate such circumstances, we’ve made both this automations optional. They can be set on the level of the individual bank connections, so you can keep the auto-categorisation with the other banks that work well with it, for example.
If the categorisation is set to OFF, all the transactions imported via that bank connection will import as “unsorted” and you can manually assign categories later.
Optional transfer detection, improved review system
Transfers between accounts are also automatically detected, based on expense / income pairs on different accounts. If you have lots of financial accounts, with similar transactions that could be mistaken for 2 ends of a transfer, this could produce false positives. Transfer matches are now also optional and can be turned off per-connection.
We’ve also made other improvements to the detection system, removing the transfers category as detection criteria which should help with the accuracy and result in a lot less potential transfers to review.
Connections that clean up after themselves
When you remove a bank connection, the financial accounts and transaction data that it previously imported, remain. The financial accounts become manual and no longer update automatically, but the transaction data up to that point is still there. While this data preservation is desired in most cases, it can sometimes leave you with a bit of extra work, if you want to delete the transactions and accounts as well.
When removing a bank connection, you’ll now also be offered an option to delete all the data that the bank connection imported. Use this option cautiously as the deletion of data cannot be undone. This option requires a password or social log in confirmation. Additional warnings and explanations were added to make the data removal peril apparent.
All these new features are available in the latest versions of Toshl apps on Android and iOS. They’re released gradually, so they become available to a larger percent of all Toshl users each day and will be available for everyone within a few days. Once available for your account, it will update automatically. If it hasn’t updated yet, you can also start the update manually on the Toshl app page in the App Store or Google Play. The features are not available in the web app yet and are expected in a larger overhaul later on.
Which banks are new on Toshl? What’s updated, removed and what shitty. Here’s a summary of what’s been happening with the available financial institutions on Toshl, since we last posted updates in March.
New or re-added bank connections
Banque de Luxembourg
Banque Populaire (with regional branches)
BRED Banque Populaire
Caisse d’Epargne (with regional branches)
Crédit du Nord
Crédit Mutuel de Bretagne
Crédit Mutuel du Sud-Ouest
Natixis Wealth Management France
Société de Banque Monaco
Société Marseillaise de Crédit
Erste Bank Hungary is a special case. While an API connection has been re-added to test, the bank is very unresponsive and slow in fixing their API connection. We’ve had to resort to re-enabling the older semi-automatic scraping connection under “Erste Netbank”. Erste Hungary remains on our Shitty Bank List.
Credem – Credito Emiliano Privati e Famiglie (Carte)
Banco di Credito P. Azzoaglio Corporate
Banco di Credito P. Azzoaglio
Banque de Luxembourg
Banque de Patrimoines Prives
East-West United Bank
Eurobank Private Bank
Intesa Sanpaolo Bank
Skandinaviska Enskilda Banken
Union Bancaire Privée
ING Bank – Corporate
NatWest International Online
Royal Bank of Scotland International Limited ClearSpend
Royal Bank of Scotland International Limited EQ
United States of America
Capital One (almost, pending) – the bank has not been available for connection for a while, due to past disagreements between our bank connection partner Plaid and the bank. They’re reached an agreement, we filled a bunch of paperwork and the connection is supposed to be available from April 30th onward with the authentication done on the bank’s website. However Plaid still has technical issues which prevent us from displaying and linking the new connection. We hope and expect that this will be resolved shortly.
Many, many more banks and credit unions were added, some removed. The US have A LOT of smaller banking institutions like credit unions, so the changes to the list are too numerous to list here. Best to check searchable our bank connection list.
Capital One – Plaid had issues with the scraping type of connection of Capital One Canada for a long time, it was recently removed. We’re expecting the bank to be connectable under the new Capital One API connection, but are still experiencing some technical difficulties there. See under United States above.
UBI Banca – while the API connection was removed, scraping connections remain available. Likely due to API issues on the bank’s end.
UBI Banca (Carte)
UBI Banca Corporate
Enel X Corporate
Igea Banca Corporate
BCC di San Biagio Platani
BCC di Verona
Mexico enacted a new law, requiring location checking on bank log ins. A workaround was possible for most institutions, but problems remained with 2 banks. The Scotiabank connection was disabled. Our partners are continuing work on BBVA, but the viability remains in question. We hope that official bank APIs become a mandatory requirement in Mexico in the future to avoid such issues.
Shitty Bank list updates
We’re glad that we could remove Intesa Sanpaolo Italy from the shitty bank list. They’re resolved the API errors that have come up and we hope the connection remains in working order this time.
Unfortunately not all is well with the Intesa Sanpaolo group. We’re adding Privredna Banka Zagreb (PBZ), who is also a part of the Intesa Sanpaolo group. They have proven extremely unresponsive in resolving API issues an onboarding valid PSD2 licences. Intesa Sanpaolo Slovenia also continues to be unable to offer a stable API connection.
We’ve also added SKB and Sparkasse (Slovenia), Aqua Card and all Newday cards (UK). See why they’re shitty on the shitty bank list.
Overall, the connections are slowly but surely improving. We sure wish it was faster. Our bank connections partners at Salt Edge and Plaid take the brunt of the work here and we’re thankful for their efforts.
2021 has so far been eventful when it comes to bank connections, to put it mildly. We’ve experienced some Brexit and connection partner related issues, which resulted in having to reconnect EU bank connections and even an extended dowtime in the case of certain banks, where replacements weren’t provided by partners.
We have better news today. The issues with connections have been abating for a while now, as our bank connection partners resolved the issues. Salt Edge provided an alternative AISP registration and onboarded banks shortly after, but still experienced delays in some cases due to the onboarding process. Plaid’s complete EU downtime continued for 2 months. They were granted a new AISP registration in middle of February and have been onboarding banks again since, most are now available again, but some exceptions remain. Where the connections are still not available, the ball is likely in the bank’s court, either due to slow processes of approving the new registration or errors on the connection itself.
At the time of writing 15 152 bank connections around the world are available on Toshl.
Yesterday, a larger batch of French and Spanish and Irish connections have been re-enabled. Where Salt Edge provided replacements during Plaid’s downtime, those connections will continue to use the Salt Edge connection. The connections which remained missing on Salt Edge, but are available again over Plaid, have been enabled.
Recent additions and re-additions to bank connections:
Ireland Allied Irish Banks, Bank of Ireland, Permanent TSB (now over API), KBC, Ulster Bank
France Credit Lyonnais (LCL), Société Générale, HSBC, La Banque Postale
Netherlands American Express, Garantibank
Poland PKO Bank
Italy Banca Sviluppo Tuscia, Intesa Sanpaolo Corporate, BCC di Massafra, CRS, Banca Capasso Antonio, Banca Macerata, Banca Santa Giulia, Banca d’Alba, Banca di Sconto e Conti Correnti, Banco Marchigiano CC, Mediocredito Trentino, Prader Bank, Solution Bank
Germany Sparda Bank (7 regional veriations now over API), Barcalycard (now API)
Hungary MKB Bank
Spain Novo Banco
United Arab Emirates ADIB (Abu Dhabi Islamic Bank)
Slovakia OTP Banka
Czechia Fio Banka
Slovenia Delavska Hranilnica started supporting business accounts
Unites States several Charles Schwab connections in the US.
Israel Yahav Bank due to “technical issues” with scraping.
Still Missing in action – were available until Brexit issues, waiting to get them back. In most cases waiting for the bank to approve the new registration.
With API connections – which banks need to provide by law in the European Union, the banks provide a large part of the functionality on their end. The authentication and the sending of account, transaction data, if we simplify a bit.
While we understand that there are usually some glitches with the implementation of new solutions, some banks are showing remarkable consistency in not resolving issues for long periods of time. As for the reasons, we leave the Hanlon’s razor to you.
To better explain what goes on in some of these cases, what are the legal limitations of PSD2 and in hopes of improvements in the future, we’ve started the Shitty Bank List, where we’ll keep you updated on the depths of bank depravities. Our sincere hope is to shrink that list to 0 as connections and attitudes to Open Banking improve.
If you’re confused by that alphabet soup in the title, don’t worry, you’re normal. If, however, you work in the FinTech or European Union (EU) legislative space, you’ll know that this registration is a sort of licence that allows us to access balance and transaction data from banks in the EU.
PSD2 – Payment Services Directive, is an EU directive, further implemented in national legislations of EU member states. It, among other things, mandates all EU banks to provide automated access (APIs) to account and transaction data to third party providers (like Toshl) and regulates how that can be done.
AISP – Account Information Service Provider. Toshl Finance in this case. We help our customers access their bank account data and provide services built on top of that, like helping to analyse how you could spend less and save more money, budget better etc.
As per the PSD2 directive, third party providers like us need to register with a national banking regulator in the European Union, to access the data and provide information services. As Toshl d.o.o., our European subsidiary and where much of Toshl development is done, is registered in Slovenia, we registered with the Slovenian banking regulator – Bank of Slovenia.
The registration requirements and process
It wasn’t an easy process. All together it took us almost a year to complete. We’ve had to provide hundreds of pages of documentation, ranging from our security practices, information infrastructure, risk management, various proof of ethical unencumberedness of key personnel, professional liability insurance, business plans, contracts with business partners related to account information and so forth. Last, but not least, it involved a lot more paper and physical mailing that an all digital company would prefer to deal with.
Yet on a hot summer day, we finally got the news:
As you can tell, there was much rejoicing among the Medici branch of the Toshl monster family.
At the moment, with the help of Bank of Slovenia, we are also sending our registration to all other EU member state banking regulators for confirmation and entry into their national registries. This process is known as passporting.
Based on this new registration, we’ll be gradually updating our bank connections to connect in a more direct manner, using our own QWAC and QSEAL eIDAS certificates and with fewer required legal agreements with our partners to confirm, when adding new connections. It will also enable us to work better with banks to provide great new services to customers in the EU. So far, we’ve been using the shared or “umbrella” registrations provided by our bank connection partners Salt Edge and Plaid which help us in providing a more unified bank connectivity.
While we’re glad to have finally obtained this registration, one would be foolish to think all is sunshine and roses in PSD2 land. Even a year after the final deadline for PSD2 connectivity, many banks’ implementations remain abysmal or non-existent, EBA‘s (European Bank Authority) interpretations of the directive perplexing, to say the least… We’ll soon share more on the current PSD2 landscape and challenges ahead in an upcoming blog post.