Payroll Processing System to CRM

Overview

Client:
Southland Data Processing

Industry:
Payroll/HR

Project Type:
Connector/Integration

Engagement Duration:
2 weeks + ongoing updates and adjustments

Services Provided:
C# console application to move changed data to CRM (Client Relationship Management) system from the Payroll Processing system

Key Outcomes:
Client information is available in the support CRM system automatically.

Payroll to CRM system illustration



The Challenge

The client had a custom CRM system built to replace an expensive deployment of Salesforce. Manual entry of 1300+ clients was an unacceptable launch process. Additionally, having information beyond the client’s name improved the ability of the customer service representatives while attempting to support the client. Reducing the amount of time bouncing back and forth between the CRM and the processing system was a goal.

This was a very simple project and required only slight transformations of data and processing.

Objectives

  • Transfer new and updated client data into the CRM
  • Calculate the annual fees the client is paying for reference
  • Bring subscribed services and billing information into the CRM
  • Bring in client contacts from the CRM
  • Extract domain name information from client emails to auto-assign new incoming emails to the proper client when able.

Solution

The build was fairly straightforward with a direct SQL query against the payroll processing application. In the data, we pulled the most recent change date across multiple tables. Then, for each stage of the data, we determined whether the client existed in the system already and whether it had been modified since our last change data for each type of data (demographics, contacts, services, etc.). This was to keep the sync process as fast as possible.

Results

We ended up with a C# console program that could be scheduled at any interval desired. We discovered that some of the write-heavy operations interfered with the primary processing application, so we reduced the number of times per day that data was pulled to around 3 to avoid heavy processing. This was more than adequate for the ticket system and saved the client service representatives hours each week. They were no longer required to manually enter the clients in the CRM and a definite, but immeasurable amount of time cross-referencing data in the other system while documenting client issues.