adding support for transactions, rest backend