Custom CRM Software Upgrade: Migration to Cloud, .NET Conversion

ABTO Software
  • Score Awaiting client review
  • Date Published
  • Reading Time 4-Minute Read

Our task was to upgrade the client’s custom CRM software. We needed to make it more convenient for usage by 14 offices all over the globe.

Project result

COVID changed the world dramatically and instantly. Abto Software got a challenging task to adopt a big and complicated custom CRM software to the post-COVID world. We did it gracefully, keeping all the client divisions operating productively.

Our development team continues to work with the CRM upgrade. The client gets significant improvements after every development phase.

About the client

Our client is an international charity organization that works all over the globe, including Africa, Asia Pacific, the Middle East, etc. They help millions of people to get access to clean water, food, and proper medical attention. The company programs include child protection, disaster management, economic development, and more. The Abto Software team was happy to straighten their tech team with our knowledge in software modernization.

Worldwide organizations require global solutions. Our main task was to upgrade their custom-built CRM software. We needed to make sure it would be reliable and clear in usage. Also, it must be easily accessible in its 14 locations all over the world.

Custom CRM software upgrade steps

Abto got the task to migrate the solution to the web to enable remote work. The time constraints were unbearably tight. As a result, we decided to use an iterative approach, giving significant value after every step.

Step 1. Migration to .NET

Our first task was to convert the desktop app written in Visual Basic to web-app on C# .NET. We used automated and manual tests to prove the CRM migration to .NET had been successful. Our team extracted a Data Layer based on the Entity framework.

The environments remained isolated, and each office still had its database. However, the web-based application now requires a single server per team.


  • Significantly faster connection speed (HTTPS instead of VPN+RDC);
  • Single server to maintain instead of multiple workstations for every employee;
  • The offices with poor internet connections can use 3rd party data centers and clouds.

Step 2. UI improvement

Our development team migrated the system’s user interface from static HTML to React.JS, jQuery, Bootstrap.


  • The responsive design enabled the application on mobile devices. Our client employees finally got the complete flexibility regarding their working places;
  • Multi-layer architecture increased security and sustainability. The performance was improved since most of the UI was rendered by client machines.

Step 3. CRM integrations

We added more CRM integration options to our custom-built CRM software. Our developers extended the API to support JSON-based integration with the other systems. Automatic jobs performed the data exchange in the background.

We used the mediator pattern. As a result, the systems interact with a single-point instead of an “everyone-to-everyone” scheme. It would be too sensible on versioning and might cause many compatibility issues


  • Reduced to zero manual work in keeping the systems synchronized;
  • Offices do not have to install all the same versions of the solution to keep data synced.

Step 4. Centralization and migration to the cloud

The step of centralization and migration to the cloud is being planned right now. We will merge together all the official databases. Also, our team will implement a single cloud-based solution to replace all the local instances.


  • Full centralization;
  • Reliable and fast connection for all client’s locations and sophisticated security.


Custom CRM software is a perfect tool to adjust management software to organization needs. Still, COVID-19 showed us that time and situations are changing quickly. Any company needs to be prepared for that. The professional CRM upgrade can open new opportunities before the organization as well as deal with process bottlenecks.

With the migration to .NET, moving the outdated desktop app to the web, UI improvement, we achieved significant results. Now our client has needed flexibility in remote work and feels safe about data security.