How to Use AS2 MDN Async Receipts on the JSCAPE MFT Server
When you request an electronic receipt a.k.a. Message Disposition Notification or MDN for your AS2 transmission from your trading partner, you can choose between two options: Sync MDN or Async MDN. In this post we'll show you how to use the latter.
If you're not yet familiar with AS2 MDNs or the differences between Sync (synchronous) and Async (Asynchronous) MDNs, I suggest you read the post 'What is an AS2 MDN?' first. Done with that? Alright, let's proceed.
Watch the video
Would you prefer to watch a video version of this tutorial instead? You can play the video below. Otherwise, just skip it if you wish to continue reading.
It's always the trading partner that's sending the AS2 message who chooses which type of MDN option (Sync or Async) the receiving trading partner should use. Assuming you're the sender, you can specify this option in the Trading Partners module. Just Edit the trading partner in question...
... and then, in the Receipt drop down list, select 'asynchronous'.
If you want the MDN receipt to be sent via HTTPS, you can tick the 'Prefer HTTPS receipt delivery URL' checkbox. Whenever this is checked, the target URL JSCAPE MFT Server will specify to your trading partner for the asynchronous MDN receipts will be in HTTPS, assuming of course your HTTPS service on JSCAPE MFT Server is enabled.
If you don't know how to enable it, just read the post: How To Set Up A HTTPS File Transfer
Now, in a production environment, you'll usually want to have MDNs digitally signed by your trading partner. So, make sure you tick the Receipt signature required text box.
Don't worry about that Receipt timeout setting that you see here. That's only for synchronous MDNs. Also, please disregard the Signing key setting. That's only for digitally signing the AS2 message you send out. Although that's also important, that has nothing to do with MDNs, which is what we're focusing on right now.
However, if you want to learn about that as well, read the post: AS2 Message Tutorial on Applying Digital Signatures
Remember, if you're the one sending the AS2 messages, the one who'll be sending the MDNs is your trading partner. So i's going to be them who'll be responsible for signing those MDNs; not you. However, you will still need to verify that it's actually them who's sending those MDNs and not an impostor. In order to do that, you'll have to import your trading partner's keys into Keys > Host Keys.
Don't worry. We've discussed the topic on AS2 MDN digital signatures in more detail in the blog post below. Also, what if you're the one receiving AS2 messages and you need to respond with MDNs? Shouldn't you have a way to sign those? Absolutely. We've got that covered in that blog post as well.
How to Apply a Digital Signature on AS2 MDNs
One last thing. When using asynchronous MDN it is important that the IP address that your AS2 service is listening on is publicly available. If for example you are using the special address 0.0.0.0 or an internal NAT address then you will need to instruct JSCAPE MFT Server to use a different address when sending out the asynchronous MDN URL, otherwise the recipient may not be able to post the MDN receipt.
You can specify this IP address or hostname in Settings > Web > Server name.
Since I'm just running this in my test environment, where both my sending and receiving AS2 hosts are on the same network, I'll just leave this as is.
Let's try sending send off an AS2 message so you can see how all this works.
On trading partner's AS2 host
Once the AS2 message has been sent out, we can now view it in our trading partner's host.
Since we're also using JSCAPE MFT Server as our AS2 receiving host, we can check the Async receipt URL field. The value we see here is where this AS2 trading partner should transmit its MDN receipt.
Once it sees the MDN Async receipt URL, JSCAPE MFT Server automatically transmits its AS2 MDN receipt to it.
Back on sending AS2 host
So, if we go back to our sending AS2 host, we should be able to see that MDN receipt in our AS2 Messages module.
That's it. Now you know how to use AS2 MDN Async receipts on JSCAPE MFT Server.
Would you like to try this out yourself? Download the FREE, fully-functional Starter Edition of JSCAPE MFT Server now.
Related posts
What is AS2 Protocol? | How to Use Applicability Statement 2
How to Setup an AS2 Server with JSCAPE - A QuickStart Guide
How To Set Up An Automated AS2 File Transfer
AS2 Message Tutorial on Applying Digital Signatures
Setting Up Client Certificate Authentication On An AS2 Server