Integration With an ERP System
Application development platform vendors and commercial off-the-shelf (COTS) solution vendors often claim to provide pre-built integration “adapters” for ERP systems such as SAP and Oracle. However, you should be careful with these adapters: If the ERP system is customized and your app or COTS solution is customized, the integration often requires extensive customization.
In most cases, companies want fine-grained control over the integration workflow when they scope out what they want from a software solution: How it is triggered, how the data is translated, which data is shared, how the integration process is logged and communicated to the end-users.
As a result, integrating a piece of software with a customized ERP system typically involves building a custom middleware layer between the static APIs that are made available by the app platform / COTS solution, as well as the APIs that are available in the ERP system.
Any required integration logic has to be implemented in this middleware layer. Oftentimes, the APIs that are made available by the app platform / COTS solution are limited, and therefore custom logic, workarounds and/or additional data processing need to be implemented in the middleware layer.
There is significant complexity associated with developing a custom integration middleware layer. This includes, for example: Deployment architecture, reliability & scalability, monitoring & logging, designing API interfaces, serialization/deserialization of data, various security considerations (e.g. encryption, key rotation, etc.), and various features for event-driven integrations (e.g. a queueing system and retry mechanism with exponential back-off).
JourneyApps’ Approach To Custom Integration
With the CloudCode component of our platform, JourneyApps provides a novel way for developing completely customized integrations with much lower risk and much higher efficiency than what is traditionally required.
JourneyApps CloudCode provides a serverless environment where developers can script custom integration logic in JavaScript and/or TypeScript, and the platform takes care of all the underlying technical complexities (built-in deployment infrastructure, versioning, reliability, scalability, monitoring, logging, security, exposing well-structured REST APIs, serialization/deserialization, event-driven triggers, a queueing system, a retry mechanism with exponential back-off, etc.)
JourneyApps CloudCode is also a full Node.js environment, so developers can also include any NPM packages that they need (NPM is the open source repository of packages for the Node.js ecosystem, containing hundreds of thousands of packages). In 99% of integration use cases, an NPM package is available to provide even more leverage to build custom integrations for specific enterprise systems, such as SAP, Oracle, Microsoft Dynamics, Salesforce, ServiceNow, etc.
We have seen time and time again how developers can use JourneyApps CloudCode to script powerful customized integrations, including custom data transformations and custom logic, in a few dozen lines of code.
Both the development of the integration as well as the deployment and ongoing administration and maintenance require a fraction of the effort typically required for developing a customized integration middleware layer.