Development of Custom Billing Software for a Leading European Marketplace
The Customer is a European online marketplace with more than 2 million registered users.
For a long time, the Customer used a billing-as-a-service (BaaS) solution for international payment processing. However, the Customer estimated the cost of continuous usage of the system to be much higher than the cost of the development and maintenance of an in-house solution.
It was decided to implement a custom billing solution. To smoothly substitute the previously used billing system, ScienceSoft’s team should have understood the principles of its work. At the start of the project, our specialists gathered the information piece by piece collaborating closely with the Customer’s developers who integrated the previous BaaS system, the Customer’s employees (the Finance, Customer Support, and Security departments), the Customer’s provider of the BaaS, banks, payment systems and debt collection agencies.
Initially, ScienceSoft’s team quickly got the general understanding of the solution’s functionality and connections to start implementation as soon as possible. The more detailed requirements and specifications continued to frame up in the course of agile iterations where business analysis took place in parallel with implementation.
A new custom billing environment included a number of cloud-based systems responsible for:
- Invoice payment processing.
- Member notifications.
- Payment and credit note matching.
- Debt collection.
- Accounting (was integrated with SAP).
- Financial and business reporting.
- UI Tools for customer support specialists, system administrators, financial auditors.
ScienceSoft’s team constructed the solution to be:
- Inherently scalable – it automatically scales from using 2 to > 50 app servers depending on the load and employs scalable cloud resources, such as storage, publish-subscribe messaging, etc.
- Fault-tolerant – it can automatically recover from failures.
- Auditable – centralized log systems contain exhaustive information about the evolution of component states to allow for quick and easy recovery.
- Modifiable – the platform can easily adopt updates (conceptual changes, new features, etc.) due to layered architecture, clear separation of concerns (SoC), standard APIs, etc.
The new billing platform has been integrated into the Customer’s online marketplace. It allows users to manage billing-related processes quickly, easily, and safely without leaving the Customer’s site.
The platform has completely replaced the functionality of the previously used solution and proved to be inherently scalable, sustainable, and auditable.
The lack of detailed requirements and specifications was addressed through continuous communication with the Customer’s developers, the Customer’s employees and third parties involved.
Technologies and Tools
.NET, ASP.NET, Owin, NServiceBus, Rabbit MQ, Google Cloud, Docker, Mongo DB, Microsoft SQL Server, Grafana, Kibana, Tablo BI, SAP, AngularJS.