FTP connections are very common in EDI trading partner relationships. Instead of delivering data (or listening for data) via HTTP, FTP replaces that in the workflow. So if your partner is hosting the FTP, you would create your EDI document, pass it off to your communication module which would open the FTP connection, do a CD to the proper directory (if necessary) and do a PUT. At some point, you will want a process to connect to the FTP server, do a CD (again, if necessary) and do a GET to pull 997s and other inbound (to you) documents.
So your outline is pretty accurate.