MFT vs Message Bus integrations
API’s have emerged as a modern way of making digital systems “talk” to each other without the need for complex and expensive translation and transformation software. When linked via an API, two (or more) systems or applications can send and receive data using standard formats such as JSON and XML, speeding-up and simplifying data exchange. This also means that data is available to all the linked systems in real-time.
by Ekron Dries
An API is designed to be atomic, so everything that is required for accomplishing your task is contained within the API call. Making them ideal for simple questions/answers/tasks but not for complex tasks that require multiple calls and extra processing steps.
Historically, most digital systems have been connected via file transfer which involves one system exporting data in a “flat file” format, and another system importing and then interpreting or transforming the data. Configuring individual links can be complex and time consuming, and it is easy to open backdoors into systems.
Native FTP does not encrypt data, meaning that the data can be intercepted in-flight and the passwords or data stolen. Organisations that have implemented multiple ad-hoc file transfer links, lack audit logs and often find it difficult to manage and to maintain compliance.
Managed File Transfer, whilst not as atomic and perhaps convenient as API calls, can become a key component supporting an enterprise service bus (ESB) environment. Whilst modern MFT solutions support a broad variety of protocols and methods (including webservices), there is a clear difference between an API and MFT integration.
How do you identify what is the best integration method for your project?
First you should ask yourself a series of questions. Here are some ideas that may help you to identify and prioritise your requirements:
- How much data do I need to transfer, and how frequently?
- What is the security classification of the data?
- How mature are the IT teams on both ends?
- What is the physical distance between the two systems?
- What is the network connection speed between the two systems?
- Is the data of a bulk/reference type, or is it an event/transaction nature type?
- What is the size per message / transaction?
- What are the hours during which the integration needs to be active or scheduled?
- What level of logging and auditing is required to maintain compliance?
- What is the total size of the data that needs to be transferred during a given processing cycle?
Performance is often a major concern as data transfer can involve managing very large files that take a long time to process. And the biggest challenges are always (compliance) auditing and reporting and being able to see what was sent and which data or files were not successfully received.
We trust that these tips and questions will help you successfully find the best solution. But if you like our MFT experts to review your use-case, don’t hesitate to reach out to us.