How we integrate the SaaS solution with the customer’s accounting system
At the service design stage, we made a decision: the integration of the service should be as simple as possible and do not require the installation of utilities from the business, let alone study our API. The user who decides on the use of software in the enterprise should, as quickly as possible, import his data into the service, process it and see the result. On the other hand, during daily work, the integration should be performed in one click and not require the filling of additional forms. Since we did not meet customers who do not have Excel, we chose him for the first case. In the future, we plan to add support for Calc (OpenOffice, LibreOffice) and several cloud solutions, such as Google SpreadSheet and MS Excel Web App. Filling out a spreadsheet for a business user is as convenient as possible and takes minimal time.
The integration algorithm is very simple; we described its technical implementation here :
fill in the table by template
drag it into the import form
For the second case, a solution is required that could establish a connection with the customer's DBMS and export and import data. Our experience suggested writing a utility that would call the API methods of the service on the one hand and the accounting system API on the other. The task is quite simple to implement, but not convenient to use, because the user must switch from the Web browser to the utility, click something, go back and update the interface. We settled on a java applet. In my opinion, this is the only solution that allows you to establish a connection with industrial DBMS directly in the browser, so to speak a bridge between worlds. In this case, the customer is required to create two stored procedures on the database server for import and export, respectively, to have a user who has the right to run them, and specify this all in the SaaS settings. The only negative point of such a decision is that the user will be able to perform such an exchange only while in the work network, since The server is accessible by a common (internal) name.
In the service architecture, it looks like this: ')
And here is a video of how the process looks at the service:
The video shows a snag I encountered in the process of implementing the solution: maybe someone from a respected community user has come across this problem and found a way to overcome it, tell me the solution in the comments. The certificate that is signed by Java-applet is installed on the client machine as trusted.
How do you integrate your SaaS solutions with customer’s accounting systems?