Development of a Relocation Notification in a Customer Portal

Customer portal showing first step of an up-to five-step relocation process.

Key Facts

Background

Up to now, reporting relocations has been an analog process and does not fit in with the company’s strategic digital orientation. A new solution aims to simplify this.

Situation Before

Previously, when customers moved, they were able to contact customer service by telephone to obtain a new offer or go through the entire website ordering process without it being pre-filled with the customer’s details. This additional effort meant that the potential for customer retention was not fully exploited. More customers switched to another electricity provider after moving because of this process.

Objective

The following objectives were identified:

  • Registered customers can easily switch their electricity tariff using the data available in the system
  • If it is not possible to move from the previous tariff, the customer can conclude a new contract with just a few clicks
  • The customer receives an overview of the costs if they change

Implementation

As this is a very extensive project with all the processes in the background, an agile and iterative approach was chosen to carry out and test the development step by step. This resulted in several minimum viable products (MVPs), which were made available as such to end customers to obtain feedback and enable customer-centric further development.

Initially, the focus was on the move-out notification. Customers can only report their move-out. The move-out notification also provides the basis for the worst-case scenario in which no new offer can be made to the customer.

The second step dealt with the transfer of existing contracts. Here, it is important to determine whether it is possible to transfer the contract to the new place of residence and whether the contract itself can be moved. To implement this correctly, close coordination was necessary with the experts from the SAP area, who can provide the necessary information.

In the final implementation phase, the switch to a new contract was realized. The existing customer data must be used for this to enable a simple and user-friendly conclusion. As the contract must be converted at several points, close cooperation with other departments is also essential here.

A major challenge during implementation was to maintain an overview of the various process paths and workflows. A technical flowchart was created to show the various options and paths.

My Contribution

As a software developer, I was responsible for designing and implementing the backend services. This included creating the interfaces and implementing the processes. For me, it was important that each individual process strand ran smoothly and that the correct result arrived in each participating system at the end.

To coordinate the technical processes, I took care of the visualization and documentation of these in the form of diagrams. To this end, I was in close contact with the departments involved.

With such a system, it is important to ensure that the data is correct. That’s why I defined precise rules for validation in consultation with my SAP colleagues. These are enforced via the domain-driven design used in such a way that there can be no object that is in an invalid state.

To ensure that everything worked well together in the end, I was in close and interdisciplinary contact with colleagues from SAP development, customer service and sales. Among other things, this enabled me to ensure that the SAP functions were connected quickly and smoothly and to react quickly and flexibly in the event of an error. To improve communication with other departments, I visualized technical processes using diagrams.

If there were bottlenecks in the front end, I supported the development of the React components and logic.

Technologies Used

A variety of technologies were used to implement the application. The backend was developed in C# and .NET Core, while the frontend was mainly developed in React with TypeScript. I used the ASP.NET framework (Web API) to develop the REST and gRPC interfaces. To map the asynchronous processes, I used NServiceBus, which ensures the delivery of messages even in the event of an error. I used the existing Microsoft SQL Server cluster to store data. I used the Entity Framework to access the database.

Customer Benefits

The implementation of the digital relocation processes has increased customer satisfaction. Customers who want to continue to be supplied by the company no longer must call customer service or laboriously re-enter all their details in the online ordering process. In addition, the sales department loses fewer customers due to cumbersome processes. This saves acquisition costs.

You need to digitalize complex business processes and need assistance in implementing them? I am here to help.