Even with your current configuration to wait for a reply indefinitely, the foriegn system could get a duplicate message when you recycle your interface with messages queued.
For example, you send the message, they send back an ACK that does not make it to you; then you recycle and the message goes out again and things start flowing.
Of course duplicate messages are also a reality of a persistant interface like the one described by James Cobane that awaits replies and resends.
I learned this when I decided to do a real-time charge integration, which caused me to change my mind and stick with batch files for charge integrations.
Most receiving interfaces will handle identical duplicate messages and some might even use a sequence number and shutdown when out of sequence occurs.
However, let me tell you that the ones that shutdown when out of sequence occurs is a real pain in the butt to support, and if you do one, you will get to find out just how many duplicate message events do occur.
In other words, you really want the foriegn interface listener to be able to handle identical messages effectively.
Russ Ross
RussRoss318@gmail.com