Subject transaction rollback on client disconnect or timeout

we have a problem with applications of third party suppliers. We provide a database for data exchange between our system and a third party system. It often occurs, that the third party suppliers leave transactions open without committing them. This leads of course to a transaction diff and a slow system...

Actually we close the connection manually if we encounter such a problem, but an automatic solution would be better. Is there a possibility to set some kind of timeout on transaction or attachments, and once timeout is reached an automatic rollback is done?
I know it's not a  nice solution, but just to keep our system performing fast, we need to fix these problems automatically.

Thanks for replies