Serverless Currency Exchange Rate Synchronization
Custom Serverless Connector for
Currency Exchange Rate Synchronization
Oracle NetSuite to Salesforce synchronization
Serverless Currency Exchange Rate Synchronization
Custom Serverless Connector for
Currency Exchange Rate Synchronization
Oracle NetSuite to Salesforce synchronization
Currency Exchange Rate Synchronization: Oracle NetSuite to Salesforce
In this case study, we will show one example of implementing a serverless approach to building reliable data synchronization tool. It is a cost-effective, efficient and secure way for currency exchange rate synchronization.

Our goal was to create a robust custom connector that our customer would own at close to zero monthly associated expenses and burden on the IT department during adoption and product lifetime as opposed to paying expensive monthly subscription or installation fees.
Our goals and requirements
We were about to start building a long-term low total cost of ownership solution for our customer. Some of the requirements were:

  1. Reliable and robust data integration tool for currency exchange rates from NetSuite to Salesforce.
  2. Be able to configure integration from Salesforce without writing the code in Apex.
  3. Safely store all sensitive information.
  4. Build a library so that our customer IT department can extend an integration in the future if needed.
  5. Close to zero monthly associated expenses and burden on the IT department during adoption and product lifetime.
Serverless Framework
We chose to use AWS Serverless Application Model (SAM) over Serverless Framework. We made this logical decision for a few reasons:

  1. A lot of new infrastructures that our customer built was already in AWS Cloud.
  2. They were migrating old infrastructure into the AWS.
  3. AWS provides a combination of the tools and building blocks that we needed without significant changes to the off-the-shelf.
Serverless Framework suites better if you need to have multi-cloud support. For instance, if you need to deploy your serverless code to Microsoft Azure and AWS at the same time. We suggest that you may want to use AWS SAM if you are building AWS specific integrations since it designed explicitly for AWS. You may think it sounds like a vendor-lock, but it is not: both frameworks are similar, which allows you to migrate your code from AWS SAM to Serverless Framework and vice versa.

AWS SAM provides excellent support for local development out of the box without installing additional plugins.

The decision on the language came naturally. We are experts in writing serverless Python code (or Python Serverless if you will), so this came well into play with our customer needs, as most of their engineers are Python experts.
Here is a diagram of the user interaction with the system. On this diagram, we show the NetSuite to Salesforce data connector which does the heavy lifting in the integration. It only requires NetSuite and Salesforce administrators to set credentials once. We built serverless web applications for both NetSuite and Salesforce to securely encrypt and store login credentials.

Action
Once the system was deployed and configured, it started to synchronize data from the NetSuite to Salesforce, based on Salesforce custom object time field. Here is a detailed diagram.
In step one, we decided to pull schedule changes from Salesforce instead of triggering an action on custom object field change, adding a trigger in Apex would couple this integration with Salesforce implementation more tightly, which is not what we wanted. It would also expose a Lambda function endpoint to the world, which would add a vector for a cyber attack. Instead, we used the Salesforce REST API to ask for record change in our Scheduler Lambda function.
DEMO
The Connector in Action
The Connector Under the Hood
Custom-built, near Real-Time Data Processing with an ability to run On-Premises servers OR in the Cloud
Data Encryption at REST & In-Transit
Using AWS Key Management Service as a solid base for the data encryption at REST. Utilizing HTTPS protocol to connect to Salesforce and Oracle NetSuite provides secure transport for the data encryption in transit.
Data Integrity Audit
While working on the Connector, we were able to add value by finding and resolving multiple data consistency issues. Together we learned a lot, shared ideas, and made tremendous improvements.
Secure Logging & Notifications
Secure and lightning-fast synchronization, in seconds you get a feedback during every stage of the synchronization. AWS CloudWatch delivers notifications right to your inbox or Dashboard.
Integration with AWS in minutes
The Connector integrates with AWS Fargate in minutes. Robust functionality and graceful data processing are not the only vital aspects in such strategically important integration. Proper security controls, logging, operational excellence, as well as awareness of what is happening within the system at any point in time all are crucial aspects as well.
Pay per Seconds of Execution
The Connector was designed for cost optimization, embracing expenditure awareness consumption model. By using cost-effective resources, you are paying for what you use, when you use it.
Custom Python Library
We have developed a custom Core Library to connect to Oracle NetSuite via SOAP API. As a result, our customer is now equipped with the robust and predictable Extract-Transform-Load system that gives their personnel the ability to troubleshoot and investigate potential sources of "bad" data, react proactively by improving the data, and mitigate the root cause of issues.
The Shortest Dependency Chain
The Connector can be provisioned to operate in any Python-friendly environment. With the shortest library dependency chain. You can run the Connector at the time and frequency you want.
Are you ready to start building your modern data integration project?



All product names, logos, and brands are property of their respective owners. All company, product and service names used in this website are for identification purposes only. Use of these names, logos, and brands does not imply endorsement.


© 2019 Konstankino LLC. All Rights Reserved.