Transactions are actually a business problem, so it's fine to use them in your business logic.
A transaction actually mean that you want that a set of operations executed as single operation. And that's it. It really does not mean, that you are exposing technical details or something in your logic, but you show that this two actions must be executed together, no matter whether use use SQL database, or writing into 2 files, sending two http requests, whatever, transaction logic must be respected and one's have to respect it.