Overview
Our client is a big printing company, providing services on the domestic market, and boasting a homegrown system for managing contracts and deals. Among their customers, there are many Salesforce Marketing Cloud users that are using printed materials, created by our client. JET BI has developed a fully custom solution, allowing the company to automate the order processing as well as to quickly track the data from Marketing Cloud outputs to the client’s order management system.
Challenge
As the Salesforce Marketing Cloud adoption was growing in the local market, our client spotted an opportunity to optimize their order management and to increase their customers’ loyalty. It can be achieved by launching an AppExchange custom journey builder activity, allowing the use of Marketing Cloud outputs to generate printing orders directly from the system.
Solution
A custom Heroku based journey builder activity was designed and built to get the customer’s contact details from the printing company via a homegrown API, capture Marketing Cloud Journey Builder activities outputs, store them safely on Heroku, and execute data export from Marketing Cloud Data Extension to the customers HTTP server on a scheduled basis. To ensure customer data protection, GPG encryption was used. The app provides flexibility in terms of data mappings and supports multiple languages for easy configuration.
Technology
The solution consists of two interrelated applications that can be logically split into the front-end and back-end. The back-end solution is a Java application that communicates to Marketing Cloud Instance through SOAP API, sends data to the front-end application, executes data encryption, and exports the files to the FTP server. The back-end application also handles configuration (data mappings) storage, gpg encryption, and error handling.
The front-end application is a node.js app that’s using postmonger framework. The App is a simple guided configuration wizard that helps Marketing Cloud easily add the Client’s custom activity to any Journey. The branded application becomes available under the custom activities section in the Journey Builder configuration panel.
The application architecture is multi-tenant, meaning that the client hosts a single version of the application distributing the package to Marketing Cloud users while exposing the endpoint.
Heroku was selected to be the hosting platform for the applications for a number of reasons. It’s a Platform as A Service (PaaS), enabling developers to build, run, and operate applications entirely in the cloud. There is an enterprise team that helps to manage Heroku applications. And finally, the Heroku market provides numerous add-ons so that developers can focus on their own application logic, and not the additional complexity of keeping supporting services running at full production capacity. Heroku add-ons are components, services, or pieces of infrastructure that are fully maintained for you, either by a third-party provider or by Heroku.
In our application we used the following add-ons:
Adminium - the addon provides the administration interface for your data.
Heroku Postgres - delivers an open-source, reliable and powerful database as a trusted, secure, and scalable service that is optimized for developers.
Logentries - the addon for log management with real-time Heroku-specific alerting & dashboards.
Mailgun - the email service to send, receive, and track email.
PointDNS - is an add-on that will give you the right to manage all your domains from a friendly and easy-to-use interface.
Outcome
Our client has joined pioneers among Salesforce Marketing Cloud custom application providers, increased their customers’ loyalty, and optimized a big chunk of order management tasks by fast-tracking the data flow from MC to the printing factory without any manual intervention. And they did all of that while keeping high standards of data protection and providing great flexibility to their customers.