Integration Architecture (Inbound) using Platform Events

Almost all projects that I have been involved with have some form of data being pushed into Salesforce from external systems “Inbound Integration”. Until Platform Events came into existence, there were APIs (SOAP, REST, BULK) that allowed any middleware or system or program to push data into Salesforce.

The downside of API based integration is that external systems pushing data into Salesforce is dependent on the completion of the transaction meaning if data is being pushed into an object and if there are triggers (and there will always be) running on the data being pushed, then the external system must wait until all the business logic in the trigger completes its execution.

Platform Events with its concept of publishers and subscribers have the unique ability for various systems to push data (publishers) and subscribers to consume whenever they are ready. Both the parties are not dependent on each other and use the construct of the platform event object as the interface specification.

This benefit along with many others is when I started to use Platform Event as the interface layer for pushing data into Salesforce. Below is an outline of how a typical inbound integration would look like. Watch out for things like limits, limited custom field types …etc

Inbound Integration Architecture

Happy to hear your thoughts!

The Writing Begins

Over the years, I have gathered many tips and techniques that helps me in small little ways on projects. While I have been an active reader of different blogs, it didn’t occur to me that I have enough content to publish my own blog and new year resolutions are a great way to start something! So here it is to 2018, the Writing Begins …

Good company in a journey makes the way seem shorter. — Izaak Walton