When sending/receiving a large number of documents over AS2, it’s better to use an integration mechanism like SFTP. SFTP
can easily support bulk file transfers as well as large file transfers. And also, if you prefer to integrate internal
systems with your trading platform, it’s a perfect choice for you to go
with MFT Gateway SFTP connectivity which you can configure to automate
uses AWS Transfer Family
service for SFTP integration. Therefore you can easily transfer files directly into and out of your Amazon S3 bucket.
Let’s see how we can integrate SFTP in MFT Gateway.
How to integrate the SFTP?
Log in to the MFT Gateway console and click on the Integrations icon from the left-hand side menu bar. There are two
integrations as S3 Integration and SFTP Integration. Our previous
article Integrating AWS S3 for EDI messages over AS2 explains
more about S3 integration. For this article, let’s focus on SFTP integration.
MFT Gateway allows SFTP access via key-based authentication. You can either use an
existing SSH key pair generated by yourself
or let MFT Gateway generate a new key pair on behalf of you.
To integrate SFTP,
- provide a suitable username;
- if you already have a key pair, put a tick on Enabling with existing public key, provide that existing public
key, and click Enable SFTP button.
- if you don’t have a key pair, click Enable SFTP button right after giving the SFTP username and the private key
will be downloaded.
MFT Gateway does not store your credentials, and keys can not be recovered if you lose them. So, save it somewhere safe.
But in case you misplaced your current private key, you can always disable the existing SFTP account and create a new
SFTP account at any time.
Login to SFTP Server
Once you have created the SFTP account, you can connect to the SFTP server by running the following command. Make sure
<private-key-path> with the location of your private key and
<sftp-username> with your SFTP username.
sftp -i <private-key-path> <sftp-username>@sftp.mftgateway.com
When running the above command, you might get the below error.
The reason for the above error is your private key file permissions are too open. It must not be publicly viewable. So,
set permissions by running this command, replacing
<private-key-path> with your private key location:
chmod 400 <private-key-path>
Once you have successfully connected to the SFTP server, you can find a folder named AS2 including subfolders **
files, headers, raw-mdn** and raw-message, which correspond to different aspects of your AS2 message flow such as
attachments, MDNs, and HTTP header traces.
Send an AS2 message
Once you have set up your trading stations and partners from the MFT Gateway console, you can send your AS2 messages via
SFTP by uploading relevant files to the send folder (
AS2/send/<station-AS2-id>/<partner-AS2-id>/). MFT Gateway
will pick them up and send them to your trading partner.
To upload an attachment from the local directory to the send folder, type the following command,
<attachment-name> with correct values:
put <local-file> AS2/send/<station-AS2-id>/<partner-AS2-id>/<attachment-name>
The file will be picked up and sent to the relevant partner. Once the message is successfully sent, the attachment will
be moved to the following path:
Download sent attachments to a local directory
If you want to download a sent attachment to a local directory, type this command; replacing necessary components:
get AS2/files/<station-AS2-id>/<partner-AS2-id>/outbox/<timestamp-random-number>/<attachment-name> <local-path>
As you saw above, in the outbox MFT Gateway keeps attachments of each AS2 message in a separate directory named
<timestamp-random-number> If you want to list all the attachments in the outbox, type this command;
<partner-AS2-id> with correct values:
List received attachments
Similarly, if you want to list all the attachments in the inbox, run this command, replacing
<partner-AS2-id> with correct values:
Download received attachments to a local directory
If you want to download an attachment of a received message to a local directory, type this command replacing necessary
get AS2/files/<station-AS2-id>/<partner-AS2-id>/inbox/<timestamp-random-number>/<attachment-name> <local-path>
Sign Up for 30 day Free Trial! Stay tuned for more updates!