// case study
Register
Accounting and CRM system
Register is a comprehensive accounting and CRM system. We built it for Creative Web, which uses it to manage its successful projects such as obedovat.sk (now sold), zzz.sk, kam.sk, camarero.sk, bookio.sk, bookio.cz, lunchtime.cz and others.
Challenge
Creative Web operated several successful catalogue-style projects with a very similar business model. It employed a number of salespeople who actively sold web presentations across different segments. Once a presentation was sold, the salesperson passed the details on to the developers, who then set up the presentation according to the services purchased and the paid invoice. As these projects grew in popularity, the cost of managing them rose disproportionately — so Creative Web approached us to solve the problem.
Analysis
We knew this domain and its challenges well, having delivered the restauracie.sme.sk project. Our first priority was to map the processes in detail. We held a series of meetings with the employees involved across different roles, which let us understand the shortcomings and design a fitting software solution. To make the design easier to grasp visually, we sketched the entire proposed system down to the level of individual screens, and walked through these wireframes with the client in detail.
Solution
We designed the core of the system — which we named Register — along with the workings of the whole ecosystem. Each module had clearly defined responsibilities. Because these were existing, live projects, Register had to be developed in the shortest possible time. We therefore chose Scala together with the Squeryl ORM to implement the core. To create email, order and invoice templates quickly and easily, we built a template engine based on Flying Saucer and Freemarker that let templates be edited as HTML. Complex business statistics, built on OLAP, could be viewed and analyzed through an integrated BI (Business intelligence) tool. We handled user authorization and authentication for this multi-user system with the Apache Shiro library, which we already knew well from previous projects.
Integrations
Since payment was part of the automated processes, we integrated with the payment gateways of several Slovak banks, such as Tatra banka, Slovenská sporiteľňa, ČSOB and TrustPay. The implementation also included integration with the Flexibee and MRP accounting systems, to which invoices and customers could be exported. Finally, Register integrated with each of the end products (obedovat.sk, zzz.sk, …), sending them information about paid services and products and receiving orders for new or expanded services.
Benefits for the client
Once the new software went live and staff were trained, the positive results came almost immediately. Order turnaround was shortened, invoices were sent to customers instantly, and a web presentation was activated automatically as soon as its invoice was paid. The customer base was unified and duplicates and errors were eliminated, since customer data now lived in a single system. When prepaid services expired, the system automatically contacted the customer with a new offer, relieving the sales team of the burden of renewals. Comprehensive statistics and reports helped management better assess the current situation and make appropriate decisions. We also integrated Register with the accounting systems, which enabled issued invoices to be integrated automatically.