An Investment Advisor’s outdated approach to providing regular client updates on their investment portfolios began to lag their competitors, and clients continued to request a modern and more secure way for their important information to be tracked and communicated. In response, Suite3 LLC were engaged to develop a client portal that would enable them to provide a higher level of service to their clients. The goals of the portal were simplicity, speed, security, and standout style and design.
The Orion platform is utilized to aggregate and homogenize data, which gives the Advisor the ability to swap out technologies with minimal disruption to the rest of their operation. The portal uses the Orion API which is a fully functional RESTful API for the Orion Portfolio Accounting System. The API provides functionality for: Retrieve, Update, and Create Portfolio records, and associated data.
The clients held-away assets are obtained via the Quovo’s Aggregation RESTful API, that provides the advisor methods for retrieving data from financial institutions on behalf of their clients. Giving the advisor the ability to calculate a client’s true net worth, giving clients a 360-degree view of their wealth.
Using data from multiple data sources allows the Advisor to consume and provide data relating to their client accounts in a way that hasn't been achievable before. The Advisor will be able to see managed accounts, held-away accounts, sundry assets and private investments in one view and use this data to better advise and invest on behalf of their clients.
The technology stack utilized to develop the portal includes:
VSTS, Asp.Net WebAPI, SignalR, Angular, Typescript, Azure, Redis, Fusion Charts
Early on, we decided to use Visual Studio Team Services (VSTS) for managing the Scrum project along with the Git source control features. By using VSTS, we were able to setup continuous integration that made it easy to get the latest application version into a testable environment very quickly.
The user interface of the application was built using Angular, written in TypeScript. Angular gave us a framework to quickly create a single page application that provided a fast user experience to the end-user. The user interface also used Fusion Charts to graphically show the many views of data in an easy-to-understand format.
One of the unique challenges of the solution was to optimize the user interface communication with the end data providers in a way that would give the fastest user experience. We accomplished this by using Asp.Net WebAPI’s to provide a business logic layer that naturally cut down the many calls to data providers. This business layer also uses a Redis Cache for minimizing calls to the end data providers.
When features provided by the end data providers needed time to process, we utilized SignalR to push the data to the Angular application instead of making the user wait for a slow running process.
To provide faster response times, high availability and a failover capability, the portal utilizes Azure in multiple data centers. This allows the data center closest to the user to respond as well as fail over to another data center in the case one would be offline. The portal also uses the Azure App Service Environment protected by a web application firewall to protect the traffic coming into the application.
The portal supports advisors and clients. Advisors can maintain configuration data for the application as well as have the ability to view data as the client user for any client that they support. Clients see all their account data in one place. Including: balances, performance, allocation, detailed holdings information, as well as secure data sharing.
Some of the major features of the portal include:
Because of the portal, the Advisor provides a higher level of service to their clients by unlocking data with rich graphics, interactive charts, and easy-to-read reports. Clients now have a single-source of their investment data, important documents and content provided by their advisor. For the advisor, there is now a window into the potential business opportunities through the review and analysis of a client's total net worth via the personal balance sheet. This results in both is increased business opportunities and service improvements through a better understanding of the client's total net worth.