CRM to Social CRM - A Serverless Implementation
Social media’s (SM) development and popularity have paved way for brands to build a community. Social media allows enterprise to reach wider group of customers and these channels are extremely convenient for the customers when compared to long inconvenient phone calls. Brands also use CRM for efficient customer support, few CRM systems does not have these integrations. TechConative have built an application to upgrade your CRM to Social CRM.

Challenge
Need to support multiple Social Media. Integrations touch points/APIs of Social Media are changing dynamically to accommodate the dynamic needs of the customers. CRM integrations should be carved from architecture and run as microservices to cater the needs. Microservice architecture requires dedicated infrastructure to process data from social media, DB for persistence storage and secrets manager to hold secret key which in turn creates a significant impact on operating costs.
Solution
Leverage cloud offerings like Serverless functions, Secret manager, Pub/Sub and managed database services that offers out of the box features like scalability, pay-as-you-go, secure key handling and many more.
Solution Architecture
We have designed/architected our solution with the following services in Google Cloud Platform (GCP):
- Cloud functions - To collect relevant feeds from social media, process the messages, AI/ML that decides whether a post is a complaint or not & post response to social media.
- Secrets Manager - To store API keys, secrets & tokens of social media & CRM systems.
- Cloud Pub/Sub - To hold the messages collected from social media.
- CRM - ERPNext for - an open-source ERP with CRM modules. In reality any CRM with webhook support should do.
- Firestore - A cloud NoSQL solution to persist the map between tickets in CRM & thread in social media.
- Trigger - Invoke function that collects post/message/tweets from SM.

Architecture Summary
- A time trigger approach to collect all posts that are not processed before.
- Process feeds asynchronously after the collection by publishing them into Pub/Sub.
- Create tickets in CRM only for complaints, and only for new thread. If it’s a reply on existing thread, update it as a comment on an existing ticket.
- Customer support executive updates the ticket with comments / resolution that’s passed back as a reply to Social Media.
Demo Screen Shots
Below screenshots captures a conversation happened between a user and the CRM executive. Wherein the user uses only Twitter for communication and the CRM executive uses only the CRM (ERPNext here) for the communication and our solution facilitating seamless communication.



Advantages
- Empower your support team by having them connected to users from all Social Media platforms via your CRM.
- Seamless communication.
- Improve brand reach and perception.
- No server management.
- Greater flexibility.
- Decreased time to market.
Cost Advantage
Costs calculate with the following assumptions:
- On a day 50K posts would be processed.
- Function invocation will be within 2M/month.
- Max of 800K GB of compute memory & Max of 600K GHz.
- No of secrets to be maintained in around 20.

To run the entire serverless architecture we would require approximately USD 21. Which is far less when compared to the cost to run a E2-Standard compute machine (USD 132) for a month.
Conclusion
An integration between your customer relationship management (CRM) software and social media channels will empower your teams to provide better customer service also paves a way to engage and understand customers in seamless fashion without many hurdles in maintaining the integration, the most important of all is you can integrate it with your legacy CRM and the operating cost is just a minuscule.