Using transactions between services is not a good practice as you're holding up resources for components that are not necessarily trustworthy, plus service processes are usually long-running (I wrote about it more in "transactional-integration anti-pattern".
As someone mentioned in a comment I find that the "saga pattern" is a better way to handle these long running interactions