The 3rd party provider should upload to a temp file and then rename (if they are sensible).
Obviously you don't have any control over this though. However it may be worth contacting them to see if it is possible.
Probably the best you can do is to repeatedly get the size of the file, say every 10 seconds. If the size hasn't changed, assume the file is uploaded. Or if you have a good idea of how big it should be, wait until it has reached at least that size, and then not altered.
This may not work for all servers though, but it's what I'd try