Handling complex integrations through custom connectors

Reading time: 6 minutes
Integrations can be done efficiently with IPaaS tools. Quickly set up point-to-point connectors, add logic and orchestration, and the integration is done and configured. The difficulty comes with more custom and bespoke systems.  
 
For example, when custom fields are added to an ERP or CRM, when you need to integrate with a legacy system, or when there is no connector to interact with. Linx can assist in cases where high flexibility and customization are required. 

The Custom Integration Challenge 

Custom systems will require custom integration. Modern CRMs or ERPs allow you to customise the system to your requirements. This can be because of:  

  • Industry-specific requirements  
  • Compliance and regulatory requirements  
  • Business-specific requirements  
  • Advanced reporting and decision-making  
Often, integration starts off simple but quickly snowballs into something much more bespoke and custom. In these cases, you may require a solution that will allow you to deal with custom requirements and that has a high degree of flexibility and customisation. You will require something to take you the last mile.   

Here are some practical examples:  

  • Sage Intacct: Sage can have some complex and challenging interactions. To retrieve the required data, you may need to send highly specific requests with very bespoke filters.   
  • Acumatica: The fields you require may differ depending on your industry. Some custom fields added specifically for your organization may not be part of the default APIs, in which case a custom API call will be required.   
  • Custom Legacy Systems: Where you may not have the luxury of an API, you may need to build one to facilitate integrations for others or to simplify integrations for your target system.   
Many platforms offer connectors and pre-built components to interact with these systems. Custom fields and requirements are often overlooked or missing from these connectors. In these cases, it is highly beneficial to build your own connectors to interact with systems in a bespoke manner.   
Read more about building custom integrations: Navigating integration – from the simple to the complex

Overcoming limitations with custom connectors 

Building a custom connector to interact with a system comes with the significant advantage of direct access to data. This is beneficial for any custom system with custom APIs or data connections. In Linx, these custom connectors can be built in a wide variety of ways, some options are:  

  • API: Interact with the system’s API. This can be done by using the Linx REST Plugin. APIs are usually comprehensive, and some systems even allow for custom API endpoints to be created.  
  • File import/Export: Some systems produce files or require file uploads. Linx can easily read and write files.  
  • Database Access: Some systems, especially bespoke legacy systems, allow direct data access. Linx allows interactions with any database technology.  
Once a strategy is determined, a custom connector can be built to interact with the target or source system.   

For example, the function below uses the CallRESTEndpoint component for job orders from a popular ERP system. It calls the API (authentication done separately) and then retrieves data that can be used downstream.   

Connect to any SaaS API via low code
The API call has been built in a function called GetJobOrder, which can be reused anywhere in Linx, effectively creating a custom, built-to-purpose connector. The data from this connector can be loaded into a database and sent to another system via an API or even to create a file.
Read more on building custom connectors: Building custom connectors and functions 

Adding Custom Logic 

Retrieving and sending data is one part of integration; the other is adding custom business logic and building a custom workflow around the integration process. One example is applying data validation or formatting specific fields in a specific way. This process can efficiently be done with Linx, as each individual field can be accessed, and validations/transformations can be applied to that field.    

Linx allows for multiple ways to interact with data:   

  • Interact with data visually by using Linx Types   
  • Apply transformations on a field by using built-in expressions or craft your own   
  • Add validations using expressions or logical checks, and then take any action based on the result.    

Orchestration can also be added to the process. Linx can schedule integration tasks to be executed at a specific time or interval, or the Job Scheduler plugin can be used to facilitate managed jobs. 

Read more on working with data objects: Working with complex data types and data objects 

Simplified hosting and monitoring 

Once the workflow is built, Linx allows for simplified hosting and monitoring. Deploy the integration solution to a Linx server and then turn it on. The Linx server will execute your built processes and monitor them to catch any errors.   

Orchestration will be done on the Linx server, meaning that scheduled events will trigger on time, and your integration processes will run without human intervention (if they were built for that purpose).   

Read More about the Linx server: Back-end application hosting made easy 

Sign up to our Newsletter