In a typical B2B integration the process flow not only involves picking up EDI and non-EDI files from a source location such as AS2 or SFTP, it also includes message routing and application integration through APIs, Message Queues and Database connections.
In this example, I would like to walk through a scenario where a file is picked up from an SFTP location and Adeptia sends back a file with a correlation ID. This correlation ID would help the receiving application link the final response to the source file that was sent earlier. In this asynchronous scenario, the source application requires a token to associate the source file with the response that Adeptia sends back later during the process flow execution.
Here let’s suppose the incoming file is XML data and this file is converted into a JSON format and is sent to an API for processing. The response from the API is routed back to the SFTP along with the correlation ID (or token) that was sent by Adeptia in the initial step of the process flow. The source application is now able to relate the final response with the source file through this correlation ID.
In the above example, we are also highlighting the fact that Adeptia can call external APIs within a process flow. These APIs can be external web services that your company has published or these can be web services that are published in Adeptia.
Another important design element in the process flow is the validation step that is applied after the file is picked up from the source location. Here we are validating the XML file and if the file is not well-formed or if there are data type errors, then these errors are notified in a separate process flow route. User can configure Error events that would check for any file errors and if there are errors, Adeptia notifies these errors in the logs and also as part of notification services.
In another example, the incoming EDI files are queued in a Message Queue and then Adeptia processes these files in sequence. The usage of an MQ is that it helps in message persistence and controls how the Adeptia process flow routes and processes the data at runtime. As part of the design, Adeptia identifies the EDI ISA/GS segments and calls the related EDI partner relationship which validates and executes the EDI message based on the rules defined in that relationship. Similarly, a Message Queue can be used for outbound routing where Adeptia creates the EDI documents and these are routed to MQ for final delivery of the files to MFT (Managed File Transfer) and or VANs.