Baking BankID & Fortnox into HomeCraft – and what we learned in the process
Implementing local software into an app you are building is no easy task, primarily because you have to get a deep understanding of all the tools you will have to integrate into the software. This can be a problem if you are trying to integrate quickly and meet tight deadlines. JSGuru faced such issues not long ago when building an MVP for a Swedish startup HomeCraft. Here is a case study of this experience that can maybe help you in your future projects.
What we had to take into account when developing this application is that Sweden is much more digitalized than most of the world. This is where we come to the tools we have had to integrate. One of them is BankID – a tool that allows users to register and sign in to an app using their fingerprints or face recognition. Most people are used to signing in like this instead of using regular email, so it’s very popular in the country. Almost every phone has this app installed to be able to sign into different services and we wanted HomeCraft to be one of them. The other service that was integrated was Fortnox – a well-known e-accounting system for invoicing in Sweden. This integration enables the landlord to easily pull all the invoices from his/her account, connect them with the HomeCraft app and then distribute them to all the apartments.
These two integrations are highly valuable because Swedes are used to them being a part of their everyday life. By bringing the app closer to local users, we increase the chances of HomeCraft becoming one of those local well-known tools. However, since they are not local to us this has made the integration somewhat challenging. Here are a couple of issues that appeared along the way:
- lack of proper documentation
- lack of places where we were able to ask questions
- lack of SDK-s for widely used languages
Documentation can be an issue because it is usually written in the local language or its content is unclear. To be truthful, Google Translate comes in handy, otherwise, it would take twice as long.
The second issue we mentioned is the lack of forums and communities where you can ask questions regarding the implementation. To solve this, you need to rely on official technical support, and their response time can take up to a couple of days. This is very hard to calculate into development time, but it is good that you know at this point that it can be an issue. The plus here is that all of the software we were integrating was Swedish, and Swedes speak English very well, so it was a quick fix even when we had to jump on a call.
On the plus side, we had the opportunity to speak with the engineers that were directly involved with the development, so we got a deeper insight into the whole structure.
And the final major challenge was that you usually don’t get an SDK for integration, and if you happen to stumble upon one, it is usually in a language that is not compatible with the stack you’re currently working with. Eventually, you end up writing your own API wrappers and using the original SDK just as the blueprint (which is a much faster way than going through every line of documentation over and over again), or you can always search NPM or GitHub for a solution, you might eventually dig something up.
HomeCraft became one of the most promising real estate management software solutions in Sweden within a year, with a wide spectre of functionalities, and new ideas are springing up every day. Here at JSGuru it has been interesting to follow the ideas of HomeCraft founders and implement some that have not been present on the market, not in Sweden or anywhere else in the world.
So, if you are looking to implement third-party software that is characteristic for a certain country, be patient, try to calculate in the extra time and don’t wait to reach out to their support if an issue arises. Good luck!