Also, the processes on the SFTP servers are out of my control, as they are managed by other teams and third-party, as such I don't know if any particular file is being watched or not, thus have to ensure that any files transfered will not be partial. That's why using a temp name fixes two possible issues, another process picking up a partially transfered file, and in case the connection is lost, the files will be in the temp state and would never be picked up.
Thanks again,
Dan