new api for transactions