Couldn't you extract just the retrieval of the transaction in a separate method?