Not sure if this is a recommended approach, but I did something similar recently.
I create a guid on the client, and send this with the request. If I get a connection error or no response, I re-query with my client side id to see if the transaction succeeded.
I'm sure there are downsides to this, however for now it's simple and seems to be working well.