Using channels for transactions